]> git.ipfire.org Git - people/pmueller/ipfire-2.x.git/blobdiff - make.sh
Netzwerkscripts erweitert.
[people/pmueller/ipfire-2.x.git] / make.sh
diff --git a/make.sh b/make.sh
index 20756ab37d4a546f9601200ba646b1a5e8bc6bd0..4af9a2e48d656d58da1cd6ccfce4eaaac27b12e8 100644 (file)
--- a/make.sh
+++ b/make.sh
@@ -33,7 +33,7 @@ KVER=`grep --max-count=1 VER lfs/linux | awk '{ print $3 }'`
 MACHINE=`uname -m`
 SVN_REVISION=`svn info | grep Revision | cut -c 11-`
 
-IPFVER="full"                          # Which version should be compiled? (full|light|voice)
+IPFVER="full"                          # Which versions should be compiled? (full|light|voice|devel)
 
 # Set an information about the build number
 if [ -e ./.svn ]; then
@@ -170,7 +170,7 @@ prepareenv() {
     # Setup environment
     set +h
     LC_ALL=POSIX
-    MAKETUNING="-j12"
+    MAKETUNING="-j4"
     export LFS LC_ALL CFLAGS CXXFLAGS MAKETUNING
     unset CC CXX CPP LD_LIBRARY_PATH LD_PRELOAD
 
@@ -284,7 +284,6 @@ buildbase() {
     lfsmake2 file
     lfsmake2 findutils
     lfsmake2 flex
-    lfsmake2 grub
     lfsmake2 gawk
     lfsmake2 gettext
     lfsmake2 grep
@@ -294,6 +293,7 @@ buildbase() {
     lfsmake2 iproute2
     lfsmake2 kbd
     lfsmake2 less
+    lfsmake2 libaal
     lfsmake2 make
     lfsmake2 man
     lfsmake2 mktemp
@@ -301,6 +301,7 @@ buildbase() {
     lfsmake2 net-tools
     lfsmake2 patch
     lfsmake2 psmisc
+    lfsmake2 reiser4progs
     lfsmake2 shadow
     lfsmake2 sysklogd
     lfsmake2 sysvinit
@@ -309,6 +310,7 @@ buildbase() {
     lfsmake2 udev
     lfsmake2 util-linux
     lfsmake2 vim
+    lfsmake2 grub
 }
 
 buildipfire() {
@@ -319,50 +321,34 @@ buildipfire() {
   ipfiremake dhcpcd
   ipfiremake libusb
   ipfiremake libpcap
-# Temporary disabled.
-#  ipfiremake linux-atm
+  ipfiremake linux-atm
   ipfiremake ppp
   ipfiremake rp-pppoe
   ipfiremake unzip
   ipfiremake linux                     SMP=1
   ipfiremake ipp2p                     SMP=1
-#  ipfiremake 3cp4218          PASS=SMP
-#  ipfiremake amedyn                   PASS=SMP
-#  ipfiremake cxacru                   PASS=SMP
-#  ipfiremake eagle                    PASS=SMP
-#  ipfiremake cnx_pci          PASS=SMP
-#  ipfiremake fcdsl                    PASS=SMP
-#  ipfiremake fcdsl2                   PASS=SMP
-#  ipfiremake fcdslsl          PASS=SMP
-#  ipfiremake fcdslusb         PASS=SMP
-#  ipfiremake fcdslslusb               PASS=SMP
-#  ipfiremake fcpci                    PASS=SMP
-#  ipfiremake fcclassic                PASS=SMP
-#  ipfiremake pulsar                   PASS=SMP
-#  ipfiremake unicorn          PASS=SMP
-#  ipfiremake promise-sata-300-tx      PASS=SMP
-  ipfiremake zaptel                    PASS=S
+  ipfiremake fcdsl                     SMP=1
+  ipfiremake fcdsl2                    SMP=1
+  ipfiremake fcdslsl                   SMP=1
+  ipfiremake fcdslusb          SMP=1
+  ipfiremake fcdslslusb                SMP=1
+  ipfiremake fcpci                     SMP=1
+#  ipfiremake promise-sata-300-tx      SMP=1
+  ipfiremake zaptel                    SMP=1
+  ipfiremake fuse                      SMP=1
   ipfiremake linux
   ipfiremake ipp2p
-#  ipfiremake 3cp4218
-#  ipfiremake amedyn
-#  ipfiremake cxacru
-#  ipfiremake eciadsl
-#  ipfiremake eagle
-#  ipfiremake speedtouch
-#  ipfiremake cnx_pci
-#  ipfiremake fcdsl
-#  ipfiremake fcdsl2
-#  ipfiremake fcdslsl
-#  ipfiremake fcdslusb
-#  ipfiremake fcdslslusb
-#  ipfiremake fcpci
-#  ipfiremake fcclassic
-#  ipfiremake pulsar
-#  ipfiremake unicorn
+  ipfiremake fcdsl
+  ipfiremake fcdsl2
+  ipfiremake fcdslsl
+  ipfiremake fcdslusb
+  ipfiremake fcdslslusb
+  ipfiremake fcpci
 #  ipfiremake promise-sata-300-tx
   ipfiremake zaptel
-#  ipfiremake pcmciautils
+  ipfiremake fuse
+  ipfiremake pkg-config
+  ipfiremake cpio
   ipfiremake expat
   ipfiremake gdbm
   ipfiremake gmp
@@ -389,46 +375,53 @@ buildipfire() {
   ipfiremake mysql
   ipfiremake cyrus-sasl
   ipfiremake openldap
-#  ipfiremake cyrus-sasl PASS=L # Doesn't work yet. Thereby there's the question: Do we really need this?
   ipfiremake apache2
   ipfiremake php
-  ipfiremake subversion
-  ipfiremake apache2 PASS=C
+  ipfiremake apache2                   PASS=C
   ipfiremake arping
   ipfiremake beep
   ipfiremake bind
   ipfiremake capi4k-utils
   ipfiremake cdrtools
   ipfiremake dnsmasq
+  ipfiremake libaal
   ipfiremake dosfstools
   ipfiremake reiserfsprogs
+  ipfiremake squashfstools
+  ipfiremake sysfsutils
+  ipfiremake ntfs-3g
   ipfiremake ethtool
   ipfiremake ez-ipupdate
   ipfiremake fcron
   ipfiremake GD
+  ipfiremake GD-Graph
+  ipfiremake GD-TextUtil
   ipfiremake gnupg
   ipfiremake hdparm
   ipfiremake ibod
   ipfiremake initscripts
+  ipfiremake whatmask
   ipfiremake iptables
+  ipfiremake libupnp
   ipfiremake ipp2p                     IPT=1
+  ipfiremake moblock
+  ipfiremake linux-igd
   ipfiremake ipac-ng
   ipfiremake ipaddr
   ipfiremake iptstate
   ipfiremake iputils
   ipfiremake l7-protocols
-#  ipfiremake isapnptools # ERROR :(
+  ipfiremake isapnptools
 #  ipfiremake isdn4k-utils # What about mISDN???
+  ipfiremake hwdata
   ipfiremake kudzu
   ipfiremake logrotate
   ipfiremake logwatch
-  ipfiremake mingetty
   ipfiremake misc-progs
   ipfiremake mtools
   ipfiremake nano
   ipfiremake nash
   ipfiremake nasm
-### The Perl Modules have to be updated! I will skip this now!
   ipfiremake URI
   ipfiremake HTML-Tagset
   ipfiremake HTML-Parser
@@ -451,8 +444,12 @@ buildipfire() {
   ipfiremake Archive-Zip
   ipfiremake Text-Tabs+Wrap
   ipfiremake Locale-Country
+  ipfiremake XML-Parser
+  ipfiremake glib
+  ipfiremake dbus
+  ipfiremake hal
+  ipfiremake hwinfo
   ipfiremake GeoIP
-###
   ipfiremake fwhits
   ipfiremake noip_updater
   ipfiremake ntp
@@ -467,21 +464,18 @@ buildipfire() {
   ipfiremake squid
   ipfiremake squid-graph
   ipfiremake squidguard
-#  ipfiremake tcpdump
+  ipfiremake tcpdump
   ipfiremake traceroute
   ipfiremake vlan
   ipfiremake wireless
   ipfiremake libsafe
   ipfiremake 3c5x9setup
   ipfiremake pakfire
-  ipfiremake startscripts
   ipfiremake java
   ipfiremake bootsplash
   ipfiremake spandsp
   ipfiremake lzo
   ipfiremake openvpn
-  ipfiremake pkg-config
-  ipfiremake glib
   ipfiremake pammysql
   ipfiremake xinetd
   ipfiremake ghostscript
@@ -539,8 +533,8 @@ buildipfire() {
   ipfiremake ethereal
   ipfiremake tftp-hpa
   ipfiremake iptraf
+  ipfiremake bwm-ng
   ipfiremake nagios
-  ipfiremake yasuc
 }
 
 buildinstaller() {
@@ -548,6 +542,8 @@ buildinstaller() {
   LOGFILE="$BASEDIR/log/_build.installer.log"
   export LOGFILE
   ipfiremake syslinux
+  ipfiremake as86
+  ipfiremake mbr
   ipfiremake memtest
   installmake linux-libc-header
   installmake binutils
@@ -566,20 +562,22 @@ buildinstaller() {
   installmake sysvinit
   installmake misc-progs
   installmake e2fsprogs
+  installmake libaal
+  installmake reiser4progs
   installmake reiserfsprogs
   installmake sysfsutils
   installmake util-linux
   installmake pciutils
-  installmake pcmciautils
+  installmake zlib
+  installmake wget
+  installmake libxml2
+  installmake dbus
+  installmake hal
+  installmake hwdata
+  installmake hwinfo
   installmake kudzu
-#  installmake bootsplash
   installmake installer
-  installmake scsi.img # this is to be deleted
-  installmake driver.img       # this is to be deleted
   installmake initrd
-  installmake boot.img # this is to be deleted
-#  ipfiremake as86             # this is to be deleted
-#  ipfiremake mbr              # this is to be deleted
 }
 
 buildpackages() {
@@ -605,9 +603,17 @@ buildpackages() {
   beautify message DONE
 
   # Create images for install
-  ipfiremake cdrom
+  if [ ! -f ipfire-$VERSION.i586-devel.iso ]; then
+               ipfiremake cdrom ED=devel
+       fi
+       ipfiremake cdrom ED=full
+       
+  # Check if there is a loop device for building in virtual environments
+  if [ -e /dev/loop0 ]; then
+       ipfiremake usb-stick
+  fi
   ipfiremake pxe
-  cp -f $LFS/install/images/{*.iso,*.tgz} $BASEDIR >> $LOGFILE 2>&1
+  mv $LFS/install/images/{*.iso,*.tgz,*.img.gz} $BASEDIR >> $LOGFILE 2>&1
 
 #  ipfirepackages
 
@@ -630,7 +636,6 @@ buildpackages() {
   echo -n "###EOF###" >> $BASEDIR/packages/packages_list.txt
 
   cd $PWD
-
 }
 
 ipfirepackages() {
@@ -706,13 +711,11 @@ build)
        fi
 
        beautify build_start
-       beautify build_stage_start "Building base"
+       beautify build_stage "Building LFS"
        buildbase
-       beautify build_stage_end
 
-       beautify build_stage_start "Building IPFire"
+       beautify build_stage "Building IPFire"
        buildipfire
-       beautify build_stage_end
 
        # Setzen des IPFire Builds
        if [ "$FIREBUILD" ]; then
@@ -721,13 +724,11 @@ build)
                echo "_(OvO)_" > $BASEDIR/build/var/ipfire/firebuild
        fi
 
-       beautify build_stage_start "Building installer"
+       beautify build_stage "Building installer"
        buildinstaller
-       beautify build_stage_end
 
-       beautify build_stage_start "Building packages"
+       beautify build_stage "Building packages"
        buildpackages
-       beautify build_stage_end
        beautify build_end
        ;;
 shell)
@@ -738,7 +739,7 @@ shell)
        ;;
 changelog)
        echo -n "Loading new Changelog from SVN: "
-       svn log http://svn.ipfire.eu/svn/ipfire > doc/ChangeLog
+       svn log http://svn.ipfire.org/svn/ipfire > doc/ChangeLog
        beautify message DONE
        ;;
 clean)
@@ -912,9 +913,12 @@ svn)
                                $0 changelog
                        fi
                fi
+               update_langs
                svn commit
                $0 svn up
-               $0 uploadsrc
+               if [ -n "$FTP_CACHE_URL" ]; then
+                       $0 uploadsrc
+               fi
          ;;
          dist)
                if [ $3 ]; then
@@ -925,9 +929,9 @@ svn)
                        exit 0
                fi
                echo -en "REV $SVN_REVISION: Downloading..."
-               svn export http://svn.ipfire.eu/svn/ipfire/trunk ipfire-source/ --force > /dev/null
-               svn log http://svn.ipfire.eu/svn/ipfire/trunk -r 1:$SVN_REVISION > ipfire-source/Changelog
-               #svn info http://svn.ipfire.eu/svn/ipfire/trunk -r $SVN_REVISION > ipfire-source/svn_status
+               svn export http://svn.ipfire.org/svn/ipfire/trunk ipfire-source/ --force > /dev/null
+               svn log http://svn.ipfire.org/svn/ipfire/trunk -r 1:$SVN_REVISION > ipfire-source/Changelog
+               #svn info http://svn.ipfire.org/svn/ipfire/trunk -r $SVN_REVISION > ipfire-source/svn_status
                evaluate 1
 
                echo -en "REV $SVN_REVISION: Compressing files..."
@@ -945,6 +949,7 @@ svn)
                svn diff > ipfire-diff-`date +'%Y-%m-%d-%H:%M'`-r`svn info | grep Revision | cut -c 11-`.diff
                evaluate 1
                echo "Diff was successfully saved to ipfire-diff-`date +'%Y-%m-%d-%H:%M'`-r`svn info | grep Revision | cut -c 11-`.diff"
+               svn status
          ;;
        esac
        ;;
@@ -952,30 +957,19 @@ uploadsrc)
        PWD=`pwd`
        cd $BASEDIR/cache/
        echo -e "Uploading cache to ftp server:"
-       ncftpls -u $IPFIRE_FTP_USER_INT -p $IPFIRE_FTP_PASS_INT ftp://$IPFIRE_FTP_URL_INT$IPFIRE_FTP_PATH_INT/ > /var/tmp/ftplist
+       ncftpls -u $FTP_CACHE_USER -p $FTP_CACHE_PASS ftp://$FTP_CACHE_URL$FTP_CACHE_PATH/ > /tmp/ftplist
        for i in *; do
                if [ "$i" == "toolchains" ]; then continue; fi
-               grep -q $i /var/tmp/ftplist
+               grep -q $i /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 >> $BASEDIR/log/_build.uploadsrc.log 2>&1
-                       if [ "$?" -eq "0" ]; then
-                               beautify message DONE
-                       else
+                       ncftpput -u $FTP_CACHE_USER -p $FTP_CACHE_PASS $FTP_CACHE_URL $FTP_CACHE_PATH/ $i
+                       if [ "$?" -ne "0" ]; then
                                beautify message FAIL
                        fi
                fi
        done
-       rm -f /var/tmp/ftplist
-       UL_TIME_START=`date +'%s'`
-       ncftpbatch -d > /dev/null 2>&1
-       while ps acx | grep -q ncftpbatch
-       do
-               UL_TIME=$(expr `date +'%s'` - $UL_TIME_START)
-               echo -ne "\r ${UL_TIME}s : Upload is running..."
-               sleep 1
-       done
-       beautify message DONE
+       rm -f /tmp/ftplist
        cd $PWD
        exit 0
        ;;
@@ -991,10 +985,10 @@ EOF
                ncftp -u $IPFIRE_FTP_USER_EXT -p $IPFIRE_FTP_PASS_EXT $IPFIRE_FTP_URL_EXT < .ftp-commands
                rm -f .ftp-commands
                md5sum ipfire-install-$VERSION.i386.iso > ipfire-install-$VERSION.i386.iso.md5
-               ncftpput -u $IPFIRE_FTP_USER_EXT -p $IPFIRE_FTP_PASS_EXT $IPFIRE_FTP_URL_EXT $IPFIRE_FTP_PATH_EXT/ ipfire-install-$VERSION.i386.iso
-               ncftpput -u $IPFIRE_FTP_USER_EXT -p $IPFIRE_FTP_PASS_EXT $IPFIRE_FTP_URL_EXT $IPFIRE_FTP_PATH_EXT/ ipfire-install-$VERSION.i386.iso.md5
-               ncftpput -u $IPFIRE_FTP_USER_EXT -p $IPFIRE_FTP_PASS_EXT $IPFIRE_FTP_URL_EXT $IPFIRE_FTP_PATH_EXT/ ipfire-source-r$SVN_REVISION.tar.gz
-               ncftpput -u $IPFIRE_FTP_USER_EXT -p $IPFIRE_FTP_PASS_EXT $IPFIRE_FTP_URL_EXT $IPFIRE_FTP_PATH_EXT/ svn_status
+               ncftpput -u $FTP_ISO_USER -p $FTP_ISO_PASS $FTP_ISO_URL $FTP_ISO_PATH/ ipfire-install-$VERSION.i386.iso
+               ncftpput -u $FTP_ISO_USER -p $FTP_ISO_PASS $FTP_ISO_URL $FTP_ISO_PATH/ ipfire-install-$VERSION.i386.iso.md5
+               ncftpput -u $FTP_ISO_USER -p $FTP_ISO_PASS $FTP_ISO_URL $FTP_ISO_PATH/ ipfire-source-r$SVN_REVISION.tar.gz
+               ncftpput -u $FTP_ISO_USER -p $FTP_ISO_PASS $FTP_ISO_URL $FTP_ISO_PATH/ svn_status
                if [ "$?" -eq "0" ]; then
                        echo -e "The iso of Revision $SVN_REVISION was successfully uploaded to $IPFIRE_FTP_URL_EXT$IPFIRE_FTP_PATH_EXT/."
                else
@@ -1002,7 +996,7 @@ EOF
                        exit 1
                fi
                if [ "$3" = "--with-sources-cd" ]; then
-                       ncftpput -u $IPFIRE_FTP_USER_EXT -p $IPFIRE_FTP_PASS_EXT $IPFIRE_FTP_URL_EXT $IPFIRE_FTP_PATH_EXT/ ipfire-sources-cd-$VERSION.$MACHINE.iso
+                       ncftpput -u $FTP_ISO_USER -p $FTP_ISO_PASS $FTP_ISO_URL $FTP_ISO_PATH/ ipfire-sources-cd-$VERSION.$MACHINE.iso
                fi
                ;;
          paks)
@@ -1024,7 +1018,7 @@ EOF
        esac
        ;;
 batch)
-       if [ "$2" -eq "--background" ]; then
+       if [ "$2" = "--background" ]; then
                batch_script
                exit $?
        fi
@@ -1061,6 +1055,9 @@ pxe)
        esac
        exit 0
        ;;
+lang)
+       update_langs
+       ;;
 "")
        clear
        svn info