# Setup environment
set +h
LC_ALL=POSIX
- MAKETUNING="-j8"
+ MAKETUNING="-j12"
export LFS LC_ALL CFLAGS CXXFLAGS MAKETUNING
unset CC CXX CPP LD_LIBRARY_PATH LD_PRELOAD
lfsmake2 bzip2
lfsmake2 diffutils
lfsmake2 e2fsprogs
+ lfsmake2 ed
lfsmake2 file
lfsmake2 findutils
lfsmake2 flex
lfsmake2 man
lfsmake2 mktemp
lfsmake2 modutils
+ lfsmake2 net-tools
lfsmake2 patch
lfsmake2 psmisc
lfsmake2 shadow
buildipfire() {
LOGFILE="$BASEDIR/log/_build.ipfire.log"
export LOGFILE
- ipfiremake inetutils
- ipfiremake net-tools
- ipfiremake ed
ipfiremake configroot
ipfiremake dhcp
ipfiremake dhcpcd
ipfiremake libusb
ipfiremake libpcap
-# Temporary disabled.
-# ipfiremake linux-atm
+ ipfiremake linux-atm
ipfiremake ppp
ipfiremake rp-pppoe
ipfiremake unzip
-# ipfiremake linux PASS=I # Can we remove the installer kernel?
- ipfiremake linux PASS=S
-# 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 linux SMP=1
+ ipfiremake ipp2p SMP=1
+# ipfiremake 3cp4218 SMP=1
+# ipfiremake amedyn SMP=1
+# ipfiremake cxacru SMP=1
+# ipfiremake eagle SMP=1
+# ipfiremake cnx_pci SMP=1
+# 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 fcclassic SMP=1
+# ipfiremake pulsar SMP=1
+# ipfiremake unicorn SMP=1
+# ipfiremake promise-sata-300-tx SMP=1
ipfiremake zaptel PASS=S
ipfiremake linux
+ ipfiremake ipp2p
# ipfiremake 3cp4218
# ipfiremake amedyn
# ipfiremake cxacru
# ipfiremake unicorn
# ipfiremake promise-sata-300-tx
ipfiremake zaptel
-# ipfiremake pcmciautils
ipfiremake expat
ipfiremake gdbm
ipfiremake gmp
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 ibod
ipfiremake initscripts
ipfiremake iptables
+ ipfiremake ipp2p IPT=1
ipfiremake ipac-ng
ipfiremake ipaddr
ipfiremake iptstate
ipfiremake iputils
ipfiremake l7-protocols
-# ipfiremake isapnptools # ERROR :(
+ ipfiremake isapnptools
# ipfiremake isdn4k-utils # What about mISDN???
ipfiremake kudzu
ipfiremake logrotate
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
ipfiremake Text-Tabs+Wrap
ipfiremake Locale-Country
ipfiremake GeoIP
-###
ipfiremake fwhits
ipfiremake noip_updater
ipfiremake ntp
LOGFILE="$BASEDIR/log/_build.installer.log"
export LOGFILE
ipfiremake syslinux
- ipfiremake uClibc
+ 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 sysvinit
+ installmake slang
+ installmake newt
installmake gettext
- installmake e2fsprogs
+ installmake kbd
+ installmake popt
+ installmake sysvinit
installmake misc-progs
+ installmake e2fsprogs
+ installmake reiserfsprogs
installmake sysfsutils
-# installmake hwinfo
- installmake slang
installmake util-linux
- installmake reiserfsprogs
- installmake newt
installmake pciutils
- installmake pcmciautils
- installmake kbd
- installmake popt
installmake kudzu
+# installmake bootsplash
installmake installer
- installmake scsi.img
- installmake driver.img
+ installmake scsi.img # this is to be deleted
+ installmake driver.img # this is to be deleted
installmake initrd
- installmake boot.img
-# ipfiremake as86
-# ipfiremake mbr
+ installmake boot.img # this is to be deleted
+# ipfiremake as86 # this is to be deleted
+# ipfiremake mbr # this is to be deleted
}
buildpackages() {
# packages-list.txt is ready to be displayed for wiki page
beautify message DONE
- # Create ISO for CDROM
+ # Create images for install
ipfiremake cdrom
- rm -f $LFS/install/images/*usb*
- cp $LFS/install/images/{*.iso,*.tgz} $BASEDIR >> $LOGFILE 2>&1
+ ipfiremake pxe
+ cp -f $LFS/install/images/{*.iso,*.tgz} $BASEDIR >> $LOGFILE 2>&1
# ipfirepackages
rm -rf $BASEDIR/build/tmp/*
# Generating total list of files
- echo "`date -u '+%b %e %T'`: Generating files list from logs" | tee -a $LOGFILE
+ echo "Generating files list from logs" | tee -a $LOGFILE
rm -f $BASEDIR/log/FILES
for i in `ls -1tr $BASEDIR/log/[^_]*`; do
if [ "$i" != "$BASEDIR/log/FILES" -a -n $i ]; then
prepareenv
fi
- beautify build_stage "Building base"
+ beautify build_start
+ beautify build_stage_start "Building base"
buildbase
+ beautify build_stage_end
- beautify build_stage "Building IPFire"
+ beautify build_stage_start "Building IPFire"
buildipfire
+ beautify build_stage_end
# Setzen des IPFire Builds
if [ "$FIREBUILD" ]; then
echo "_(OvO)_" > $BASEDIR/build/var/ipfire/firebuild
fi
- beautify build_stage "Building installer"
+ beautify build_stage_start "Building installer"
buildinstaller
+ beautify build_stage_end
- beautify build_stage "Building packages"
+ beautify build_stage_start "Building packages"
buildpackages
+ beautify build_stage_end
+ beautify build_end
;;
shell)
# enter a shell inside LFS chroot
changelog)
echo -n "Loading new Changelog from SVN: "
svn log http://svn.ipfire.eu/svn/ipfire > doc/ChangeLog
- echo "Finished!"
+ beautify message DONE
;;
clean)
+ echo -en "${BOLD}Cleaning build directory...${NORMAL}"
for i in `mount | grep $BASEDIR | sed 's/^.*loop=\(.*\))/\1/'`; do
$LOSETUP -d $i 2>/dev/null
done
if [ -h /tools ]; then
rm -f /tools
fi
- ;;
-newpak)
- # create structure for a new package
- echo -e "Name of the new package: $2"
- if [ ! -f "lfs/$2" ]; then
- echo "`date -u '+%b %e %T'`: Creating directory src/paks/$2"
- mkdir -p src/paks/$2
- cd src/paks/$2
- echo "`date -u '+%b %e %T'`: Creating files"
- cp $BASEDIR/lfs/postfix $BASEDIR/lfs/$2
-
- touch ROOTFILES
- touch {,un}install.sh
- ## install.sh
- echo '#!/bin/bash' > install.sh
- echo '#' >> install.sh
- echo '#################################################################' >> install.sh
- echo '# #' >> install.sh
- echo '# This file belongs to IPFire Firewall - GPLv2 - www.ipfire.org #' >> install.sh
- echo '# #' >> install.sh
- echo '#################################################################' >> install.sh
- echo '#' >> install.sh
- echo '# Extract the files' >> install.sh
- echo 'tar xfz files.tgz -C /' >> install.sh
- echo 'cp -f ROOTFILES /opt/pakfire/installed/ROOTFILES.$2' >> install.sh
- ## uninstall.sh
- echo '#!/bin/bash' > uninstall.sh
- echo '#################################################################' >> uninstall.sh
- echo '# #' >> uninstall.sh
- echo '# This file belongs to IPFire Firewall - GPLv2 - www.ipfire.org #' >> uninstall.sh
- echo '# #' >> uninstall.sh
- echo '#################################################################' >> uninstall.sh
- echo '#' >> uninstall.sh
- echo '# Delete the files' >> uninstall.sh
- echo '## Befehl fehlt noch' >> uninstall.sh
- echo 'rm -f /opt/pakfire/installed/ROOTFILES.$2' >> uninstall.sh
- echo "`date -u '+%b %e %T'`: Adding files to SVN"
- cd - && svn add lfs/$2 && svn add src/paks/$2
-
- echo -n "Do you want to remove the folders? [y/n]"
- read REM
- if [ "$REM" == "y" ]; then
- echo "Removing the folders..."
- svn del src/paks/$2 --force
- else
- echo "Folders are kept."
- fi
- else
- echo "$2 already exists"
- fi
- exit 0
+ beautify message DONE
;;
downloadsrc)
if [ ! -d $BASEDIR/cache ]; then
clear
if [ -f /usr/bin/mcedit ]; then
export EDITOR=/usr/bin/mcedit
- else
- if [ -f /usr/bin/nano ]; then
- export EDITOR=/usr/bin/nano
- fi
+ fi
+ if [ -f /usr/bin/nano ]; then
+ export EDITOR=/usr/bin/nano
fi
echo -ne "Selecting editor $EDITOR..."
beautify message DONE
watch)
watch_screen
;;
+pxe)
+ case "$2" in
+ start)
+ start_tftpd
+ ;;
+ stop)
+ stop_tftpd
+ ;;
+ reload|restart)
+ reload_tftpd
+ ;;
+ esac
+ exit 0
+ ;;
"")
clear
svn info
$0 svn update
;;
"Help")
- echo "Usage: $0 {build|changelog|clean|gettoolchain|newpak|downloadsrc|shell|sync|toolchain}"
+ echo "Usage: $0 {build|changelog|clean|gettoolchain|downloadsrc|shell|sync|toolchain}"
cat doc/make.sh-usage
;;
"LOG: Tail")
esac
done
;;
+config)
+ make_config
+ ;;
*)
- echo "Usage: $0 {build|changelog|clean|gettoolchain|newpak|downloadsrc|shell|sync|toolchain}"
+ echo "Usage: $0 {build|changelog|clean|gettoolchain|downloadsrc|shell|sync|toolchain}"
cat doc/make.sh-usage
;;
esac