# along with IPFire; if not, write to the Free Software #
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #
# #
-# Copyright (C) 2007 IPFire-Team <info@ipfire.org>. #
+# Copyright (C) 2007-2011 IPFire-Team <info@ipfire.org>. #
# #
############################################################################
#
NAME="IPFire" # Software name
SNAME="ipfire" # Short name
-VERSION="2.7" # Version number
-CORE="43" # Core Level (Filename)
-PAKFIRE_CORE="42" # Core Level (PAKFIRE)
+VERSION="2.11" # Version number
+CORE="53" # Core Level (Filename)
+PAKFIRE_CORE="52" # 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
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=1
IPFVER="full" # Which versions should be compiled? (full|devel)
BUILDMACHINE=$MACHINE
}
buildtoolchain() {
- if [ "$MACHINE" = "x86_64" ]; then
+ if [ "$(uname -m)" = "x86_64" ]; then
exiterror "Cannot build toolchain on x86_64. Please use the download."
fi
+ if [ "$(uname -r | grep ipfire)" ]; then
+ exiterror "Cannot build toolchain on ipfire. Please use the download."
+ 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}
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 grep
lfsmake1 gzip
lfsmake1 m4
- lfsmake1 make
+ lfsmake1 make PASS=2
lfsmake1 patch
lfsmake1 perl
lfsmake1 sed
lfsmake1 tar
lfsmake1 texinfo
lfsmake1 util-linux
+ lfsmake1 strip
lfsmake1 cleanup-toolchain PASS=2
export PATH=$ORG_PATH
}
lfsmake2 man
lfsmake2 mktemp
lfsmake2 module-init-tools
- lfsmake2 mtd
lfsmake2 net-tools
lfsmake2 patch
lfsmake2 psmisc
ipfiremake which
ipfiremake xz
ipfiremake linux-firmware
+ ipfiremake zd1211-firmware
ipfiremake linux XEN=1
ipfiremake kqemu XEN=1
ipfiremake v4l-dvb 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 kqemu
ipfiremake kvm-kmod
ipfiremake dahdi KMOD=1
ipfiremake cryptodev
ipfiremake compat-wireless
- ipfiremake r8169
- ipfiremake r8168
- ipfiremake r8101
+# 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
ipfiremake pam
ipfiremake openssl
ipfiremake curl
+ ipfiremake tcl
+ ipfiremake sqlite
ipfiremake python
+ ipfiremake fireinfo
ipfiremake libnet
ipfiremake libnl
ipfiremake libidn
ipfiremake pcre
ipfiremake slang
ipfiremake newt
+ ipfiremake attr
+ ipfiremake acl
ipfiremake libcap
ipfiremake pciutils
ipfiremake usbutils
ipfiremake cdrtools
ipfiremake dnsmasq
ipfiremake dosfstools
- ipfiremake squashfstools
ipfiremake reiserfsprogs
ipfiremake xfsprogs
ipfiremake sysfsutils
ipfiremake rrdtool
ipfiremake setserial
ipfiremake setup
+ ipfiremake libdnet
+ ipfiremake daq
ipfiremake snort
ipfiremake oinkmaster
ipfiremake squid
ipfiremake wireless
ipfiremake libsafe
ipfiremake pakfire
- ipfiremake java
ipfiremake spandsp
ipfiremake lzo
ipfiremake openvpn
ipfiremake gnump3d
ipfiremake libsigc++
ipfiremake applejuice
- ipfiremake ocaml
- ipfiremake mldonkey
ipfiremake libtorrent
ipfiremake rtorrent
ipfiremake ipfireseeder
ipfiremake phpSANE
ipfiremake tunctl
ipfiremake nagios
+ ipfiremake nagios_nrpe
ipfiremake ebtables
ipfiremake fontconfig
ipfiremake freefont
ipfiremake splix
ipfiremake streamripper
ipfiremake sshfs
- ipfiremake sqlite
ipfiremake taglib
ipfiremake mediatomb
ipfiremake sslh
ipfiremake asterisk
ipfiremake lcr
ipfiremake usb_modeswitch
+ ipfiremake usb_modeswitch_data
ipfiremake zerofree
ipfiremake mdadm
ipfiremake eject
ipfiremake ddrescue
ipfiremake imspector
ipfiremake miniupnpd
+ ipfiremake client175
+ ipfiremake powertop
+ ipfiremake parted
+ ipfiremake swig
+ ipfiremake python-m2crypto
+ ipfiremake wireless-regdb
+ ipfiremake crda
+ ipfiremake libsolv
+ ipfiremake python-distutils-extra
+ ipfiremake python-lzma
+ ipfiremake python-progressbar
+ ipfiremake python-xattr
+ ipfiremake intltool
+ ipfiremake pakfire3-deps
echo Build on $HOSTNAME > $BASEDIR/build/var/ipfire/firebuild
cat /proc/version >> $BASEDIR/build/var/ipfire/firebuild
echo >> $BASEDIR/build/var/ipfire/firebuild
echo >> $BASEDIR/build/var/ipfire/firebuild
cat /proc/cpuinfo >> $BASEDIR/build/var/ipfire/firebuild
echo $PAKFIRE_CORE > $BASEDIR/build/opt/pakfire/db/core/mine
- if [ "$GIT_BRANCH" = "master" ]; then
+ if [ "$GIT_BRANCH" = "next" ]; then
echo "$NAME $VERSION - (Development Build: $GIT_LASTCOMMIT)" > $BASEDIR/build/etc/system-release
else
echo "$NAME $VERSION - $GIT_BRANCH" > $BASEDIR/build/etc/system-release
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 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() {
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
fi
mv $LFS/install/images/*.bz2 $BASEDIR >> $LOGFILE 2>&1
+ cd $BASEDIR
+ for i in `ls *.bz2 *.img.gz *.iso`; do
+ md5sum $i > $i.md5
+ done
+ cd $PWD
+
# Cleanup
stdumount
rm -rf $BASEDIR/build/tmp/*
case "$1" in
build)
clear
- PACKAGE=`ls -v -r $BASEDIR/cache/toolchains/$SNAME-$VERSION-toolchain-$TOOLCHAINVER-$BUILDMACHINE.tar.gz 2> /dev/null | head -n 1`
+ PACKAGE=`ls -v -r $BASEDIR/cache/toolchains/$SNAME-$VERSION-toolchain-$TOOLCHAINVER-$MACHINE.tar.gz 2> /dev/null | head -n 1`
#only restore on a clean disk
if [ ! -f log/cleanup-toolchain-2-tools ]; then
if [ ! -n "$PACKAGE" ]; then
buildpackages
beautify build_stage "Checking Logfiles for new Files"
- cd ..
+
+ cd $BASEDIR
tools/checknewlog.pl
+ cd $PWD
beautify build_end
;;
if [ -h /tools ]; then
rm -f /tools
fi
+ rm -f $BASEDIR/ipfire-*
beautify message DONE
;;
downloadsrc)
prepareenv
beautify build_stage "Toolchain compilation - Native GCC: `gcc --version | grep GCC | awk {'print $3'}`"
buildtoolchain
- echo "`date -u '+%b %e %T'`: Create toolchain tar.gz for $BUILDMACHINE" | tee -a $LOGFILE
+ 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-$BUILDMACHINE.tar.gz \
+ 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
- md5sum cache/toolchains/$SNAME-$VERSION-toolchain-$TOOLCHAINVER-$BUILDMACHINE.tar.gz \
- > cache/toolchains/$SNAME-$VERSION-toolchain-$TOOLCHAINVER-$BUILDMACHINE.md5
+ md5sum cache/toolchains/$SNAME-$VERSION-toolchain-$TOOLCHAINVER-$MACHINE.tar.gz \
+ > cache/toolchains/$SNAME-$VERSION-toolchain-$TOOLCHAINVER-$MACHINE.md5
stdumount
;;
gettoolchain)
# arbitrary name to be updated in case of new toolchain package upload
- PACKAGE=$SNAME-$VERSION-toolchain-$TOOLCHAINVER-$BUILDMACHINE
+ PACKAGE=$SNAME-$VERSION-toolchain-$TOOLCHAINVER-$MACHINE
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 -p $BASEDIR/cache/toolchains
- echo "`date -u '+%b %e %T'`: Load toolchain tar.gz for $BUILDMACHINE" | tee -a $LOGFILE
+ echo "`date -u '+%b %e %T'`: Load toolchain tar.gz for $MACHINE" | tee -a $LOGFILE
cd $BASEDIR/cache/toolchains
wget -U "IPFireSourceGrabber/2.x" $URL_TOOLCHAIN/$PACKAGE.tar.gz $URL_TOOLCHAIN/$PACKAGE.md5 >& /dev/null
if [ $? -ne 0 ]; then
- echo "`date -u '+%b %e %T'`: error downloading $PACKAGE toolchain for $BUILDMACHINE machine" | tee -a $LOGFILE
+ echo "`date -u '+%b %e %T'`: error downloading $PACKAGE toolchain for $MACHINE machine" | tee -a $LOGFILE
else
if [ "`md5sum $PACKAGE.tar.gz | awk '{print $1}'`" = "`cat $PACKAGE.md5 | awk '{print $1}'`" ]; then
echo "`date -u '+%b %e %T'`: toolchain md5 ok" | tee -a $LOGFILE