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-prealpha" # Version number
28 TOOLCHAINVERSION
="${VERSION}-5" # Toolchain
29 SLOGAN
="www.ipfire.org" # 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"
49 # make distcc first so that CCACHE_PREFIX works immediately
50 [ -z "$DISTCC_HOSTS" ] || toolchain_make distcc
55 toolchain_make binutils PASS
=1
56 toolchain_make gcc PASS
=1
58 toolchain_make adjust-toolchain
59 toolchain_make binutils PASS
=2
60 toolchain_make gcc PASS
=2
61 #toolchain_make tcl # Maybe this can be dropped
62 #toolchain_make expect # Maybe this can be dropped
63 #toolchain_make dejagnu # Maybe this can be dropped
64 toolchain_make ncurses
67 toolchain_make coreutils
68 toolchain_make diffutils
69 toolchain_make e2fsprogs
70 toolchain_make findutils
72 toolchain_make
gettext
81 toolchain_make texinfo
85 toolchain_make util-linux-ng
90 ################################################################################
91 # This builds the entire stage "base" #
92 ################################################################################
95 PATH
=${TOOLS_DIR}/usr
/bin
:/bin
:/usr
/bin
:/sbin
:/usr
/sbin
:$TOOLS_DIR/bin
99 LOGFILE
="$BASEDIR/log_${MACHINE}/_build.${STAGE_ORDER}-base.log"
106 ipfire_make man-pages
108 ipfire_make adjust-toolchain
113 ipfire_make e2fsprogs
114 ipfire_make coreutils
132 ipfire_make diffutils
134 ipfire_make findutils
141 ipfire_make inetutils
146 ipfire_make module-init-tools
154 ipfire_make udev
## NEED TO INSTALL CONFIG
155 ipfire_make util-linux-ng
159 ################################################################################
160 # This builds the entire stage "ipfire" #
161 ################################################################################
163 PATH
=${TOOLS_DIR}/usr
/bin
:/bin
:/usr
/bin
:/sbin
:/usr
/sbin
:/usr
/${MACHINE_REAL}-linux/bin
167 LOGFILE
="$BASEDIR/log_${MACHINE}/_build.${STAGE_ORDER}-ipfire.log"
170 ### Building the configuration dirs and files
177 ### Building some general stuff
179 ipfire_make pkg-config
184 ipfire_make perl
### We are building the modules here.
186 ipfire_make python-modules
190 #ipfire_make libidn ### Do we need this?
196 ### Building some network stuff
199 ipfire_make linux-atm
204 ipfire_make libnfnetlink
205 ipfire_make libnetfilter_queue
206 ipfire_make libnetfilter_conntrack
207 ipfire_make libnetfilter_log
209 ipfire_make l7-protocols
210 ipfire_make bridge-utils
215 ### Building some general stuff
217 ipfire_make pam PASS
=1
219 ipfire_make pam PASS
=2
222 ipfire_make cyrus-sasl
235 ipfire_make br2684ctl
236 ipfire_make etherwake
240 ### Building vpn stuff
242 ipfire_make strongswan
244 ### Building filesystem stuff
246 ipfire_make reiserfsprogs
248 ipfire_make reiser4progs
250 ipfire_make sysfsutils
252 ### Building hardware utils
258 ipfire_make smartmontools
259 ipfire_make lm-sensors
262 ### Building some important tools
270 ipfire_make ntp
### Needs config.
272 ipfire_make ez-ipupdate
276 #ipfire_make logrotate
277 #ipfire_make logwatch
281 ipfire_make memtest86
+
283 #ipfire_make initscripts
284 ipfire_make chkconfig
288 ### -------------------------------------------------------------------------
289 ### Tools that maybe not needed
297 #ipfire_make wireless
301 ################################################################################
302 # This builds the entire stage "misc" #
303 ################################################################################
306 PATH
=${TOOLS_DIR}/usr
/bin
:/bin
:/usr
/bin
:/sbin
:/usr
/sbin
:/usr
/${MACHINE_REAL}-linux/bin
310 LOGFILE
="$BASEDIR/log_${MACHINE}/_build.${STAGE_ORDER}-misc.log"
318 #ipfire_make traceroute
329 #ipfire_make squidguard ## CAN THIS BE BANISHED BY ANYTHING BETTER?
330 #ipfire_make calamaris ## CAN THIS BE BANISHED BY ANYTHING BETTER?
333 ### Programs that are still for discussion
334 # package or in the standard system
346 #ipfire_make linux-igd
348 ### These will become addons as usual but will be integrated later
351 #ipfire_make oinkmaster
352 #ipfire_make centerim
353 #ipfire_make tripwire
356 #ipfire_make ghostscript
357 #ipfire_make foomatic
361 #ipfire_make fetchmail
362 #ipfire_make cyrus-imapd
367 #ipfire_make guardian
368 #ipfire_make libid3tag
371 #ipfire_make libvorbis
374 #ipfire_make libshout
376 #ipfire_make icegenerator
380 #ipfire_make libmpeg2
381 #ipfire_make videolan
383 #ipfire_make asterisk
384 #ipfire_make libsigc++
385 #ipfire_make applejuice
386 #ipfire_make libtorrent
387 #ipfire_make rtorrent
388 #ipfire_make ipfireseeder
391 # ---------------------------------------------------------------------------
400 ################################################################################
401 # This builds the entire stage "installer" #
402 ################################################################################
405 PATH
=${TOOLS_DIR}/usr/bin:${UCLIBC_DIR}/bin:${UCLIBC_DIR}/usr
/bin
406 PATH
=$PATH:${UCLIBC_CC_CORE_STATIC_DIR}/bin
:/bin
:/usr
/bin
407 PATH
=$PATH:/sbin
:/usr
/sbin
:/usr
/${MACHINE_REAL}-linux/bin
411 LOGFILE
="$BASEDIR/log_${MACHINE}/_build.${STAGE_ORDER}-installer.log"
420 ipfire_make uClibc PASS
=1
421 ipfire_make gcc PASS
=1
422 ipfire_make uClibc PASS
=2
423 ipfire_make gcc PASS
=2
431 #ipfire_make readline
432 ipfire_make e2fsprogs
433 ipfire_make util-linux-ng
439 ipfire_make python-modules
452 ################################################################################
453 # This builds the entire stage "packages" #
454 ################################################################################
457 PATH
=${TOOLS_DIR}/usr
/bin
:/bin
:/usr
/bin
:/sbin
:/usr
/sbin
:/usr
/${MACHINE_REAL}-linux/bin
461 LOGFILE
="$BASEDIR/log_${MACHINE}/_build.${STAGE_ORDER}-packages.log"
465 ipfire_make initramfs
470 # Generating list of packages used
474 # Check if there is a loop device for building in virtual environments
475 #if [ -e /dev/loop/0 ] || [ -e /dev/loop0 ]; then
476 # ipfire_make usb-stick
478 mv $LFS/$IMAGES_DIR/{*.iso
,*.tgz
,*.img.gz
} $BASEDIR >> $LOGFILE 2>&1
480 #ipfire_make core-updates
483 for i
in $
(ls -1 $BASEDIR/src
/rootfiles
/extras
); do
484 if [ -e $BASEDIR/lfs
/$i ]; then
486 ### Do nothing at the moment, we are gonna use a new packager
489 beautify message SKIP
500 # See what we're supposed to do
501 .
$BASEDIR/tools
/make-interactive