Magellan Linux

Annotation of /trunk/toolchain/toolchain-create.sh

Parent Directory Parent Directory | Revision Log Revision Log


Revision 153 - (hide annotations) (download) (as text)
Mon Jul 4 00:41:38 2005 UTC (18 years, 10 months ago) by niro
File MIME type: application/x-sh
File size: 2010 byte(s)
new toolchain create utilities and smages

1 niro 153 #!/bin/bash
2    
3     die() {
4     echo "ERROR: $@"
5     exit 1
6     }
7    
8     # get some settings from mage
9     source /etc/mage.rc
10    
11     # which profile we are using ?
12     PROFILE="$1"
13    
14     [ -z "${PROFILE}" ] && die "no profile given. Usage: $(basename $0) PROFILE"
15     [ ! -f ./profiles/${PROFILE}/layout ] && die "Profile '${PROFILE}' layout file not found."
16    
17     # which packages to build
18     # read them, end exclude the commented ones
19     TOOLCHAIN_PACKAGES="$(< ./profiles/${PROFILE}/layout)"
20    
21     # where are the smage files ?
22     TOOLCHAIN_SMAGE_DIR=$(pwd)
23    
24     # where gets the toolchain installed ?
25     export ROOT="$(pwd)/tmp/${PROFILE}"
26    
27     # name and place of the tarball
28     TOOLCHAIN_TARBALL="$(pwd)/magellan-toolchain-${PROFILE}.tar.bz2"
29    
30     echo "Compiling all packages for profile '${PROFILE}' ..."
31    
32     for i in ${TOOLCHAIN_PACKAGES}
33     do
34     # exclude commented and empty
35     case ${i} in
36     \#*|"") continue ;;
37     esac
38    
39     PNAME_FULL="${i}"
40     PNAME="${i%-*-*}"
41     smage2 ${TOOLCHAIN_SMAGE_DIR}/${PNAME}/${PNAME_FULL}.smage2 || die "compile ${i}"
42     done
43     echo "All packages for profile '${PROFILE}' successfully compiled ..."
44    
45     [ ! -x ./minstallpkg.sh ] && die "minstallpkg not found. Cannot build ./tools dir."
46     [ ! -d ${ROOT} ] && install -d ${ROOT}
47    
48     echo "Installing all packages for profile '${PROFILE}' to '${ROOT}' ..."
49     for i in ${TOOLCHAIN_PACKAGES}
50     do
51     # exclude commented and empty
52     case ${i} in
53     \#*|"") continue ;;
54     esac
55    
56     # fix pgk name -> add ARCH from mage.rc
57     PNAME_FULL="${i}"
58     PNAME="${i%-*-*}"
59     PVER="$(echo ${PNAME_FULL%-*} | sed -e s:${PNAME}-::g)"
60     PNAME_PVER_ARCH="${PNAME_FULL/-${PVER}-/-${PVER}-${ARCH}-}"
61     ROOT=${ROOT} ./minstallpkg.sh ${PKGDIR}/${PNAME_PVER_ARCH}.mpk || die "install ${i}"
62     done
63     echo "All packages for profile '${PROFILE}' successfully installed ..."
64    
65     echo "Creating no the toolchain tarball ..."
66     [ ! -d $(dirname ${TOOLCHAIN_TARBALL}) ] && install -d $(dirname ${TOOLCHAIN_TARBALL})
67     ( cd ${ROOT}; tar cvjpf ${TOOLCHAIN_TARBALL} ./ ) || die "error creating tarball"
68    
69     echo
70     echo "All tasks done."
71     echo "You find your tarball at ${TOOLCHAIN_TARBALL} ..."
72     echo

Properties

Name Value
svn:executable *