X-Git-Url: http://git.ipfire.org/?a=blobdiff_plain;f=make.sh;h=766499fce7b90a13e83abade314b555c0c5aa4b6;hb=99ba4e9224c409630b95b7a16d77a74a028f8690;hp=4a0f1003e8b1dc0e46498a7a20798ab65b7e757f;hpb=d70366de89c189206fe77ee780b9dd61d0c508d6;p=ipfire-2.x.git diff --git a/make.sh b/make.sh index 4a0f1003e8..766499fce7 100755 --- a/make.sh +++ b/make.sh @@ -24,9 +24,9 @@ NAME="IPFire" # Software name SNAME="ipfire" # Short name -VERSION="2.15" # Version number -CORE="77-rc2" # Core Level (Filename) -PAKFIRE_CORE="77" # Core Level (PAKFIRE) +VERSION="2.17" # Version number +CORE="87" # Core Level (Filename) +PAKFIRE_CORE="86" # Core Level (PAKFIRE) GIT_BRANCH=`git rev-parse --abbrev-ref HEAD` # Git Branch SLOGAN="www.ipfire.org" # Software slogan CONFIG_ROOT=/var/ipfire # Configuration rootdir @@ -34,16 +34,13 @@ NICE=10 # Nice level MAX_RETRIES=1 # prefetch/check loop BUILD_IMAGES=1 # Flash and Xen Downloader 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=7 - -BUILDMACHINE=$MACHINE - if [ "$MACHINE" = "x86_64" ]; then - BUILDMACHINE="i686"; - fi +TOOLCHAINVER=8 +# New architecture variables +BUILD_ARCH="$(uname -m)" +BUILDMACHINE="${BUILD_ARCH}" # Debian specific settings if [ ! -e /etc/debian_version ]; then @@ -72,6 +69,12 @@ if [ -f .config ]; then . .config fi +if [ -n "${TARGET_ARCH}" ]; then + configure_target "${TARGET_ARCH}" +else + configure_target "default" +fi + if [ -z $EDITOR ]; then for i in nano emacs vi; do EDITOR=$(which $i 2>/dev/null) @@ -241,7 +244,7 @@ prepareenv() { buildtoolchain() { local error=false - case "${MACHINE}:$(uname -m)" in + case "${TARGET_ARCH}:${BUILD_ARCH}" in # x86 i586:i586|i586:i686|i586:x86_64) # These are working. @@ -352,14 +355,13 @@ buildbase() { lfsmake2 groff lfsmake2 gperf lfsmake2 gzip - lfsmake2 inetutils + lfsmake2 hostname lfsmake2 iproute2 lfsmake2 jwhois lfsmake2 kbd lfsmake2 less lfsmake2 make lfsmake2 man - lfsmake2 mktemp lfsmake2 kmod lfsmake2 net-tools lfsmake2 patch @@ -374,7 +376,6 @@ buildbase() { lfsmake2 vim lfsmake2 xz lfsmake2 paxctl - lfsmake2 grub } buildipfire() { @@ -382,9 +383,6 @@ buildipfire() { export LOGFILE ipfiremake configroot ipfiremake backup - ipfiremake bind - ipfiremake dhcp - ipfiremake dhcpcd ipfiremake libusb ipfiremake libusbx ipfiremake libpcap @@ -398,71 +396,70 @@ buildipfire() { ipfiremake rpi-firmware ipfiremake bc ipfiremake u-boot + ipfiremake cpio + ipfiremake mdadm + ipfiremake dracut + ipfiremake lvm2 + ipfiremake multipath-tools + ipfiremake freetype + ipfiremake grub + + case "${TARGET_ARCH}" in + i586) + # x86-pae (Native and new XEN) kernel build + ipfiremake linux KCFG="-pae" + ipfiremake cryptodev KCFG="-pae" + ipfiremake e1000e KCFG="-pae" + ipfiremake igb KCFG="-pae" + ipfiremake ixgbe KCFG="-pae" + ipfiremake linux-initrd KCFG="-pae" + + # x86 kernel build + ipfiremake linux KCFG="" + ipfiremake cryptodev KCFG="" + ipfiremake e1000e KCFG="" + ipfiremake igb KCFG="" + ipfiremake ixgbe KCFG="" + ipfiremake linux-initrd KCFG="" + ;; - if [ "${MACHINE_TYPE}" != "arm" ]; then - - # x86-pae (Native and new XEN) kernel build - ipfiremake linux KCFG="-pae" -# ipfiremake kvm-kmod KCFG="-pae" -# ipfiremake v4l-dvb KCFG="-pae" -# ipfiremake mISDN KCFG="-pae" - ipfiremake cryptodev KCFG="-pae" -# ipfiremake compat-drivers KCFG="-pae" -# ipfiremake r8169 KCFG="-pae" -# ipfiremake r8168 KCFG="-pae" -# ipfiremake r8101 KCFG="-pae" - ipfiremake e1000e KCFG="-pae" - ipfiremake igb KCFG="-pae" - - # x86 kernel build - ipfiremake linux KCFG="" -# ipfiremake kvm-kmod KCFG="" -# ipfiremake v4l-dvb KCFG="" -# ipfiremake mISDN KCFG="" - ipfiremake cryptodev KCFG="" -# ipfiremake compat-drivers KCFG="" -# ipfiremake r8169 KCFG="" -# ipfiremake r8168 KCFG="" -# ipfiremake r8101 KCFG="" - ipfiremake e1000e KCFG="" - ipfiremake igb KCFG="" - - else - # arm-rpi (Raspberry Pi) kernel build - ipfiremake linux KCFG="-rpi" -# ipfiremake v4l-dvb KCFG="-rpi" -# ipfiremake mISDN KCFG="-rpi" NOPCI=1 - ipfiremake cryptodev KCFG="-rpi" -# ipfiremake compat-drivers KCFG="-rpi" - - # arm multi platform (Panda, Wandboard ...) kernel build - ipfiremake linux KCFG="-multi" - ipfiremake cryptodev KCFG="-multi" - ipfiremake e1000e KCFG="-multi" - ipfiremake igb KCFG="-multi" - - # arm-kirkwood (Dreamplug, ICY-Box ...) kernel build - ipfiremake linux KCFG="-kirkwood" -# ipfiremake v4l-dvb KCFG="-kirkwood" -# ipfiremake mISDN KCFG="-kirkwood" - ipfiremake cryptodev KCFG="-kirkwood" -# ipfiremake compat-drivers KCFG="-kirkwood" -# ipfiremake r8169 KCFG="-kirkwood" -# ipfiremake r8168 KCFG="-kirkwood" -# ipfiremake r8101 KCFG="-kirkwood" -# ipfiremake e1000e KCFG="-kirkwood" - ipfiremake igb KCFG="-kirkwood" - - fi + armv5tel) + # arm-rpi (Raspberry Pi) kernel build + ipfiremake linux KCFG="-rpi" + ipfiremake cryptodev KCFG="-rpi" + ipfiremake linux-initrd KCFG="-rpi" + + # arm multi platform (Panda, Wandboard ...) kernel build + ipfiremake linux KCFG="-multi" + ipfiremake cryptodev KCFG="-multi" + ipfiremake e1000e KCFG="-multi" + ipfiremake igb KCFG="-multi" + ipfiremake ixgbe KCFG="-multi" + ipfiremake linux-initrd KCFG="-multi" + + # arm-kirkwood (Dreamplug, ICY-Box ...) kernel build + ipfiremake linux KCFG="-kirkwood" + ipfiremake cryptodev KCFG="-kirkwood" + ipfiremake e1000e KCFG="-kirkwood" + ipfiremake igb KCFG="-kirkwood" + ipfiremake ixgbe KCFG="-kirkwood" + ipfiremake linux-initrd KCFG="-kirkwood" + ;; + esac ipfiremake pkg-config + ipfiremake openssl + ipfiremake openssl-compat + ipfiremake libgpg-error + ipfiremake libgcrypt + ipfiremake libassuan + ipfiremake bind + ipfiremake dhcp + ipfiremake dhcpcd + ipfiremake boost ipfiremake linux-atm - ipfiremake cpio - ipfiremake dracut ipfiremake expat ipfiremake gdbm ipfiremake pam - ipfiremake openssl - ipfiremake openssl-compat ipfiremake curl ipfiremake tcl ipfiremake sqlite @@ -470,6 +467,7 @@ buildipfire() { ipfiremake fireinfo ipfiremake libnet ipfiremake libnl + ipfiremake libnl-3 ipfiremake libidn ipfiremake nasm ipfiremake libjpeg @@ -477,12 +475,12 @@ buildipfire() { ipfiremake libpng ipfiremake libtiff ipfiremake libart - ipfiremake freetype ipfiremake gd ipfiremake popt ipfiremake pcre ipfiremake slang ipfiremake newt + ipfiremake libsmooth ipfiremake attr ipfiremake acl ipfiremake libcap @@ -501,6 +499,7 @@ buildipfire() { ipfiremake arping ipfiremake beep ipfiremake dvdrtools + ipfiremake nettle ipfiremake dnsmasq ipfiremake dosfstools ipfiremake reiserfsprogs @@ -514,6 +513,8 @@ buildipfire() { ipfiremake perl-GD ipfiremake GD-Graph ipfiremake GD-TextUtil + ipfiremake perl-Device-SerialPort + ipfiremake perl-Device-Modem ipfiremake gnupg ipfiremake hdparm ipfiremake sdparm @@ -605,6 +606,7 @@ buildipfire() { ipfiremake foomatic ipfiremake hplip ipfiremake cifs-utils + ipfiremake krb5 ipfiremake samba ipfiremake sudo ipfiremake mc @@ -667,8 +669,10 @@ buildipfire() { ipfiremake netpbm ipfiremake phpSANE ipfiremake tunctl + ipfiremake netsnmpd ipfiremake nagios ipfiremake nagios_nrpe + ipfiremake icinga ipfiremake ebtables ipfiremake directfb ipfiremake dfb++ @@ -676,6 +680,7 @@ buildipfire() { ipfiremake ffmpeg ipfiremake vdr ipfiremake vdr_streamdev + ipfiremake vdr_vnsiserver5 ipfiremake vdr_vnsiserver3 ipfiremake vdr_epgsearch ipfiremake vdr_dvbapi @@ -689,7 +694,6 @@ buildipfire() { ipfiremake git ipfiremake squidclamav ipfiremake vnstat - ipfiremake vnstati ipfiremake iw ipfiremake wpa_supplicant ipfiremake hostapd @@ -714,13 +718,11 @@ buildipfire() { ipfiremake perl-Sort-Naturally ipfiremake vdradmin ipfiremake miau - ipfiremake netsnmpd ipfiremake perl-DBI ipfiremake perl-DBD-mysql ipfiremake perl-DBD-SQLite ipfiremake perl-File-ReadBackwards ipfiremake cacti - ipfiremake icecc ipfiremake openvmtools ipfiremake nagiosql ipfiremake iftop @@ -734,7 +736,6 @@ buildipfire() { ipfiremake usb_modeswitch ipfiremake usb_modeswitch_data ipfiremake zerofree - ipfiremake mdadm ipfiremake pound ipfiremake minicom ipfiremake ddrescue @@ -753,6 +754,7 @@ buildipfire() { ipfiremake python-progressbar ipfiremake python-xattr ipfiremake intltool + ipfiremake ddns ipfiremake transmission ipfiremake dpfhack ipfiremake lcd4linux @@ -763,8 +765,6 @@ buildipfire() { ipfiremake fping ipfiremake telnet ipfiremake xinetd - ipfiremake libgpg-error - ipfiremake libassuan ipfiremake gpgme ipfiremake pygpgme ipfiremake pakfire3 @@ -796,6 +796,14 @@ buildipfire() { ipfiremake iptraf-ng ipfiremake iotop ipfiremake stunnel + ipfiremake sslscan + ipfiremake owncloud + ipfiremake bacula + ipfiremake batctl + ipfiremake perl-PDF-API2 + ipfiremake squid-accounting + ipfiremake pigz + ipfiremake tmux } buildinstaller() { @@ -805,7 +813,6 @@ buildinstaller() { ipfiremake memtest ipfiremake installer installmake strip - ipfiremake initrd } buildpackages() { @@ -842,6 +849,7 @@ buildpackages() { modprobe loop 2>/dev/null if [ $BUILD_IMAGES == 1 ] && ([ -e /dev/loop/0 ] || [ -e /dev/loop0 ] || [ -e "/dev/loop-control" ]); then ipfiremake flash-images + ipfiremake flash-images SCON=1 fi mv $LFS/install/images/{*.iso,*.tgz,*.img.gz,*.bz2} $BASEDIR >> $LOGFILE 2>&1 @@ -895,6 +903,22 @@ ipfirepackages() { rm -rf $BASEDIR/build/install/packages/* } +while [ $# -gt 0 ]; do + case "${1}" in + --target=*) + configure_target "${1#--target=}" + ;; + -*) + exiterror "Unknown configuration option: ${1}" + ;; + *) + # Found a command, so exit options parsing. + break + ;; + esac + shift +done + # See what we're supposed to do case "$1" in build)