]> git.ipfire.org Git - ipfire-3.x.git/blobdiff - make.sh
Add msgfmt dependency check for toolchain build.
[ipfire-3.x.git] / make.sh
diff --git a/make.sh b/make.sh
index 54a9d470ecc14a73e0dc8c0d3cf6eef71fb91195..99c065805673e9eafdd445b08bb0adc8861453b0 100755 (executable)
--- a/make.sh
+++ b/make.sh
@@ -1,31 +1,29 @@
 #!/bin/bash
-############################################################################
-#                                                                          #
-# This file is part of the IPFire Firewall.                                #
-#                                                                          #
-# IPFire is free software; you can redistribute it and/or modify           #
-# it under the terms of the GNU General Public License as published by     #
-# the Free Software Foundation; either version 2 of the License, or        #
-# (at your option) any later version.                                      #
-#                                                                          #
-# IPFire is distributed in the hope that it will be useful,                #
-# but WITHOUT ANY WARRANTY; without even the implied warranty of           #
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the            #
-# GNU General Public License for more details.                             #
-#                                                                          #
-# You should have received a copy of the GNU General Public License        #
-# along with IPFire; if not, write to the Free Software                    #
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA #
-#                                                                          #
-# Copyright (C) 2008 IPFire-Team <info@ipfire.org>.                        #
-#                                                                          #
-############################################################################
+###############################################################################
+#                                                                             #
+# IPFire.org - A linux based firewall                                         #
+# Copyright (C) 2007, 2008, 2009 Michael Tremer & Christian Schmidt           #
+#                                                                             #
+# This program is free software: you can redistribute it and/or modify        #
+# it under the terms of the GNU General Public License as published by        #
+# the Free Software Foundation, either version 3 of the License, or           #
+# (at your option) any later version.                                         #
+#                                                                             #
+# This program is distributed in the hope that it will be useful,             #
+# but WITHOUT ANY WARRANTY; without even the implied warranty of              #
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the               #
+# GNU General Public License for more details.                                #
+#                                                                             #
+# You should have received a copy of the GNU General Public License           #
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.       #
+#                                                                             #
+###############################################################################
 #
 
 NAME="IPFire"                  # Software name
 SNAME="ipfire"                 # Short name
 VERSION="3.0-prealpha2"                # Version number
-TOOLCHAINVERSION="${VERSION}-4"        # Toolchain
+TOOLCHAINVERSION="${VERSION}-11"       # Toolchain
 SLOGAN="Gluttony"              # Software slogan
 
 # Include funtions
@@ -38,7 +36,7 @@ SLOGAN="Gluttony"             # Software slogan
 toolchain_build() {
 
        ORG_PATH=$PATH
-       export PATH=${TOOLS_DIR}/usr/bin:${TOOLS_DIR}/bin:$PATH
+       export PATH=${TOOLS_DIR}/usr/bin:${TOOLS_DIR}/usr/sbin:${TOOLS_DIR}/bin:${TOOLS_DIR}/sbin:$PATH
        STAGE_ORDER=01
        STAGE=toolchain
 
@@ -51,9 +49,9 @@ toolchain_build() {
        SAVE_SKIP_PACKAGE_LIST=$SKIP_PACKAGE_LIST
        SKIP_PACKAGE_LIST=
 
+       icecc_disable
+
        toolchain_make stage1
-       # make distcc first so that CCACHE_PREFIX works immediately
-       toolchain_make distcc
        toolchain_make ccache
        toolchain_make binutils         PASS=1
        toolchain_make gcc              PASS=1
@@ -66,11 +64,18 @@ toolchain_build() {
        toolchain_make binutils         PASS=2
        toolchain_make test-toolchain   PASS=2
        toolchain_make ncurses
+       toolchain_make attr
+       toolchain_make acl
        toolchain_make bash
        toolchain_make bzip2
        toolchain_make coreutils
+       toolchain_make cpio
        toolchain_make diffutils
        toolchain_make e2fsprogs
+       toolchain_make icecc
+       icecc_enable
+       icecc_use toolchain             # Use the fresh gcc
+       toolchain_make file
        toolchain_make findutils
        toolchain_make gawk
        toolchain_make gettext
@@ -79,14 +84,18 @@ toolchain_build() {
        toolchain_make m4
        toolchain_make make
        toolchain_make patch
+       toolchain_make pax-utils
        toolchain_make perl
        toolchain_make sed
        toolchain_make tar
        toolchain_make texinfo
        toolchain_make flex
        toolchain_make bc
-       toolchain_make util-linux-ng
+       toolchain_make xz
+       toolchain_make autoconf
+       toolchain_make automake
        toolchain_make strip
+
        export PATH=$ORG_PATH SKIP_PACKAGE_LIST=$SAVE_SKIP_PACKAGE_LIST
        unset SAVE_SKIP_PACKAGE_LIST
 }
@@ -105,8 +114,13 @@ base_build() {
 
        build_spy stage ${STAGE}
 
+       # Start distributed compiling with toolchain
+       iceccd_start
+       icecc_use toolchain
+
        ipfire_make stage2
        ipfire_make scripts
+       ipfire_make system-release
        ipfire_make linux-headers
        ipfire_make man-pages
        ipfire_make glibc
@@ -115,35 +129,45 @@ base_build() {
        ipfire_make zlib
        ipfire_make binutils
        ipfire_make gcc
+
+       # Change to self-built gcc
+       icecc_use base
+
+       ipfire_make make
+       ipfire_make libtool
+       ipfire_make gettext
+       ipfire_make pkg-config
        ipfire_make berkeley
        ipfire_make sed
-       ipfire_make e2fsprogs
-       ipfire_make coreutils
        ipfire_make iana-etc
        ipfire_make m4
        ipfire_make bison
+       ipfire_make flex
        ipfire_make ncurses
+       ipfire_make shadow
+       ipfire_make cracklib
+       ipfire_make pam
+       ipfire_make attr
+       ipfire_make acl
+       ipfire_make libcap2
+       ipfire_make util-linux-ng
+       ipfire_make e2fsprogs
+       ipfire_make coreutils
        ipfire_make procps
-       ipfire_make libtool
        ipfire_make perl
        ipfire_make readline
-       ipfire_make gettext
-       ipfire_make make
        ipfire_make libidn
        ipfire_make bzip2
        ipfire_make pcre
-       ipfire_make pkg-config
-       ipfire_make attr
-       ipfire_make libcap2
        ipfire_make paxctl
        ipfire_make autoconf
        ipfire_make automake
        ipfire_make bash
+       ipfire_make cpio
        ipfire_make diffutils
        ipfire_make eventlog
        ipfire_make file
        ipfire_make findutils
-       ipfire_make flex
        ipfire_make gmp
        ipfire_make grub
        ipfire_make gawk
@@ -151,8 +175,6 @@ base_build() {
        ipfire_make grep
        ipfire_make groff
        ipfire_make gzip
-       ipfire_make initd-tools
-       ipfire_make initscripts
        ipfire_make iputils
        ipfire_make iproute2
        ipfire_make kbd
@@ -161,14 +183,13 @@ base_build() {
        ipfire_make module-init-tools
        ipfire_make mpfr
        ipfire_make patch
+       ipfire_make pax-utils
        ipfire_make psmisc
-       ipfire_make shadow
        ipfire_make syslog-ng
        ipfire_make sysvinit
        ipfire_make tar
        ipfire_make texinfo
        ipfire_make udev
-       ipfire_make util-linux-ng
        ipfire_make vim
 }
 
@@ -198,10 +219,13 @@ ipfire_build() {
        ipfire_make expat
        ipfire_make dbus
        ipfire_make dbus-glib
+       ipfire_make upstart
+       ipfire_make initscripts
        ipfire_make openssl
        ipfire_make perl-xml-parser
        ipfire_make intltool
        ipfire_make python
+       ipfire_make python-cracklib
        ipfire_make python-dbus
        ipfire_make python-urlgrabber
        ipfire_make python-IPy
@@ -211,7 +235,6 @@ ipfire_build() {
        ipfire_make libusb
        ipfire_make libusb-compat       # Can be removed if usbutils supports libusb-1.0
        ipfire_make bc
-       ipfire_make mingetty
        ipfire_make boost
        ipfire_make lua
        
@@ -235,6 +258,11 @@ ipfire_build() {
        ipfire_make bind
        ipfire_make whois
        ipfire_make avahi
+       ipfire_make libssh2
+       ipfire_make libdnet
+       #ipfire_make rstp
+       ipfire_make ebtables
+       ipfire_make openlldp
        
        ### Building some general stuff
        #   STAGE 2
@@ -243,10 +271,6 @@ ipfire_build() {
        ipfire_make libgpg-error
        ipfire_make libgcrypt
        ipfire_make libksba
-       ipfire_make cracklib
-       ipfire_make pam                                 PASS=1
-       ipfire_make shadow-pam
-       ipfire_make pam                                 PASS=2
        ipfire_make slang
        ipfire_make newt
        ipfire_make cyrus-sasl
@@ -255,6 +279,7 @@ ipfire_build() {
        ipfire_make nss_ldap
        ipfire_make ldapvi
        ipfire_make sqlite
+       ipfire_make python-sqlite2
        ipfire_make curl
        ipfire_make pinentry
        ipfire_make gnupg2
@@ -274,13 +299,18 @@ ipfire_build() {
        ipfire_make etherwake
        ipfire_make beep
        ipfire_make libuser
+       ipfire_make passwd
        ipfire_make directfb
        ipfire_make pdns
        ipfire_make pdns-recursor
+       ipfire_make libevent
+       ipfire_make libnfsidmap
+       ipfire_make libgssglue
+       ipfire_make librpcsecgss
        
        ### Building vpn stuff
        #
-       ipfire_make strongswan
+       #ipfire_make strongswan
        ipfire_make openvpn
        
        ### Building filesystem stuff
@@ -296,6 +326,9 @@ ipfire_build() {
        ipfire_make lvm2
        ipfire_make mdadm
        ipfire_make dmraid
+       ipfire_make cryptsetup-luks
+       ipfire_make python-cryptsetup
+       ipfire_make fuse
 
        ### Building hardware utils
        #
@@ -323,8 +356,7 @@ ipfire_build() {
        ipfire_make webinterface
        ipfire_make collectd
        ipfire_make logrotate
-       #ipfire_make logwatch   
-       ipfire_make cpio
+       #ipfire_make logwatch
        ipfire_make dvdrtools
        ipfire_make python-parted
        ipfire_make python-pyblock
@@ -337,6 +369,7 @@ ipfire_build() {
        ipfire_make pyfire
        ipfire_make network
        ipfire_make firewall
+       ipfire_make pakfire
 }
 
 ################################################################################
@@ -355,12 +388,12 @@ misc_build() {
 
        ipfire_make stage4
 
-       #ipfire_make miniupnpd
+       ipfire_make miniupnpd
 
        ### Console tools
        #
        ipfire_make mc
-       #ipfire_make traceroute
+       ipfire_make traceroute
        ipfire_make nmap
        #ipfire_make rsync
        ipfire_make tcpdump
@@ -381,10 +414,9 @@ misc_build() {
        ipfire_make mkinitramfs
        ipfire_make splashy
 
-       #ipfire_make vsftpd
+       ipfire_make vsftpd
 
        ## NTFS
-       #ipfire_make fuse
        #ipfire_make ntfs-3g
        #
        ## Net tools
@@ -406,11 +438,11 @@ misc_build() {
        #ipfire_make mpfire
        #ipfire_make guardian
        #ipfire_make ipfireseeder
-       #ipfire_make nfs
+       ipfire_make portmap
+       ipfire_make nfs-utils
 
        ### Debugging
        #
-       ipfire_make pax-utils
        ipfire_make paxtest
        ipfire_make gdb
        ipfire_make strace
@@ -449,9 +481,6 @@ packages_build() {
 
        build_spy stage ${STAGE}
 
-       toolchain_make strip
-       ipfire_make quality-agent
-
        # Generate ChangeLog
        git_log
 
@@ -460,15 +489,11 @@ packages_build() {
        pkg_list_packages > $BASEDIR/doc/packages-list.txt
        beautify message DONE
 
-       # Build packages
-       #local package
-       #for package in $BASEDIR/lfs/*; do
-       #       package_make $(basename $package)
-       #done
-
        if [ ${EMB} -eq 0 ]; then
-               ipfire_make initramfs
-               ipfire_make images
+               ipfire_make images-core
+               ipfire_make images-info
+               ipfire_make images-initramfs
+               ipfire_make images-overlays
                ipfire_make pxe
                ipfire_make cdrom