X-Git-Url: http://git.ipfire.org/?p=people%2Fpmueller%2Fipfire-2.x.git;a=blobdiff_plain;f=make.sh;h=fdd425d4afc4abe2f04c23a8b31364e2064932fe;hp=19de96d6646cf21ba8909748f82418e3edf57643;hb=3a1019f6895602c89145cec0e252f015c465a36c;hpb=119f6ad3567a83ca02f96cfaab1b6b85a203db3c diff --git a/make.sh b/make.sh index 19de96d664..fdd425d4af 100644 --- a/make.sh +++ b/make.sh @@ -24,8 +24,8 @@ NAME="IPFire" # Software name SNAME="ipfire" # Short name -VERSION="2.0" # Version number -SLOGAN="www.ipfire.eu" # Software slogan +VERSION="2.0b" # Version number +SLOGAN="www.ipfire.org" # Software slogan CONFIG_ROOT=/var/ipfire # Configuration rootdir NICE=10 # Nice level MAX_RETRIES=1 # prefetch/check loop @@ -135,11 +135,11 @@ prepareenv() { echo -ne "Checking for necessary space on disk $BASE_DEV" | tee -a $LOGFILE BASE_DEV=`df -P -k $BASEDIR | tail -n 1 | awk '{ print $1 }'` BASE_ASPACE=`df -P -k $BASEDIR | tail -n 1 | awk '{ print $4 }'` - if (( 2202000 > $BASE_ASPACE )); then + if (( 2048000 > $BASE_ASPACE )); then BASE_USPACE=`du -skx $BASEDIR | awk '{print $1}'` - if (( 2202000 - $BASE_USPACE > $BASE_ASPACE )); then + if (( 2048000 - $BASE_USPACE > $BASE_ASPACE )); then beautify message FAIL - exiterror "Not enough temporary space available, need at least 2.1GB on $BASE_DEV" + exiterror "Not enough temporary space available, need at least 2GB on $BASE_DEV" fi else beautify message DONE @@ -170,7 +170,7 @@ prepareenv() { # Setup environment set +h LC_ALL=POSIX - MAKETUNING="-j8" + MAKETUNING="-j12" export LFS LC_ALL CFLAGS CXXFLAGS MAKETUNING unset CC CXX CPP LD_LIBRARY_PATH LD_PRELOAD @@ -280,6 +280,7 @@ buildbase() { lfsmake2 bzip2 lfsmake2 diffutils lfsmake2 e2fsprogs + lfsmake2 ed lfsmake2 file lfsmake2 findutils lfsmake2 flex @@ -297,6 +298,7 @@ buildbase() { lfsmake2 man lfsmake2 mktemp lfsmake2 modutils + lfsmake2 net-tools lfsmake2 patch lfsmake2 psmisc lfsmake2 shadow @@ -312,9 +314,6 @@ buildbase() { buildipfire() { LOGFILE="$BASEDIR/log/_build.ipfire.log" export LOGFILE - ipfiremake inetutils - ipfiremake net-tools - ipfiremake ed ipfiremake configroot ipfiremake dhcp ipfiremake dhcpcd @@ -325,8 +324,7 @@ buildipfire() { ipfiremake ppp ipfiremake rp-pppoe ipfiremake unzip -# ipfiremake linux PASS=I # Can we remove the installer kernel? - ipfiremake linux PASS=S + ipfiremake linux SMP=1 # ipfiremake 3cp4218 PASS=SMP # ipfiremake amedyn PASS=SMP # ipfiremake cxacru PASS=SMP @@ -342,7 +340,7 @@ buildipfire() { # ipfiremake pulsar PASS=SMP # ipfiremake unicorn PASS=SMP # ipfiremake promise-sata-300-tx PASS=SMP - ipfiremake zaptel PASS=SMP + ipfiremake zaptel PASS=S ipfiremake linux # ipfiremake 3cp4218 # ipfiremake amedyn @@ -401,6 +399,7 @@ buildipfire() { ipfiremake cdrtools ipfiremake dnsmasq ipfiremake dosfstools + ipfiremake reiserfsprogs ipfiremake ethtool ipfiremake ez-ipupdate ipfiremake fcron @@ -417,7 +416,7 @@ buildipfire() { ipfiremake l7-protocols # ipfiremake isapnptools # ERROR :( # ipfiremake isdn4k-utils # What about mISDN??? -# ipfiremake kudzu # ERROR :( + ipfiremake kudzu ipfiremake logrotate ipfiremake logwatch ipfiremake mingetty @@ -510,7 +509,6 @@ buildipfire() { # ipfiremake bristuff ipfiremake asterisk ipfiremake mpg123 -exiterror Bis hierhin und nicht weiter! ipfiremake libmad ipfiremake libogg ipfiremake libvorbis @@ -547,61 +545,41 @@ buildinstaller() { LOGFILE="$BASEDIR/log/_build.installer.log" export LOGFILE ipfiremake syslinux - ipfiremake as86 - ipfiremake mbr ipfiremake uClibc installmake busybox + installmake udev + installmake slang + installmake newt + installmake gettext + installmake kbd + installmake popt installmake sysvinit - installmake e2fsprogs installmake misc-progs - installmake slang + installmake e2fsprogs + installmake reiserfsprogs + installmake sysfsutils installmake util-linux - installmake newt installmake pciutils - installmake pcmcia-cs - installmake kbd + installmake pcmciautils + installmake kudzu installmake installer - installmake scsi.img - installmake driver.img + installmake scsi.img # this is to be deleted + installmake driver.img # this is to be deleted installmake initrd - installmake boot.img + installmake boot.img # this is to be deleted +# ipfiremake as86 # this is to be deleted +# ipfiremake mbr # this is to be deleted } buildpackages() { LOGFILE="$BASEDIR/log/_build.packages.log" export LOGFILE echo "... see detailed log in _build.*.log files" >> $LOGFILE - echo -ne "`date -u '+%b %e %T'`: Stage5 packages build \n" | tee -a $LOGFILE - # Strip files - echo "`date -u '+%b %e %T'`: Stripping files" | tee -a $LOGFILE - find $LFS/lib $LFS/usr/lib $LFS/usr/share/rrdtool-* $LFS/install ! -type l \( -name '*.so' -o -name '*.so[\.0-9]*' \) \ - ! -name 'libc.so' ! -name 'libpthread.so' ! -name 'libcrypto.so.0.9.7.sha1' \ - -exec $LFS/tools/bin/strip --strip-all {} \; >> $LOGFILE 2>&1 - # add -ls before -exec if you want to verify what files are stripped - find $LFS/{,s}bin $LFS/usr/{,s}bin $LFS/usr/local/{,s}bin ! -type l \ - -exec file {} \; | grep " ELF " | cut -f1 -d ':' | xargs $LFS/tools/bin/strip --strip-all >> $LOGFILE 2>&1 - # there add -v to strip to verify - - if [ 'i386' = $MACHINE ]; then - # Create fcdsl packages - echo "`date -u '+%b %e %T'`: Building fcdsl tgz" | tee -a $LOGFILE - cp $LFS/install/images/fcdsl/license.txt $LFS >> $LOGFILE 2>&1 - touch $LFS/var/run/{need-depmod-$KVER,need-depmod-$KVER-smp} - cd $LFS && tar cvfz $LFS/install/images/$SNAME-fcdsl-$VERSION.$MACHINE.tgz \ - lib/modules/$KVER/misc/fcdsl*.o.gz \ - lib/modules/$KVER-smp/misc/fcdsl*.o.gz \ - usr/lib/isdn/{fds?base.bin,fd?ubase.frm} \ - etc/fcdsl/fcdsl*.conf \ - etc/drdsl/{drdsl,drdsl.ini} \ - license.txt \ - var/run/{need-depmod-$KVER,need-depmod-$KVER-smp} >> $LOGFILE 2>&1 - rm -f $LFS/license.txt >> $LOGFILE 2>&1 - cd $BASEDIR - fi + installmake strip # Generating list of packages used - echo "`date -u '+%b %e %T'`: Generating packages list from logs" | tee -a $LOGFILE + echo -n "Generating packages list from logs" | tee -a $LOGFILE rm -f $BASEDIR/doc/packages-list for i in `ls -1tr $BASEDIR/log/[^_]*`; do if [ "$i" != "$BASEDIR/log/FILES" -a -n $i ]; then @@ -609,17 +587,18 @@ buildpackages() { fi done echo "== List of softwares used to build $NAME Version: $VERSION ==" > $BASEDIR/doc/packages-list.txt - grep -v 'configroot$\|img$\|initrd$\|initscripts$\|installer$\|install$\|ipfire$\|setup$\|pakfire$\|stage2$\|smp$\|tools$\|tools1$\|tools2$\|.tgz$\|-config$' \ + grep -v 'configroot$\|img$\|initrd$\|initscripts$\|installer$\|install$\|setup$\|pakfire$\|stage2$\|smp$\|tools$\|tools1$\|tools2$\|.tgz$\|-config$\|_missing_rootfile$' \ $BASEDIR/doc/packages-list | sort >> $BASEDIR/doc/packages-list.txt rm -f $BASEDIR/doc/packages-list # packages-list.txt is ready to be displayed for wiki page + beautify message DONE - # Create ISO for CDROM + # Create images for install ipfiremake cdrom - rm -f $LFS/install/images/*usb* - cp $LFS/install/images/{*.iso,*.tgz} $BASEDIR >> $LOGFILE 2>&1 + ipfiremake pxe + cp -f $LFS/install/images/{*.iso,*.tgz} $BASEDIR >> $LOGFILE 2>&1 - ipfirepackages +# ipfirepackages # Cleanup stdumount @@ -818,7 +797,7 @@ newpak) fi exit 0 ;; -prefetch) +downloadsrc) if [ ! -d $BASEDIR/cache ]; then mkdir $BASEDIR/cache fi @@ -889,11 +868,11 @@ gettoolchain) # arbitrary name to be updated in case of new toolchain package upload PACKAGE=$SNAME-$VERSION-toolchain-$BUILDMACHINE if [ ! -f $BASEDIR/cache/toolchains/$PACKAGE.tar.gz ]; then - URL_IPFIRE=`grep URL_IPFIRE lfs/Config | awk '{ print $3 }'` + URL_TOOLCHAIN=`grep URL_TOOLCHAIN lfs/Config | awk '{ print $3 }'` test -d $BASEDIR/cache/toolchains || mkdir $BASEDIR/cache/toolchains echo "`date -u '+%b %e %T'`: Load toolchain tar.gz for $BUILDMACHINE" | tee -a $LOGFILE cd $BASEDIR/cache/toolchains - wget $URL_IPFIRE/toolchains/$PACKAGE.tar.gz $URL_IPFIRE/toolchains/$PACKAGE.md5 >& /dev/null + wget $URL_TOOLCHAIN/$PACKAGE.tar.gz $URL_TOOLCHAIN/$PACKAGE.md5 >& /dev/null if [ $? -ne 0 ]; then echo "`date -u '+%b %e %T'`: error downloading toolchain for $BUILDMACHINE machine" | tee -a $LOGFILE else @@ -954,10 +933,9 @@ svn) clear if [ -f /usr/bin/mcedit ]; then export EDITOR=/usr/bin/mcedit - else - if [ -f /usr/bin/nano ]; then - export EDITOR=/usr/bin/nano - fi + fi + if [ -f /usr/bin/nano ]; then + export EDITOR=/usr/bin/nano fi echo -ne "Selecting editor $EDITOR..." beautify message DONE @@ -1012,7 +990,7 @@ uploadsrc) grep -q $i /var/tmp/ftplist if [ "$?" -ne "0" ]; then echo -ne "$i" - ncftpput -bb -u $IPFIRE_FTP_USER_INT -p $IPFIRE_FTP_PASS_INT $IPFIRE_FTP_URL_INT $IPFIRE_FTP_PATH_INT/ $i > /dev/null 2>&1 + ncftpput -bb -u $IPFIRE_FTP_USER_INT -p $IPFIRE_FTP_PASS_INT $IPFIRE_FTP_URL_INT $IPFIRE_FTP_PATH_INT/ $i >> $BASEDIR/log/_build.uploadsrc.log 2>&1 if [ "$?" -eq "0" ]; then beautify message DONE else @@ -1101,14 +1079,28 @@ batch) watch) watch_screen ;; +pxe) + case "$2" in + start) + start_tftpd + ;; + stop) + stop_tftpd + ;; + reload) + reload_tftpd + ;; + esac + exit 0 + ;; "") clear svn info - select name in "Exit" "IPFIRE: Prefetch" "IPFIRE: Build (silent)" "IPFIRE: Watch Build" "IPFIRE: Batch" "IPFIRE: Clean" "SVN: Commit" "SVN: Update" "SVN: Status" "SVN: Diff" "LOG: Tail" "Help" + select name in "Exit" "IPFIRE: Downloadsrc" "IPFIRE: Build (silent)" "IPFIRE: Watch Build" "IPFIRE: Batch" "IPFIRE: Clean" "SVN: Commit" "SVN: Update" "SVN: Status" "SVN: Diff" "LOG: Tail" "Help" do case $name in - "IPFIRE: Prefetch") - $0 prefetch + "IPFIRE: Downloadsrc") + $0 downloadsrc ;; "IPFIRE: Build (silent)") $0 build-silent @@ -1126,7 +1118,7 @@ watch) $0 svn update ;; "Help") - echo "Usage: $0 {build|changelog|clean|gettoolchain|newpak|prefetch|shell|sync|toolchain}" + echo "Usage: $0 {build|changelog|clean|gettoolchain|newpak|downloadsrc|shell|sync|toolchain}" cat doc/make.sh-usage ;; "LOG: Tail") @@ -1139,7 +1131,7 @@ watch) done ;; *) - echo "Usage: $0 {build|changelog|clean|gettoolchain|newpak|prefetch|shell|sync|toolchain}" + echo "Usage: $0 {build|changelog|clean|gettoolchain|newpak|downloadsrc|shell|sync|toolchain}" cat doc/make.sh-usage ;; esac