2 ############################################################################
4 # This file is part of the IPFire Firewall. #
6 # IPFire is free software; you can redistribute it and/or modify #
7 # it under the terms of the GNU General Public License as published by #
8 # the Free Software Foundation; either version 2 of the License, or #
9 # (at your option) any later version. #
11 # IPFire is distributed in the hope that it will be useful, #
12 # but WITHOUT ANY WARRANTY; without even the implied warranty of #
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
14 # GNU General Public License for more details. #
16 # You should have received a copy of the GNU General Public License #
17 # along with IPFire; if not, write to the Free Software #
18 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #
20 # Copyright (C) 2008 IPFire-Team <info@ipfire.org>. #
22 ############################################################################
25 NAME
="IPFire" # Software name
26 SNAME
="ipfire" # Short name
27 VERSION
="3.0-prealpha1" # Version number
28 TOOLCHAINVERSION
="${VERSION}-10" # Toolchain
29 SLOGAN
="Lechery" # Software slogan
35 ################################################################################
36 # This builds the entire stage "toolchain" #
37 ################################################################################
41 export PATH
=${TOOLS_DIR}/usr
/bin
:${TOOLS_DIR}/bin
:$PATH
45 LOGFILE
="$BASEDIR/log_${MACHINE}/_build.${STAGE_ORDER}-toolchain.log"
48 build_spy stage
${STAGE}
51 # make distcc first so that CCACHE_PREFIX works immediately
52 [ -z "$DISTCC_HOSTS" ] || toolchain_make distcc
57 toolchain_make binutils PASS
=1
58 toolchain_make gcc PASS
=1
60 toolchain_make adjust-toolchain
61 toolchain_make binutils PASS
=2
62 toolchain_make gcc PASS
=2
63 toolchain_make ncurses
66 toolchain_make coreutils
67 toolchain_make diffutils
68 toolchain_make e2fsprogs
69 toolchain_make findutils
71 toolchain_make
gettext
80 toolchain_make texinfo
83 toolchain_make util-linux-ng
88 ################################################################################
89 # This builds the entire stage "base" #
90 ################################################################################
93 PATH
=${TOOLS_DIR}/usr
/bin
:/bin
:/usr
/bin
:/sbin
:/usr
/sbin
:$TOOLS_DIR/bin
97 LOGFILE
="$BASEDIR/log_${MACHINE}/_build.${STAGE_ORDER}-base.log"
100 build_spy stage
${STAGE}
104 ipfire_make initd-tools
105 ipfire_make initscripts
109 ipfire_make man-pages
111 ipfire_make adjust-toolchain
116 ipfire_make e2fsprogs
117 ipfire_make coreutils
137 ipfire_make diffutils
139 ipfire_make findutils
151 ipfire_make module-init-tools
160 ipfire_make util-linux-ng
164 ################################################################################
165 # This builds the entire stage "ipfire" #
166 ################################################################################
168 PATH
=${TOOLS_DIR}/usr
/bin
:/bin
:/usr
/bin
:/sbin
:/usr
/sbin
:/usr
/${MACHINE_REAL}-linux/bin
172 LOGFILE
="$BASEDIR/log_${MACHINE}/_build.${STAGE_ORDER}-ipfire.log"
175 build_spy stage
${STAGE}
177 ### Building the configuration dirs and files
185 ### Building some general stuff
187 ipfire_make pkg-config
191 ipfire_make dbus-glib
193 ipfire_make perl
### We are building the modules here.
195 ipfire_make python-dbus
196 ipfire_make python-urlgrabber
197 ipfire_make python-iconv
206 ### Building some network stuff
209 ipfire_make linux-atm
214 ipfire_make libnfnetlink
215 ipfire_make libnetfilter_queue
216 ipfire_make libnetfilter_conntrack
217 ipfire_make libnetfilter_log
219 ipfire_make l7-protocols
220 ipfire_make bridge-utils
225 ### Building some general stuff
228 ipfire_make pam PASS
=1
230 ipfire_make pam PASS
=2
233 ipfire_make cyrus-sasl
234 #ipfire_make openldap
235 #ipfire_make pam_ldap
236 #ipfire_make nss_ldap
246 ipfire_make fontconfig
252 ipfire_make br2684ctl
253 ipfire_make etherwake
258 ### Building vpn stuff
260 ipfire_make strongswan
263 ### Building filesystem stuff
265 ipfire_make reiserfsprogs
267 ipfire_make reiser4progs
269 ipfire_make sysfsutils
272 ### Building hardware utils
277 ipfire_make smartmontools
278 ipfire_make lm-sensors
282 ### Building some important tools
289 ipfire_make ntp
### Needs config.
291 ipfire_make ez-ipupdate
294 #ipfire_make collectd
295 ipfire_make logrotate
296 #ipfire_make logwatch
300 ipfire_make python-parted
301 ipfire_make memtest86
+
306 ### -------------------------------------------------------------------------
307 ### Tools that maybe not needed
314 #ipfire_make wireless
318 ################################################################################
319 # This builds the entire stage "misc" #
320 ################################################################################
323 PATH
=${TOOLS_DIR}/usr
/bin
:/bin
:/usr
/bin
:/sbin
:/usr
/sbin
:/usr
/${MACHINE_REAL}-linux/bin
327 LOGFILE
="$BASEDIR/log_${MACHINE}/_build.${STAGE_ORDER}-misc.log"
330 build_spy stage
${STAGE}
337 #ipfire_make traceroute
350 ipfire_make bootutils
351 ipfire_make mkinitramfs
354 #ipfire_make squidguard ## CAN THIS BE BANISHED BY ANYTHING BETTER?
355 #ipfire_make calamaris ## CAN THIS BE BANISHED BY ANYTHING BETTER?
367 #ipfire_make linux-igd
369 ### These will become addons as usual but will be integrated later
372 #ipfire_make oinkmaster
373 #ipfire_make centerim
374 #ipfire_make tripwire
377 #ipfire_make ghostscript
378 #ipfire_make foomatic
382 #ipfire_make fetchmail
383 #ipfire_make cyrus-imapd
387 #ipfire_make guardian
388 #ipfire_make libid3tag
391 #ipfire_make libvorbis
394 #ipfire_make libshout
396 #ipfire_make icegenerator
400 #ipfire_make libmpeg2
401 #ipfire_make videolan
403 #ipfire_make asterisk
404 #ipfire_make libsigc++
405 #ipfire_make applejuice
406 #ipfire_make libtorrent
407 #ipfire_make rtorrent
408 #ipfire_make ipfireseeder
411 # ---------------------------------------------------------------------------
420 ################################################################################
421 # This builds the entire stage "installer" #
422 ################################################################################
425 PATH
=${TOOLS_DIR}/usr
/bin
:/bin
:/usr
/bin
:/sbin
:/usr
/sbin
:/usr
/${MACHINE_REAL}-linux/bin
429 LOGFILE
="$BASEDIR/log_${MACHINE}/_build.${STAGE_ORDER}-installer.log"
432 build_spy stage
${STAGE}
438 ################################################################################
439 # This builds the entire stage "packages" #
440 ################################################################################
443 PATH
=${TOOLS_DIR}/usr
/bin
:/bin
:/usr
/bin
:/sbin
:/usr
/sbin
:/usr
/${MACHINE_REAL}-linux/bin
447 LOGFILE
="$BASEDIR/log_${MACHINE}/_build.${STAGE_ORDER}-packages.log"
450 build_spy stage
${STAGE}
457 if [ ${EMB} -eq 0 ]; then
458 ipfire_make initramfs
464 : #ipfire_make usb-key
466 echo -n "Can't build usb-key images on this machine"
467 beautify message WARN
469 mv $LFS/$IMAGES_DIR/{*.iso
,*.
tar.gz
,*.img.gz
} $BASEDIR >>$LOGFILE 2>&1
472 # We put here the code that is done when
473 # we do an embedded build
479 for i
in $
(ls -1 $BASEDIR/src
/rootfiles
/extras
); do
480 package
=$
(cut
-d.
-f2 <<< $i)
481 if [ -e $BASEDIR/lfs
/$package ]; then
483 beautify message SKIP
486 beautify message SKIP
497 # See what we're supposed to do
498 .
$BASEDIR/tools
/make-interactive