]> 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 bb6c94d1750608721914b3609e9f75ea973b075e..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}-7"        # 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
 
@@ -50,15 +48,10 @@ toolchain_build() {
        # We can't skip packages in toolchain stage
        SAVE_SKIP_PACKAGE_LIST=$SKIP_PACKAGE_LIST
        SKIP_PACKAGE_LIST=
-       
-       # Disable icecc in here
-       SAVE_ICECC=$ICECC
-       ICECC=off
-       iceccd_stop
+
+       icecc_disable
 
        toolchain_make stage1
-       # make icecc first so that CCACHE_PREFIX works immediately
-       toolchain_make icecc
        toolchain_make ccache
        toolchain_make binutils         PASS=1
        toolchain_make gcc              PASS=1
@@ -70,15 +63,6 @@ toolchain_build() {
        toolchain_make gcc              PASS=2
        toolchain_make binutils         PASS=2
        toolchain_make test-toolchain   PASS=2
-
-       ICECC=$SAVE_ICECC
-       unset SAVE_ICECC
-
-       ICECC_CC="${TOOLS_DIR}/bin/gcc" \
-       ICECC_CXX="${TOOLS_DIR}/bin/g++" \
-               icecc_build_native ${ICECC_TOOLCHAIN}
-       iceccd_start
-
        toolchain_make ncurses
        toolchain_make attr
        toolchain_make acl
@@ -88,6 +72,9 @@ toolchain_build() {
        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
@@ -105,6 +92,8 @@ toolchain_build() {
        toolchain_make flex
        toolchain_make bc
        toolchain_make xz
+       toolchain_make autoconf
+       toolchain_make automake
        toolchain_make strip
 
        export PATH=$ORG_PATH SKIP_PACKAGE_LIST=$SAVE_SKIP_PACKAGE_LIST
@@ -125,6 +114,10 @@ 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
@@ -136,6 +129,10 @@ 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
@@ -178,7 +175,6 @@ base_build() {
        ipfire_make grep
        ipfire_make groff
        ipfire_make gzip
-       ipfire_make initd-tools
        ipfire_make iputils
        ipfire_make iproute2
        ipfire_make kbd
@@ -195,7 +191,6 @@ base_build() {
        ipfire_make texinfo
        ipfire_make udev
        ipfire_make vim
-       ipfire_make initscripts
 }
 
 ################################################################################
@@ -224,6 +219,8 @@ 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
@@ -263,6 +260,9 @@ ipfire_build() {
        ipfire_make avahi
        ipfire_make libssh2
        ipfire_make libdnet
+       #ipfire_make rstp
+       ipfire_make ebtables
+       ipfire_make openlldp
        
        ### Building some general stuff
        #   STAGE 2
@@ -310,7 +310,7 @@ ipfire_build() {
        
        ### Building vpn stuff
        #
-       ipfire_make strongswan
+       #ipfire_make strongswan
        ipfire_make openvpn
        
        ### Building filesystem stuff