X-Git-Url: http://git.ipfire.org/?p=ipfire-2.x.git;a=blobdiff_plain;f=make.sh;h=dba36b460ffe07fb6c86eb84caa48626297722cc;hp=1308ed0c552661805d4f3bd6bfb9c8c96ea28c71;hb=d8799d92805d01a700afe3dad14c6dde439f42d7;hpb=f005ef1d5f379704960e449d90ac2692b27d568f diff --git a/make.sh b/make.sh index 1308ed0c55..dba36b460f 100755 --- a/make.sh +++ b/make.sh @@ -17,7 +17,7 @@ # along with IPFire; if not, write to the Free Software # # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # # # -# Copyright (C) 2007-2011 IPFire-Team . # +# Copyright (C) 2007-2012 IPFire Team . # # # ############################################################################ # @@ -25,8 +25,8 @@ NAME="IPFire" # Software name SNAME="ipfire" # Short name VERSION="2.11" # Version number -CORE="53" # Core Level (Filename) -PAKFIRE_CORE="52" # Core Level (PAKFIRE) +CORE="56" # Core Level (Filename) +PAKFIRE_CORE="55" # Core Level (PAKFIRE) GIT_BRANCH=`git status | head -n1 | cut -d" " -f4` # Git Branch SLOGAN="www.ipfire.org" # Software slogan CONFIG_ROOT=/var/ipfire # Configuration rootdir @@ -37,7 +37,7 @@ KVER=`grep --max-count=1 VER lfs/linux | awk '{ print $3 }'` MACHINE=`uname -m` GIT_TAG=$(git tag | tail -1) # Git Tag GIT_LASTCOMMIT=$(git log | head -n1 | cut -d" " -f2 |head -c8) # Last commit -TOOLCHAINVER=1 +TOOLCHAINVER=3 BUILDMACHINE=$MACHINE if [ "$MACHINE" = "x86_64" ]; then @@ -71,14 +71,6 @@ mkdir $BASEDIR/log/ 2>/dev/null if [ -f .config ]; then . .config -else - echo -e "${BOLD}No configuration found!${NORMAL}" - echo -ne "Do you want to create one (y/N)?" - read CREATE_CONFIG - echo "" - if [ "$CREATE_CONFIG" == "y" ]; then - make_config - fi fi if [ -z $EDITOR ]; then @@ -237,9 +229,28 @@ prepareenv() { } buildtoolchain() { - if [ "$(uname -m)" = "x86_64" ]; then - exiterror "Cannot build toolchain on x86_64. Please use the download." - fi + local error=false + case "${MACHINE}:$(uname -m)" in + # x86 + i586:i586|i586:i686) + # These are working. + ;; + i586:*) + error=true + ;; + + # ARM + armv5tel:armv5tel|armv5tel:armv5tejl|armv5tel:armv7l) + # These are working. + ;; + armv5tel:*) + error=true + ;; + esac + + ${error} && \ + exiterror "Cannot build ${MACHINE} toolchain on $(uname -m). Please use the download if any." + if [ "$(uname -r | grep ipfire)" ]; then exiterror "Cannot build toolchain on ipfire. Please use the download." fi @@ -249,11 +260,11 @@ buildtoolchain() { NATIVEGCC=`gcc --version | grep GCC | awk {'print $3'}` export NATIVEGCC GCCmajor=${NATIVEGCC:0:1} GCCminor=${NATIVEGCC:2:1} GCCrelease=${NATIVEGCC:4:1} ORG_PATH=$PATH - export PATH=$BASEDIR/build/usr/local/bin:$BASEDIR/build/tools/bin:$PATH lfsmake1 ccache PASS=1 lfsmake1 make PASS=1 lfsmake1 binutils PASS=1 lfsmake1 gcc PASS=1 + export PATH=$BASEDIR/build/usr/local/bin:$BASEDIR/build/tools/bin:$PATH if [ "${MACHINE_TYPE}" = "arm" ]; then lfsmake1 linux TOOLS=1 HEADERS=1 else @@ -261,6 +272,7 @@ buildtoolchain() { fi lfsmake1 glibc lfsmake1 cleanup-toolchain PASS=1 + lfsmake1 fake-environ lfsmake1 tcl lfsmake1 expect lfsmake1 dejagnu @@ -372,63 +384,91 @@ buildipfire() { ipfiremake xz ipfiremake linux-firmware ipfiremake zd1211-firmware + ipfiremake fw_ath9k_htc ipfiremake u-boot # The xen and PAE kernels are only available for x86 if [ "${MACHINE_TYPE}" != "arm" ]; then - ipfiremake linux XEN=1 - ipfiremake kqemu XEN=1 - ipfiremake v4l-dvb XEN=1 - ipfiremake madwifi XEN=1 - ipfiremake mISDN XEN=1 - ipfiremake dahdi XEN=1 KMOD=1 - ipfiremake cryptodev XEN=1 - ipfiremake compat-wireless XEN=1 - ipfiremake r8169 XEN=1 - ipfiremake r8168 XEN=1 - ipfiremake r8101 XEN=1 - ipfiremake e1000 XEN=1 - ipfiremake e1000e XEN=1 - ipfiremake igb XEN=1 - ipfiremake linux PAE=1 - ipfiremake kqemu PAE=1 - ipfiremake kvm-kmod PAE=1 - ipfiremake v4l-dvb PAE=1 - ipfiremake madwifi PAE=1 - ipfiremake alsa PAE=1 KMOD=1 - ipfiremake mISDN PAE=1 - ipfiremake dahdi PAE=1 KMOD=1 - ipfiremake cryptodev PAE=1 - ipfiremake compat-wireless PAE=1 -# ipfiremake r8169 PAE=1 -# ipfiremake r8168 PAE=1 -# ipfiremake r8101 PAE=1 - ipfiremake e1000 PAE=1 - ipfiremake e1000e PAE=1 - ipfiremake igb PAE=1 - fi - - # Default kernel build - ipfiremake linux - ipfiremake v4l-dvb - ipfiremake kqemu - ipfiremake kvm-kmod - ipfiremake madwifi - if [ "${MACHINE_TYPE}" != "arm" ]; then - #todo enable alsa driver in kernel config - ipfiremake alsa KMOD=1 + ipfiremake linux KCFG="-xen" + ipfiremake kqemu KCFG="-xen" + ipfiremake v4l-dvb KCFG="-xen" + ipfiremake madwifi KCFG="-xen" + ipfiremake mISDN KCFG="-xen" + ipfiremake dahdi KCFG="-xen" KMOD=1 + ipfiremake cryptodev KCFG="-xen" + ipfiremake compat-wireless KCFG="-xen" + ipfiremake r8169 KCFG="-xen" + ipfiremake r8168 KCFG="-xen" + ipfiremake r8101 KCFG="-xen" + ipfiremake e1000 KCFG="-xen" + ipfiremake e1000e KCFG="-xen" + ipfiremake igb KCFG="-xen" + ipfiremake linux KCFG="-pae" + ipfiremake kqemu KCFG="-pae" + ipfiremake kvm-kmod KCFG="-pae" + ipfiremake v4l-dvb KCFG="-pae" + ipfiremake madwifi KCFG="-pae" + ipfiremake alsa KCFG="-pae" KMOD=1 + ipfiremake mISDN KCFG="-pae" + ipfiremake dahdi KCFG="-pae" KMOD=1 + ipfiremake cryptodev KCFG="-pae" + ipfiremake compat-wireless KCFG="-pae" +# ipfiremake r8169 KCFG="-pae" +# ipfiremake r8168 KCFG="-pae" +# ipfiremake r8101 KCFG="-pae" + ipfiremake e1000 KCFG="-pae" + ipfiremake e1000e KCFG="-pae" + ipfiremake igb KCFG="-pae" + ipfiremake linux KCFG="" + ipfiremake v4l-dvb KCFG="" + ipfiremake kqemu KCFG="" + ipfiremake kvm-kmod KCFG="" + ipfiremake madwifi KCFG="" + ipfiremake alsa KCFG="" KMOD=1 + ipfiremake mISDN KCFG="" + ipfiremake dahdi KCFG="" KMOD=1 + ipfiremake cryptodev KCFG="" + ipfiremake compat-wireless KCFG="" +# ipfiremake r8169 KCFG="" +# ipfiremake r8168 KCFG="" +# ipfiremake r8101 KCFG="" + ipfiremake e1000 KCFG="" + ipfiremake e1000e KCFG="" + ipfiremake igb KCFG="" + else + # arm-versatile kernel build + ipfiremake linux KCFG="-versatile" + ipfiremake v4l-dvb KCFG="-versatile" + ipfiremake kqemu KCFG="-versatile" + ipfiremake kvm-kmod KCFG="-versatile" + ipfiremake madwifi KCFG="-versatile" + ipfiremake mISDN KCFG="-versatile" + ipfiremake dahdi KCFG="-versatile" KMOD=1 + ipfiremake cryptodev KCFG="-versatile" + ipfiremake compat-wireless KCFG="-versatile" +# ipfiremake r8169 KCFG="-versatile" +# ipfiremake r8168 KCFG="-versatile" +# ipfiremake r8101 KCFG="-versatile" + ipfiremake e1000 KCFG="-versatile" + ipfiremake e1000e KCFG="-versatile" + ipfiremake igb KCFG="-versatile" + # arm-kirkwood kernel build + ipfiremake linux KCFG="-kirkwood" + ipfiremake v4l-dvb KCFG="-kirkwood" + ipfiremake kqemu KCFG="-kirkwood" + ipfiremake kvm-kmod KCFG="-kirkwood" + ipfiremake madwifi KCFG="-kirkwood" + ipfiremake mISDN KCFG="-kirkwood" + ipfiremake dahdi KCFG="-kirkwood" KMOD=1 + ipfiremake cryptodev KCFG="-kirkwood" + ipfiremake compat-wireless KCFG="-kirkwood" +# ipfiremake r8169 KCFG="-kirkwood" +# ipfiremake r8168 KCFG="-kirkwood" +# ipfiremake r8101 KCFG="-kirkwood" + ipfiremake e1000 KCFG="-kirkwood" + ipfiremake e1000e KCFG="-kirkwood" + ipfiremake igb KCFG="-kirkwood" fi - #undefined declaration in echo canceler try to fix later - ipfiremake mISDN - ipfiremake dahdi KMOD=1 - ipfiremake cryptodev - ipfiremake compat-wireless -# ipfiremake r8169 -# ipfiremake r8168 -# ipfiremake r8101 - ipfiremake e1000 - ipfiremake e1000e - ipfiremake igb ipfiremake pkg-config ipfiremake linux-atm ipfiremake cpio @@ -531,6 +571,7 @@ buildipfire() { ipfiremake Text-Tabs+Wrap ipfiremake Locale-Country ipfiremake XML-Parser + ipfiremake Crypt-PasswdMD5 ipfiremake python-setuptools ipfiremake python-clientform ipfiremake python-mechanize @@ -623,7 +664,6 @@ buildipfire() { ipfiremake lm_sensors ipfiremake liboping ipfiremake collectd - ipfiremake lcd4linux ipfiremake teamspeak ipfiremake elinks ipfiremake igmpproxy @@ -722,6 +762,8 @@ buildipfire() { ipfiremake intltool ipfiremake pakfire3-deps ipfiremake transmission + ipfiremake dpfhack + ipfiremake lcd4linux echo Build on $HOSTNAME > $BASEDIR/build/var/ipfire/firebuild cat /proc/version >> $BASEDIR/build/var/ipfire/firebuild echo >> $BASEDIR/build/var/ipfire/firebuild @@ -731,10 +773,10 @@ buildipfire() { echo >> $BASEDIR/build/var/ipfire/firebuild cat /proc/cpuinfo >> $BASEDIR/build/var/ipfire/firebuild echo $PAKFIRE_CORE > $BASEDIR/build/opt/pakfire/db/core/mine - if [ "$GIT_BRANCH" = "next" ]; then - echo "$NAME $VERSION - (Development Build: $GIT_LASTCOMMIT)" > $BASEDIR/build/etc/system-release + if [ "$GIT_BRANCH" = "master" -o "$GIT_BRANCH" = "next" ]; then + echo "$NAME $VERSION ($MACHINE) - Development Build: $GIT_LASTCOMMIT" > $BASEDIR/build/etc/system-release else - echo "$NAME $VERSION - $GIT_BRANCH" > $BASEDIR/build/etc/system-release + echo "$NAME $VERSION ($MACHINE) - $GIT_BRANCH" > $BASEDIR/build/etc/system-release fi } @@ -772,6 +814,12 @@ buildpackages() { # packages-list.txt is ready to be displayed for wiki page beautify message DONE + # Update changelog + cd $BASEDIR + [ -z $GIT_TAG ] || LAST_TAG=$GIT_TAG + [ -z $LAST_TAG ] || EXT="$LAST_TAG..HEAD" + git log -n 500 --no-merges --pretty=medium --shortstat $EXT > $BASEDIR/doc/ChangeLog + # Create images for install ipfiremake cdrom @@ -955,6 +1003,7 @@ downloadsrc) ERROR=0 for i in *; do if [ -f "$i" -a "$i" != "Config" ]; then + lfsmakecommoncheck ${i} > /dev/null || continue make -s -f $i LFS_BASEDIR=$BASEDIR MACHINE=$MACHINE \ MESSAGE="$i\t " md5 >> $LOGFILE 2>&1 if [ $? -ne 0 ]; then