NAME="IPFire" # Software name
SNAME="ipfire" # Short name
VERSION="2.8test" # Version number
-CORE="40" # Core Level (Filename)
-PAKFIRE_CORE="40" # Core Level (PAKFIRE)
+CORE="43" # Core Level (Filename)
+PAKFIRE_CORE="42" # 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=2
+TOOLCHAINVER=1
IPFVER="full" # Which versions should be compiled? (full|devel)
+BUILDMACHINE=$MACHINE
+ if [ "$MACHINE" = "x86_64" ]; then
+ BUILDMACHINE="i686";
+ linux32="linux32";
+ fi
+
+
# Debian specific settings
if [ ! -e /etc/debian_version ]; then
FULLPATH=`which $0`
# 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
}
buildtoolchain() {
+ 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
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
lfsmake1 dejagnu
lfsmake1 gcc PASS=2
lfsmake1 binutils PASS=2
+ lfsmake1 ccache PASS=2
lfsmake1 ncurses
lfsmake1 bash
lfsmake1 bzip2
lfsmake2 man
lfsmake2 mktemp
lfsmake2 module-init-tools
- lfsmake2 mtd
lfsmake2 net-tools
lfsmake2 patch
lfsmake2 psmisc
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 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 kqemu
-# ipfiremake kvm-kmod
+ ipfiremake kvm-kmod
ipfiremake v4l-dvb
ipfiremake madwifi
ipfiremake alsa KMOD=1
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 openssl
ipfiremake curl
ipfiremake python
+ ipfiremake fireinfo
ipfiremake libnet
ipfiremake libnl
ipfiremake libidn
ipfiremake pcre
ipfiremake slang
ipfiremake newt
+ ipfiremake attr
ipfiremake libcap
ipfiremake pciutils
ipfiremake usbutils
ipfiremake cdrtools
ipfiremake dnsmasq
ipfiremake dosfstools
- ipfiremake squashfstools
ipfiremake reiserfsprogs
ipfiremake xfsprogs
ipfiremake sysfsutils
ipfiremake minicom
ipfiremake ddrescue
ipfiremake tcl
+ ipfiremake imspector
+ ipfiremake miniupnpd
+ ipfiremake client175
echo Build on $HOSTNAME > $BASEDIR/build/var/ipfire/firebuild
cat /proc/version >> $BASEDIR/build/var/ipfire/firebuild
echo >> $BASEDIR/build/var/ipfire/firebuild
ipfiremake mbr
ipfiremake memtest
ipfiremake installer
+ cp -f $BASEDIR/doc/COPYING $BASEDIR/build/install/initrd/
installmake strip
ipfiremake initrd
}
case "$1" in
build)
clear
- BUILDMACHINE=`uname -m`
PACKAGE=`ls -v -r $BASEDIR/cache/toolchains/$SNAME-$VERSION-toolchain-$TOOLCHAINVER-$BUILDMACHINE.tar.gz 2> /dev/null | head -n 1`
#only restore on a clean disk
if [ ! -f log/cleanup-toolchain-2-tools ]; then
prepareenv
beautify build_stage "Toolchain compilation - Native GCC: `gcc --version | grep GCC | awk {'print $3'}`"
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 -p $BASEDIR/cache/toolchains
cd $BASEDIR && tar -zc --exclude='log/_build.*.log' -f cache/toolchains/$SNAME-$VERSION-toolchain-$TOOLCHAINVER-$BUILDMACHINE.tar.gz \
stdumount
;;
gettoolchain)
- BUILDMACHINE=`uname -m`
# arbitrary name to be updated in case of new toolchain package upload
PACKAGE=$SNAME-$VERSION-toolchain-$TOOLCHAINVER-$BUILDMACHINE
if [ ! -f $BASEDIR/cache/toolchains/$PACKAGE.tar.gz ]; then
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