X-Git-Url: http://git.ipfire.org/?a=blobdiff_plain;f=make.sh;h=15923362ad14d1fb3a62139b68f4b7cffaedbe27;hb=fb2f6523e50a5dce84a266e7c2a7a6dea1bc4346;hp=8b6d8ea4de12cadf9bdd656b2ce05c7824ef518a;hpb=0b1248c660f00670ebea903ead8db7ce7e34d523;p=ipfire-2.x.git diff --git a/make.sh b/make.sh index 8b6d8ea4de..15923362ad 100755 --- a/make.sh +++ b/make.sh @@ -22,18 +22,21 @@ ############################################################################ # -NAME="IPFire" # Software name -SNAME="ipfire" # Short name -VERSION="2.5" -CORE="31" -GIT_BRANCH=master:master # Version number -SLOGAN="www.ipfire.org" # Software slogan -CONFIG_ROOT=/var/ipfire # Configuration rootdir -NICE=10 # Nice level -MAX_RETRIES=1 # prefetch/check loop +NAME="IPFire" # Software name +SNAME="ipfire" # Short name +VERSION="2.8test" # Version number +CORE="42" # Core Level (Filename) +PAKFIRE_CORE="41" # Core Level (PAKFIRE) +GIT_BRANCH=`git status | head -n1 | cut -d" " -f4` # Git Branch +SLOGAN="www.ipfire.org" # Software slogan +CONFIG_ROOT=/var/ipfire # Configuration rootdir +NICE=10 # Nice level +MAX_RETRIES=1 # prefetch/check loop +BUILD_IMAGES=1 # Build USB, Flash and Xen Images KVER=`grep --max-count=1 VER lfs/linux | awk '{ print $3 }'` MACHINE=`uname -m` -GIT_TAG=$(git tag | tail -1) +GIT_TAG=$(git tag | tail -1) # Git Tag +GIT_LASTCOMMIT=$(git log | head -n1 | cut -d" " -f2 |head -c8) # Last commit TOOLCHAINVER=1 IPFVER="full" # Which versions should be compiled? (full|devel) @@ -216,6 +219,7 @@ prepareenv() { # Run LFS static binary creation scripts one by one export CCACHE_DIR=$BASEDIR/ccache + export CCACHE_COMPRESS=1 export CCACHE_HASHDIR=1 # Remove pre-install list of installed files in case user erase some files before rebuild @@ -228,7 +232,7 @@ buildtoolchain() { ORG_PATH=$PATH NATIVEGCC=`gcc --version | grep GCC | awk {'print $3'}` export NATIVEGCC GCCmajor=${NATIVEGCC:0:1} GCCminor=${NATIVEGCC:2:1} GCCrelease=${NATIVEGCC:4:1} - lfsmake1 ccache + lfsmake1 ccache PASS=1 lfsmake1 binutils PASS=1 lfsmake1 gcc PASS=1 export PATH=$BASEDIR/build/usr/local/bin:$BASEDIR/build/tools/bin:$PATH @@ -240,6 +244,7 @@ buildtoolchain() { lfsmake1 dejagnu lfsmake1 gcc PASS=2 lfsmake1 binutils PASS=2 + lfsmake1 ccache PASS=2 lfsmake1 ncurses lfsmake1 bash lfsmake1 bzip2 @@ -334,38 +339,64 @@ buildipfire() { ipfiremake libusb ipfiremake libpcap ipfiremake ppp - ipfiremake rp-pppoe ipfiremake pptp ipfiremake unzip ipfiremake which + ipfiremake xz + ipfiremake linux-firmware ipfiremake linux XEN=1 - ipfiremake atl2 XEN=1 - ipfiremake hso XEN=1 - ipfiremake e1000e XEN=1 ipfiremake kqemu XEN=1 ipfiremake v4l-dvb XEN=1 ipfiremake madwifi XEN=1 -# ipfiremake alsa XEN=1 KMOD=1 - ipfiremake openswan XEN=1 KMOD=1 ipfiremake mISDN XEN=1 + ipfiremake dahdi XEN=1 KMOD=1 + ipfiremake cryptodev XEN=1 ipfiremake compat-wireless XEN=1 + ipfiremake r8169 XEN=1 + ipfiremake r8168 XEN=1 + ipfiremake r8101 XEN=1 + ipfiremake e1000 XEN=1 + ipfiremake e1000e XEN=1 + ipfiremake igb XEN=1 + ipfiremake linux PAE=1 + ipfiremake kqemu PAE=1 + ipfiremake kvm-kmod PAE=1 + ipfiremake v4l-dvb PAE=1 + ipfiremake madwifi PAE=1 + ipfiremake alsa PAE=1 KMOD=1 + ipfiremake mISDN PAE=1 + ipfiremake dahdi PAE=1 KMOD=1 + ipfiremake cryptodev PAE=1 + ipfiremake compat-wireless PAE=1 + ipfiremake r8169 PAE=1 + ipfiremake r8168 PAE=1 + ipfiremake r8101 PAE=1 + ipfiremake e1000 PAE=1 + ipfiremake e1000e PAE=1 + ipfiremake igb PAE=1 ipfiremake linux - ipfiremake atl2 - ipfiremake hso - ipfiremake e1000e ipfiremake kqemu + ipfiremake kvm-kmod ipfiremake v4l-dvb ipfiremake madwifi ipfiremake alsa KMOD=1 - ipfiremake openswan KMOD=1 ipfiremake mISDN + ipfiremake dahdi KMOD=1 + ipfiremake cryptodev ipfiremake compat-wireless + ipfiremake r8169 + ipfiremake r8168 + ipfiremake r8101 + ipfiremake e1000 + ipfiremake e1000e + ipfiremake igb ipfiremake pkg-config ipfiremake linux-atm ipfiremake cpio - ipfiremake klibc - ipfiremake mkinitcpio - ipfiremake udev KLIBC=1 + + installmake strip + + ipfiremake dracut ipfiremake expat ipfiremake gdbm ipfiremake gmp @@ -386,6 +417,7 @@ buildipfire() { ipfiremake pcre ipfiremake slang ipfiremake newt + ipfiremake attr ipfiremake libcap ipfiremake pciutils ipfiremake usbutils @@ -404,7 +436,6 @@ buildipfire() { ipfiremake cdrtools ipfiremake dnsmasq ipfiremake dosfstools - ipfiremake squashfstools ipfiremake reiserfsprogs ipfiremake xfsprogs ipfiremake sysfsutils @@ -524,8 +555,6 @@ buildipfire() { ipfiremake xvid ipfiremake libmpeg2 ipfiremake cmake - ipfiremake libpri - ipfiremake asterisk ipfiremake gnump3d ipfiremake libsigc++ ipfiremake applejuice @@ -536,6 +565,7 @@ buildipfire() { ipfiremake ipfireseeder ipfiremake rsync ipfiremake tcpwrapper + ipfiremake libevent ipfiremake portmap ipfiremake nfs ipfiremake nmap @@ -545,21 +575,22 @@ buildipfire() { ipfiremake tripwire ipfiremake sysstat ipfiremake vsftpd - ipfiremake openswan + ipfiremake strongswan ipfiremake lsof ipfiremake centerim ipfiremake br2684ctl ipfiremake pcmciautils ipfiremake lm_sensors + ipfiremake liboping ipfiremake collectd ipfiremake lcd4linux - ipfiremake tcptrack ipfiremake teamspeak ipfiremake elinks ipfiremake igmpproxy ipfiremake fbset ipfiremake sdl ipfiremake qemu + ipfiremake qemu-kqemu ipfiremake sane ipfiremake netpbm ipfiremake phpSANE @@ -570,6 +601,7 @@ buildipfire() { ipfiremake freefont ipfiremake directfb ipfiremake dfb++ + ipfiremake faad2 ipfiremake ffmpeg ipfiremake videolan ipfiremake vdr @@ -577,11 +609,11 @@ buildipfire() { ipfiremake icecast ipfiremake icegenerator ipfiremake mpd + ipfiremake libmpdclient ipfiremake mpc ipfiremake git ipfiremake squidclamav ipfiremake bc - ipfiremake esniper ipfiremake vnstat ipfiremake vnstati ipfiremake iw @@ -599,7 +631,6 @@ buildipfire() { ipfiremake netcat ipfiremake 7zip ipfiremake lynis - #ipfiremake cryptsetup ipfiremake splix ipfiremake streamripper ipfiremake sshfs @@ -609,20 +640,33 @@ buildipfire() { ipfiremake sslh ipfiremake perl-gettext ipfiremake vdradmin -# ipfiremake x11libs -# ipfiremake xen ipfiremake miau ipfiremake netsnmpd ipfiremake perl-DBI ipfiremake perl-DBD-mysql - ipfiremake lcr ipfiremake cacti ipfiremake icecc - ipfiremake open-vm-tools + ipfiremake openvmtools ipfiremake nagiosql ipfiremake iftop ipfiremake motion ipfiremake joe + ipfiremake nut + ipfiremake watchdog + ipfiremake libpri + ipfiremake dahdi + ipfiremake asterisk + ipfiremake lcr + ipfiremake usb_modeswitch + ipfiremake usb_modeswitch_data + ipfiremake zerofree + ipfiremake mdadm + ipfiremake eject + ipfiremake pound + ipfiremake minicom + ipfiremake ddrescue + ipfiremake tcl + ipfiremake imspector echo Build on $HOSTNAME > $BASEDIR/build/var/ipfire/firebuild cat /proc/version >> $BASEDIR/build/var/ipfire/firebuild echo >> $BASEDIR/build/var/ipfire/firebuild @@ -631,8 +675,12 @@ buildipfire() { git status >> $BASEDIR/build/var/ipfire/firebuild echo >> $BASEDIR/build/var/ipfire/firebuild cat /proc/cpuinfo >> $BASEDIR/build/var/ipfire/firebuild - echo $CORE > $BASEDIR/build/opt/pakfire/db/core/mine - echo $NAME $VERSION - Core$CORE > $BASEDIR/build/etc/system-release + echo $PAKFIRE_CORE > $BASEDIR/build/opt/pakfire/db/core/mine + if [ "$GIT_BRANCH" = "master" ]; then + echo "$NAME $VERSION - (Development Build: $GIT_LASTCOMMIT)" > $BASEDIR/build/etc/system-release + else + echo "$NAME $VERSION - $GIT_BRANCH" > $BASEDIR/build/etc/system-release + fi } buildinstaller() { @@ -642,36 +690,10 @@ buildinstaller() { ipfiremake as86 ipfiremake mbr ipfiremake memtest - installmake linux-libc-header - installmake binutils - ipfiremake uClibc PASS=1 - ipfiremake gcc INST=1 - installmake uClibc PASS=2 - installmake gcc INST=2 - installmake uClibc PASS=3 - installmake busybox - installmake udev - installmake slang - installmake newt - installmake gettext - installmake kbd - installmake popt - installmake sysvinit - installmake misc-progs - installmake libaal - installmake reiser4progs - installmake reiserfsprogs - installmake sysfsutils - installmake util-linux - installmake pciutils - installmake zlib - installmake mtd - installmake wget - installmake hwdata - installmake kudzu - installmake pcmciautils - installmake installer - installmake initrd + ipfiremake installer + cp -f $BASEDIR/doc/COPYING $BASEDIR/build/install/initrd/ + installmake strip + ipfiremake initrd } buildpackages() { @@ -679,7 +701,6 @@ buildpackages() { export LOGFILE echo "... see detailed log in _build.*.log files" >> $LOGFILE - installmake strip # Generating list of packages used echo -n "Generating packages list from logs" | tee -a $LOGFILE @@ -704,7 +725,7 @@ buildpackages() { ipfiremake cdrom ED=$IPFVER # Check if there is a loop device for building in virtual environments - if [ -e /dev/loop/0 ] || [ -e /dev/loop0 ]; then + if [ $BUILD_IMAGES == 1 ] && ([ -e /dev/loop/0 ] || [ -e /dev/loop0 ]); then ipfiremake usb-stick ED=$IPFVER ipfiremake flash-images ED=$IPFVER fi @@ -714,7 +735,7 @@ buildpackages() { ipfirepackages # Check if there is a loop device for building in virtual environments - if [ -e /dev/loop/0 ] || [ -e /dev/loop0 ]; then + if [ $BUILD_IMAGES == 1 ] && ([ -e /dev/loop/0 ] || [ -e /dev/loop0 ]); then cp -f $BASEDIR/packages/linux-xen-*.ipfire $LFS/install/packages/ cp -f $BASEDIR/packages/meta-linux-xen $LFS/install/packages/ ipfiremake xen-image ED=$IPFVER @@ -892,7 +913,7 @@ toolchain) buildtoolchain BUILDMACHINE=`uname -m` echo "`date -u '+%b %e %T'`: Create toolchain tar.gz for $BUILDMACHINE" | tee -a $LOGFILE - test -d $BASEDIR/cache/toolchains || mkdir $BASEDIR/cache/toolchains + 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-$BUILDMACHINE.tar.gz \ build/{bin,etc,usr/bin,usr/local} \ build/tools/{bin,etc,*-linux-gnu,include,lib,libexec,sbin,share,var} \ @@ -907,7 +928,7 @@ gettoolchain) PACKAGE=$SNAME-$VERSION-toolchain-$TOOLCHAINVER-$BUILDMACHINE if [ ! -f $BASEDIR/cache/toolchains/$PACKAGE.tar.gz ]; then URL_TOOLCHAIN=`grep URL_TOOLCHAIN lfs/Config | awk '{ print $3 }'` - test -d $BASEDIR/cache/toolchains || mkdir $BASEDIR/cache/toolchains + test -d $BASEDIR/cache/toolchains || mkdir -p $BASEDIR/cache/toolchains echo "`date -u '+%b %e %T'`: Load toolchain tar.gz for $BUILDMACHINE" | tee -a $LOGFILE cd $BASEDIR/cache/toolchains wget -U "IPFireSourceGrabber/2.x" $URL_TOOLCHAIN/$PACKAGE.tar.gz $URL_TOOLCHAIN/$PACKAGE.md5 >& /dev/null @@ -978,7 +999,7 @@ git) [ -z $GIT_USER ] && exiterror "You have to setup GIT_USER first." GIT_URL="ssh://${GIT_USER}@git.ipfire.org/pub/git/ipfire-2.x" - git push ${GIT_URL} ${GIT_BRANCH} $3 + git push ${GIT_URL} $3 ;; log) [ -z $GIT_TAG ] || LAST_TAG=$GIT_TAG @@ -995,11 +1016,12 @@ uploadsrc) beautify message FAIL exit 1 fi + URL_SOURCE=$(grep URL_SOURCE lfs/Config | awk '{ print $3 }') - REMOTE_FILES=$(echo "ls -1" | sftp -C ${IPFIRE_USER}@${URL_SOURCE}) + REMOTE_FILES=$(echo "ls -1 --ignore=toolchains" | sftp -C ${IPFIRE_USER}@${URL_SOURCE}) cd $BASEDIR/cache/ - for file in $(ls -1); do + for file in $(ls -1 --ignore=toolchains); do grep -q "$file" <<<$REMOTE_FILES && continue NEW_FILES="$NEW_FILES $file" done