NAME="IPFire" # Software name
SNAME="ipfire" # Short name
-VERSION="2.0t4" # Version number
+VERSION="2.1" # Version number
SLOGAN="www.ipfire.org" # Software slogan
CONFIG_ROOT=/var/ipfire # Configuration rootdir
NICE=10 # Nice level
IPFVER="full" # Which versions should be compiled? (full|devel)
-# Set an information about the build number
-if [ -e ./.svn ]; then
- FIREBUILD=`cat .svn/entries |sed -n 's/^[ \t]*revision=\"// p' | sed -n 's/\".*$// p'`
-fi
-
# Debian specific settings
if [ ! -e /etc/debian_version ]; then
FULLPATH=`which $0`
# #
############################################################################
if [ ! "$BASH" ]; then
- exiterror "BASH environment variable is not set. You're probably running the wrong shell."
+ exiterror "BASH environment variable is not set. You're probably running the wrong shell."
fi
if [ -z "${BASH_VERSION}" ]; then
- exiterror "Not running BASH shell."
+ exiterror "Not running BASH shell."
fi
echo -ne "Resetting our nice level to $NICE" | tee -a $LOGFILE
renice $NICE $$ > /dev/null
if [ `nice` != "$NICE" ]; then
- beautify message FAIL
- exiterror "Failed to set correct nice level"
+ beautify message FAIL
+ exiterror "Failed to set correct nice level"
else
- beautify message DONE
+ beautify message DONE
fi
############################################################################
echo -ne "Checking if we're running as root user" | tee -a $LOGFILE
if [ `id -u` != 0 ]; then
- beautify message FAIL
- exiterror "Not building as root"
+ beautify message FAIL
+ exiterror "Not building as root"
else
- beautify message DONE
+ beautify message DONE
fi
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 (( 2048000 > $BASE_ASPACE )); then
- BASE_USPACE=`du -skx $BASEDIR | awk '{print $1}'`
- if (( 2048000 - $BASE_USPACE > $BASE_ASPACE )); then
- beautify message FAIL
- exiterror "Not enough temporary space available, need at least 2GB on $BASE_DEV"
- fi
+ BASE_USPACE=`du -skx $BASEDIR | awk '{print $1}'`
+ if (( 2048000 - $BASE_USPACE > $BASE_ASPACE )); then
+ beautify message FAIL
+ exiterror "Not enough temporary space available, need at least 2GB on $BASE_DEV"
+ fi
else
- beautify message DONE
+ beautify message DONE
fi
############################################################################
rm -f /tools
fi
if [ ! -a /tools ]; then
- ln -s $BASEDIR/build/tools /
+ ln -s $BASEDIR/build/tools /
fi
if [ ! -h /tools ]; then
- exiterror "Could not create /tools symbolic link."
+ exiterror "Could not create /tools symbolic link."
fi
# Setup environment
LOGFILE="$BASEDIR/log/_build.ipfire.log"
export LOGFILE
ipfiremake configroot
+ ipfiremake backup
ipfiremake dhcp
ipfiremake dhcpcd
ipfiremake libusb
ipfiremake libpcap
- ipfiremake linux-atm
ipfiremake ppp
ipfiremake rp-pppoe
ipfiremake unzip
ipfiremake linux SMP=1
ipfiremake ipp2p SMP=1
- ipfiremake fcdsl SMP=1
- ipfiremake fcdsl2 SMP=1
- ipfiremake fcdslsl SMP=1
- ipfiremake fcdslusb SMP=1
- ipfiremake fcdslslusb SMP=1
-# ipfiremake promise-sata-300-tx SMP=1
ipfiremake zaptel SMP=1
- ipfiremake fuse SMP=1
+ ipfiremake r8169 SMP=1
+ ipfiremake r8168 SMP=1
+ ipfiremake mcs7830 SMP=1
+ ipfiremake atl1 SMP=1
+ ipfiremake kqemu SMP=1
ipfiremake linux
ipfiremake ipp2p
- ipfiremake fcdsl
- ipfiremake fcdsl2
- ipfiremake fcdslsl
- ipfiremake fcdslusb
- ipfiremake fcdslslusb
-# ipfiremake promise-sata-300-tx
ipfiremake zaptel
- ipfiremake fuse
+ ipfiremake r8169
+ ipfiremake r8168
+ ipfiremake mcs7830
+ ipfiremake atl1
+ ipfiremake kqemu
ipfiremake pkg-config
+ ipfiremake linux-atm
ipfiremake cpio
ipfiremake klibc
ipfiremake mkinitcpio
ipfiremake curl
ipfiremake python
ipfiremake libnet
+ ipfiremake libidn
ipfiremake libjpeg
ipfiremake libpng
ipfiremake libtiff
ipfiremake arping
ipfiremake beep
ipfiremake bind
- ipfiremake capi4k-utils
ipfiremake cdrtools
ipfiremake dnsmasq
ipfiremake dosfstools
- ipfiremake reiserfsprogs
ipfiremake squashfstools
+ ipfiremake reiserfsprogs
+ ipfiremake xfsprogs
ipfiremake sysfsutils
+ ipfiremake fuse
ipfiremake ntfs-3g
ipfiremake ethtool
ipfiremake ez-ipupdate
ipfiremake fcron
- ipfiremake GD
+ ipfiremake perl-GD
ipfiremake GD-Graph
ipfiremake GD-TextUtil
ipfiremake gnupg
ipfiremake hdparm
- ipfiremake ibod
+ ipfiremake sdparm
+ ipfiremake mtools
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 isdn4k-utils
ipfiremake mISDN
+ ipfiremake capi4k-utils
ipfiremake hwdata
ipfiremake kudzu
ipfiremake logrotate
ipfiremake logwatch
ipfiremake misc-progs
- ipfiremake mtools
ipfiremake nano
ipfiremake nasm
ipfiremake URI
ipfiremake Text-Tabs+Wrap
ipfiremake Locale-Country
ipfiremake XML-Parser
- ipfiremake MP3-Info
- ipfiremake MP3-Tag
ipfiremake glib
ipfiremake GeoIP
ipfiremake fwhits
ipfiremake ntp
ipfiremake openssh
ipfiremake openswan
- ipfiremake pptpclient
ipfiremake rrdtool
ipfiremake setserial
ipfiremake setup
ipfiremake snort
- #ipfiremake snortsnarf
ipfiremake oinkmaster
ipfiremake squid
ipfiremake squid-graph
ipfiremake lzo
ipfiremake openvpn
ipfiremake pammysql
- ipfiremake ghostscript
ipfiremake cups
+ ipfiremake ghostscript
+ ipfiremake foomatic
+ ipfiremake hplip
ipfiremake samba
ipfiremake sudo
ipfiremake mc
ipfiremake htop
ipfiremake postfix
ipfiremake fetchmail
- ipfiremake cyrusimap
- ipfiremake webcyradm
- ipfiremake mailx
+ ipfiremake cyrus-imapd
+ ipfiremake openmailadmin
ipfiremake clamav
ipfiremake spamassassin
ipfiremake amavisd
ipfiremake alsa
ipfiremake mpg123
ipfiremake mpfire
+ ipfiremake guardian
+ ipfiremake libid3tag
ipfiremake libmad
ipfiremake libogg
ipfiremake libvorbis
ipfiremake lame
ipfiremake sox
- ipfiremake mp3blaster
+ ipfiremake libshout
+ ipfiremake icecast
+ ipfiremake icegenerator
+ ipfiremake mpd
+ ipfiremake mpc
+ ipfiremake xvid
+ ipfiremake libmpeg2
+ ipfiremake videolan
ipfiremake libpri
- ipfiremake stund
-# ipfiremake bristuff
ipfiremake asterisk
- ipfiremake backup
ipfiremake gnump3d
ipfiremake libsigc++
ipfiremake applejuice
ipfiremake nfs
ipfiremake nmap
ipfiremake mbmon
- ipfiremake iftop
ipfiremake ncftp
- ipfiremake cftp
ipfiremake etherwake
- ipfiremake ethereal
- ipfiremake tftp-hpa
ipfiremake bwm-ng
ipfiremake tripwire
ipfiremake sysstat
ipfiremake vsftpd
ipfiremake which
ipfiremake lsof
+ ipfiremake centerim
+ ipfiremake br2684ctl
+ ipfiremake pcmciautils
+ ipfiremake collectd
+ ipfiremake lcd4linux
+ ipfiremake neon
+ ipfiremake subversion
+ ipfiremake tcptrack
+ ipfiremake teamspeak
+ ipfiremake elinks
+ ipfiremake igmpproxy
+ ipfiremake sdl
+ ipfiremake qemu
}
buildinstaller() {
installmake wget
installmake hwdata
installmake kudzu
+ installmake pcmciautils
installmake installer
installmake initrd
}
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$\|setup$\|pakfire$\|stage2$\|smp$\|tools$\|tools1$\|tools2$\|.tgz$\|-config$\|_missing_rootfile$' \
+ grep -v 'configroot$\|img$\|initrd$\|initscripts$\|installer$\|install$\|setup$\|pakfire$\|stage2$\|smp$\|tools$\|tools1$\|tools2$\|.tgz$\|-config$\|_missing_rootfile$\|install1$\|install2$\|pass1$\|pass2$\|pass3$' \
$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 images for install
- if [ "$DEVEL" == "1" ]; 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
+ if [ -e /dev/loop/0 ] || [ -e /dev/loop0 ]; then
ipfiremake usb-stick
fi
- ipfiremake pxe
mv $LFS/install/images/{*.iso,*.tgz,*.img.gz} $BASEDIR >> $LOGFILE 2>&1
ipfirepackages
}
ipfirepackages() {
- ipfiredist alsa
-# ipfiredist amavisd
- ipfiredist applejuice
-# ipfiredist asterisk
- ipfiredist clamav
- ipfiredist cups
- ipfiredist cyrus-sasl
-# ipfiredist fetchmail
-# ipfiredist gnump3d
- ipfiredist guardian
- ipfiredist ipfireseeder
- ipfiredist java
- ipfiredist libogg
- ipfiredist libvorbis
-# ipfiredist mailx
-# ipfiredist mldonkey
- ipfiredist mp3blaster
- ipfiredist mpfire
- ipfiredist mpg123
-# ipfiredist nfs
- ipfiredist openldap
-# ipfiredist postfix
- ipfiredist rtorrent
- ipfiredist samba
-# ipfiredist sox
-# ipfiredist spamassassin
- ipfiredist tripwire
- ipfiredist vsftpd
-# ipfiredist webcyradm
+ ipfiremake core-updates
+ for i in $(ls -1 $BASEDIR/config/rootfiles/packages); do
+ if [ -e $BASEDIR/lfs/$i ]; then
+ ipfiredist $i
+ else
+ echo -n $i
+ beautify message SKIP
+ fi
+ done
test -d $BASEDIR/packages || mkdir $BASEDIR/packages
mv -f $LFS/install/packages/* $BASEDIR/packages >> $LOGFILE 2>&1
rm -rf $BASEDIR/build/install/packages/*
build)
clear
BUILDMACHINE=`uname -m`
- DEVEL=0
- if [ "$2" == "--devel" ]; then
- DEVEL=1
- fi
PACKAGE=`ls -v -r $BASEDIR/cache/toolchains/$SNAME-$VERSION-toolchain-$BUILDMACHINE.tar.gz 2> /dev/null | head -n 1`
#only restore on a clean disk
if [ ! -f log/cleanup-toolchain-2-tools ]; then
buildipfire
# Setzen des IPFire Builds
- if [ "$FIREBUILD" ]; then
- echo "$FIREBUILD" > $BASEDIR/build/var/ipfire/firebuild
+ if [ "$SVN_REVISION" ]; then
+ echo "$SVN_REVISION" > $BASEDIR/build/var/ipfire/firebuild
else
echo "_(OvO)_" > $BASEDIR/build/var/ipfire/firebuild
fi
PWD=`pwd`
cd $BASEDIR/cache/
echo -e "Uploading cache to ftp server:"
- ncftpls -u $FTP_CACHE_USER -p $FTP_CACHE_PASS ftp://$FTP_CACHE_URL$FTP_CACHE_PATH/ > /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 /tmp/ftplist
+ if [ "$(basename $i)" == "toolchains" ]; then continue; fi
+ grep -q $(basename $i) /tmp/ftplist
if [ "$?" -ne "0" ]; then
- echo -ne "$i"
- ncftpput -u $FTP_CACHE_USER -p $FTP_CACHE_PASS $FTP_CACHE_URL $FTP_CACHE_PATH/ $i
+ echo -ne "$(basename $i)"
+ ncftpput -u $FTP_CACHE_USER -p $FTP_CACHE_PASS $FTP_CACHE_URL $FTP_CACHE_PATH/ $(basename $i)
if [ "$?" -ne "0" ]; then
beautify message FAIL
fi
fi
fi
done
+ rm -f ipfire-$VERSION.$MACHINE-full.iso.md5
if [ "$3" = "--with-sources-cd" ]; then
ncftpput -u $FTP_ISO_USER -p $FTP_ISO_PASS -P $FTP_ISO_PORT $FTP_ISO_URL $FTP_ISO_PATH/$SVN_REVISION/ ipfire-sources-cd-$VERSION.$MACHINE.iso
fi
lang)
update_langs
;;
-packages)
- case "$2" in
- sign)
- sign_packages
- ;;
- esac
- ;;
"")
clear
svn info