X-Git-Url: http://git.ipfire.org/?p=ipfire-2.x.git;a=blobdiff_plain;f=make.sh;h=0f12839ebd7820d9489d9382434933c37ff0aa66;hp=38a86989720f675aab4af0b87cca2a2bad285043;hb=542244b35afc5bf5cd4318fe84325c0263e128fb;hpb=4e7ac1a760eb33435c347a8f6518aa31312dd2ef diff --git a/make.sh b/make.sh index 38a8698972..0f12839ebd 100755 --- a/make.sh +++ b/make.sh @@ -37,12 +37,11 @@ KVER=`grep --max-count=1 VER lfs/linux | awk '{ print $3 }'` MACHINE=`uname -m` GIT_TAG=$(git tag | tail -1) # Git Tag GIT_LASTCOMMIT=$(git log | head -n1 | cut -d" " -f2 |head -c8) # Last commit -TOOLCHAINVER=3 +TOOLCHAINVER=5 BUILDMACHINE=$MACHINE if [ "$MACHINE" = "x86_64" ]; then BUILDMACHINE="i686"; - linux32="linux32"; fi @@ -214,11 +213,6 @@ prepareenv() { mount --bind $BASEDIR/log $BASEDIR/build/usr/src/log mount --bind $BASEDIR/src $BASEDIR/build/usr/src/src - # This is a temporary hack!!! - if [ ! -f /tools/bin/hostname ]; then - cp -f /bin/hostname /tools/bin/hostname 2>/dev/null - fi - # Run LFS static binary creation scripts one by one export CCACHE_DIR=$BASEDIR/ccache export CCACHE_COMPRESS=1 @@ -232,7 +226,7 @@ buildtoolchain() { local error=false case "${MACHINE}:$(uname -m)" in # x86 - i586:i586|i586:i686) + i586:i586|i586:i686|i586:x86_64) # These are working. ;; i586:*) @@ -240,7 +234,7 @@ buildtoolchain() { ;; # ARM - armv5tel:armv5tel|armv5tel:armv5tejl|armv5tel:armv7l) + armv5tel:armv5tel|armv5tel:armv5tejl|armv5tel:armv6l|armv5tel:armv7l) # These are working. ;; armv5tel:*) @@ -251,30 +245,28 @@ buildtoolchain() { ${error} && \ exiterror "Cannot build ${MACHINE} toolchain on $(uname -m). Please use the download if any." - if [ "$(uname -r | grep ipfire)" ]; then - exiterror "Cannot build toolchain on ipfire. Please use the download." + local gcc=$(type -p gcc) + if [ -z "${gcc}" ]; then + exiterror "Could not find GCC. You will need a working build enviroment in order to build the toolchain." fi LOGFILE="$BASEDIR/log/_build.toolchain.log" export LOGFILE - NATIVEGCC=`gcc --version | grep GCC | awk {'print $3'}` - export NATIVEGCC GCCmajor=${NATIVEGCC:0:1} GCCminor=${NATIVEGCC:2:1} GCCrelease=${NATIVEGCC:4:1} - ORG_PATH=$PATH - lfsmake1 ccache PASS=1 - lfsmake1 make PASS=1 - lfsmake1 binutils PASS=1 - lfsmake1 gcc PASS=1 - export PATH=$BASEDIR/build/usr/local/bin:$BASEDIR/build/tools/bin:$PATH - lfsmake1 linux2 TOOLS=1 HEADERS=1 + + local ORG_PATH=$PATH + export PATH="/tools/ccache/bin:/tools/bin:$PATH" + lfsmake1 ccache PASS=1 + lfsmake1 binutils PASS=1 + lfsmake1 gcc PASS=1 + lfsmake1 linux2 TOOLS=1 HEADERS=1 lfsmake1 glibc - lfsmake1 cleanup-toolchain PASS=1 - lfsmake1 fake-environ + lfsmake1 cleanup-toolchain PASS=1 + lfsmake1 binutils PASS=2 + lfsmake1 gcc PASS=2 + lfsmake1 ccache PASS=2 lfsmake1 tcl lfsmake1 expect lfsmake1 dejagnu - lfsmake1 gcc PASS=2 - lfsmake1 binutils PASS=2 - lfsmake1 ccache PASS=2 lfsmake1 ncurses lfsmake1 bash lfsmake1 bzip2 @@ -286,15 +278,15 @@ buildtoolchain() { lfsmake1 grep lfsmake1 gzip lfsmake1 m4 - lfsmake1 make PASS=2 + lfsmake1 make lfsmake1 patch lfsmake1 perl lfsmake1 sed lfsmake1 tar lfsmake1 texinfo - lfsmake1 util-linux - lfsmake1 strip - lfsmake1 cleanup-toolchain PASS=2 + lfsmake1 xz + lfsmake1 fake-environ + lfsmake1 cleanup-toolchain PASS=2 export PATH=$ORG_PATH } @@ -302,13 +294,19 @@ buildbase() { LOGFILE="$BASEDIR/log/_build.base.log" export LOGFILE lfsmake2 stage2 - lfsmake2 linux2 HEADERS=1 + lfsmake2 linux2 HEADERS=1 lfsmake2 man-pages lfsmake2 glibc lfsmake2 tzdata - lfsmake2 cleanup-toolchain PASS=3 + lfsmake2 cleanup-toolchain PASS=3 + lfsmake2 zlib lfsmake2 binutils + lfsmake2 gmp + lfsmake2 gmp-compat + lfsmake2 mpfr + lfsmake2 file lfsmake2 gcc + lfsmake2 sed lfsmake2 berkeley lfsmake2 coreutils lfsmake2 iana-etc @@ -316,11 +314,12 @@ buildbase() { lfsmake2 bison lfsmake2 ncurses lfsmake2 procps - lfsmake2 sed lfsmake2 libtool lfsmake2 perl lfsmake2 readline - lfsmake2 zlib + lfsmake2 readline-compat + lfsmake2 pcre + lfsmake2 pcre-compat lfsmake2 autoconf lfsmake2 automake lfsmake2 bash @@ -328,7 +327,6 @@ buildbase() { lfsmake2 diffutils lfsmake2 e2fsprogs lfsmake2 ed - lfsmake2 file lfsmake2 findutils lfsmake2 flex lfsmake2 gawk @@ -340,7 +338,6 @@ buildbase() { lfsmake2 iproute2 lfsmake2 kbd lfsmake2 less - lfsmake2 libaal lfsmake2 make lfsmake2 man lfsmake2 mktemp @@ -348,7 +345,6 @@ buildbase() { lfsmake2 net-tools lfsmake2 patch lfsmake2 psmisc - lfsmake2 reiser4progs lfsmake2 shadow lfsmake2 sysklogd lfsmake2 sysvinit @@ -357,6 +353,7 @@ buildbase() { lfsmake2 udev lfsmake2 util-linux lfsmake2 vim + lfsmake2 xz lfsmake2 grub } @@ -373,7 +370,6 @@ buildipfire() { ipfiremake pptp ipfiremake unzip ipfiremake which - ipfiremake xz ipfiremake linux-firmware ipfiremake zd1211-firmware ipfiremake rpi-firmware @@ -428,23 +424,33 @@ buildipfire() { else # arm-omap kernel build ipfiremake linux KCFG="-rpi" +# ipfiremake v4l-dvb KCFG="-rpi" +# ipfiremake kvm-kmod KCFG="-rpi" +# ipfiremake mISDN KCFG="-rpi" +# ipfiremake dahdi KCFG="-rpi" KMOD=1 + ipfiremake cryptodev KCFG="-rpi" + ipfiremake compat-wireless KCFG="-rpi" +# ipfiremake r8169 KCFG="-rpi" +# ipfiremake r8168 KCFG="-rpi" +# ipfiremake r8101 KCFG="-rpi" +# ipfiremake e1000 KCFG="-rpi" +# ipfiremake e1000e KCFG="-rpi" +# ipfiremake igb KCFG="-rpi" ipfiremake linux KCFG="-omap" +# ipfiremake v4l-dvb KCFG="-omap" +# ipfiremake kvm-kmod KCFG="-omap" +# ipfiremake mISDN KCFG="-omap" +# ipfiremake dahdi KCFG="-omap" KMOD=1 + ipfiremake cryptodev KCFG="-omap" + ipfiremake compat-wireless KCFG="-omap" +# ipfiremake r8169 KCFG="-omap" +# ipfiremake r8168 KCFG="-omap" +# ipfiremake r8101 KCFG="-omap" +# ipfiremake e1000 KCFG="-omap" +# ipfiremake e1000e KCFG="-omap" +# ipfiremake igb KCFG="-omap" - # arm-versatile kernel build - ipfiremake linux KCFG="-versatile" -# ipfiremake v4l-dvb KCFG="-versatile" -# ipfiremake kvm-kmod KCFG="-versatile" -# ipfiremake mISDN KCFG="-versatile" -# ipfiremake dahdi KCFG="-versatile" KMOD=1 - ipfiremake cryptodev KCFG="-versatile" - ipfiremake compat-wireless KCFG="-versatile" -# ipfiremake r8169 KCFG="-versatile" -# ipfiremake r8168 KCFG="-versatile" -# ipfiremake r8101 KCFG="-versatile" -# ipfiremake e1000 KCFG="-versatile" -# ipfiremake e1000e KCFG="-versatile" -# ipfiremake igb KCFG="-versatile" # arm-kirkwood kernel build ipfiremake linux KCFG="-kirkwood" # ipfiremake v4l-dvb KCFG="-kirkwood" @@ -466,7 +472,6 @@ buildipfire() { ipfiremake dracut ipfiremake expat ipfiremake gdbm - ipfiremake gmp ipfiremake pam ipfiremake openssl ipfiremake curl @@ -527,7 +532,6 @@ buildipfire() { ipfiremake iptables ipfiremake libupnp ipfiremake ipaddr - ipfiremake iptstate ipfiremake iputils ipfiremake l7-protocols ipfiremake mISDNuser @@ -604,7 +608,6 @@ buildipfire() { ipfiremake wget ipfiremake bridge-utils ipfiremake screen - ipfiremake hddtemp ipfiremake smartmontools ipfiremake htop # ipfiremake postfix # unknown system type linux 3.2.x @@ -630,7 +633,6 @@ buildipfire() { ipfiremake cmake ipfiremake gnump3d ipfiremake libsigc++ - ipfiremake applejuice ipfiremake libtorrent ipfiremake rtorrent ipfiremake ipfireseeder @@ -649,7 +651,6 @@ buildipfire() { ipfiremake vsftpd ipfiremake strongswan ipfiremake lsof - ipfiremake centerim ipfiremake br2684ctl ipfiremake pcmciautils ipfiremake lm_sensors @@ -702,7 +703,6 @@ buildipfire() { ipfiremake netcat ipfiremake 7zip ipfiremake lynis - ipfiremake splix ipfiremake streamripper ipfiremake sshfs ipfiremake taglib @@ -780,7 +780,6 @@ buildinstaller() { ipfiremake mbr ipfiremake memtest ipfiremake installer - cp -f $BASEDIR/doc/COPYING $BASEDIR/build/install/initrd/ installmake strip ipfiremake initrd } @@ -1022,9 +1021,7 @@ toolchain) echo "`date -u '+%b %e %T'`: Create toolchain tar.gz for $MACHINE" | tee -a $LOGFILE test -d $BASEDIR/cache/toolchains || mkdir -p $BASEDIR/cache/toolchains cd $BASEDIR && tar -zc --exclude='log/_build.*.log' -f cache/toolchains/$SNAME-$VERSION-toolchain-$TOOLCHAINVER-$MACHINE.tar.gz \ - build/{bin,etc,usr/bin,usr/local} \ - build/tools/{bin,etc,*-linux-gnu*,include,lib,libexec,sbin,share,var} \ - log >> $LOGFILE + build/tools build/bin/sh log >> $LOGFILE md5sum cache/toolchains/$SNAME-$VERSION-toolchain-$TOOLCHAINVER-$MACHINE.tar.gz \ > cache/toolchains/$SNAME-$VERSION-toolchain-$TOOLCHAINVER-$MACHINE.md5 stdumount