]> git.ipfire.org Git - people/pmueller/ipfire-2.x.git/blobdiff - make.sh
make.sh: Actually build Canary-Stability
[people/pmueller/ipfire-2.x.git] / make.sh
diff --git a/make.sh b/make.sh
index 9ddfd4c07bcf6f1f0ec01097b971afa5d8bd7a02..e9c9202a8e2655164be875ee8c96e8894b20f1a3 100755 (executable)
--- a/make.sh
+++ b/make.sh
@@ -26,10 +26,9 @@ NAME="IPFire"                                                        # Software name
 SNAME="ipfire"                                                 # Short name
 # If you update the version don't forget to update backupiso and add it to core update
 VERSION="2.25"                                                 # Version number
-CORE="152"                                                     # Core Level (Filename)
+CORE="157"                                                     # Core Level (Filename)
 SLOGAN="www.ipfire.org"                                                # Software slogan
 CONFIG_ROOT=/var/ipfire                                                # Configuration rootdir
-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 }'`
@@ -178,6 +177,13 @@ configure_build() {
                        RUSTFLAGS="-Ccodegen-units=1"
                        ;;
 
+               riscv64)
+                       BUILDTARGET="${build_arch}-unknown-linux-gnu"
+                       CROSSTARGET="${build_arch}-cross-linux-gnu"
+                       BUILD_PLATFORM="riscv"
+                       CFLAGS_ARCH="-fstack-clash-protection"
+                       ;;
+
                *)
                        exiterror "Cannot build for architure ${build_arch}"
                        ;;
@@ -220,6 +226,9 @@ configure_build() {
        # Use this as default PARALLELISM
        DEFAULT_PARALLELISM="${parallelism}"
 
+       # Limit lauched ninja build jobs to computed parallel value.
+       NINJAJOBS="${parallelism}"
+
        # Compression parameters
        # We use mode 8 for reasonable memory usage when decompressing
        # but with overall good compression
@@ -262,6 +271,10 @@ configure_build_guess() {
                        echo "armv5tel"
                        ;;
 
+               riscv64)
+                       echo "riscv64"
+                       ;;
+
                *)
                        exiterror "Cannot guess build architecture"
                        ;;
@@ -432,11 +445,6 @@ prepareenv() {
        # Trap on emergency exit
        trap "exiterror 'Build process interrupted'" SIGINT SIGTERM SIGKILL SIGSTOP SIGQUIT
 
-       # Resetting our nice level
-       if ! renice ${NICE} $$ >/dev/null; then
-                       exiterror "Failed to set nice level to ${NICE}"
-       fi
-
        # Checking if running as root user
        if [ $(id -u) -ne 0 ]; then
                        exiterror "root privileges required for building"
@@ -465,7 +473,7 @@ prepareenv() {
        # Setup environment
        set +h
        LC_ALL=POSIX
-       export LFS LC_ALL CFLAGS CXXFLAGS DEFAULT_PARALLELISM RUSTFLAGS
+       export LFS LC_ALL CFLAGS CXXFLAGS DEFAULT_PARALLELISM RUSTFLAGS NINJAJOBS
        unset CC CXX CPP LD_LIBRARY_PATH LD_PRELOAD
 
        # Make some extra directories
@@ -804,7 +812,7 @@ qemu_is_required() {
        fi
 
        case "${HOST_ARCH},${build_arch}" in
-               x86_64,arm*|x86_64,aarch64|i?86,arm*|i?86,aarch64|i?86,x86_64)
+               x86_64,arm*|x86_64,aarch64|x86_64,riscv64|i?86,arm*|i?86,aarch64|i?86,x86_64)
                        return 0
                        ;;
                *)
@@ -868,6 +876,9 @@ qemu_find_build_helper_name() {
                arm*)
                        magic="7f454c4601010100000000000000000002002800"
                        ;;
+               riscv64)
+                       magic="7f454c460201010000000000000000000200f300"
+                       ;;
                x86_64)
                        magic="7f454c4602010100000000000000000002003e00"
                        ;;
@@ -1030,6 +1041,7 @@ buildtoolchain() {
        lfsmake1 gcc                    PASS=1
        lfsmake1 linux                  KCFG="-headers"
        lfsmake1 glibc
+       lfsmake1 libxcrypt
        lfsmake1 gcc                    PASS=L
        lfsmake1 binutils                       PASS=2
        lfsmake1 gcc                    PASS=2
@@ -1076,40 +1088,40 @@ buildbase() {
        lfsmake2 tzdata
        lfsmake2 cleanup-toolchain
        lfsmake2 zlib
+       lfsmake2 zstd
+       lfsmake2 autoconf
+       lfsmake2 automake
+       lfsmake2 libtool
        lfsmake2 binutils
        lfsmake2 gmp
-       lfsmake2 gmp-compat
        lfsmake2 mpfr
        lfsmake2 libmpc
+       lfsmake2 libxcrypt
        lfsmake2 file
        lfsmake2 gcc
        lfsmake2 sed
-       lfsmake2 autoconf
-       lfsmake2 automake
        lfsmake2 berkeley
-       lfsmake2 berkeley-compat
        lfsmake2 coreutils
        lfsmake2 iana-etc
        lfsmake2 m4
        lfsmake2 bison
        lfsmake2 ncurses
-       lfsmake2 procps
-       lfsmake2 libtool
        lfsmake2 perl
        lfsmake2 readline
-       lfsmake2 readline-compat
        lfsmake2 bzip2
        lfsmake2 xz
+       lfsmake2 lzip
        lfsmake2 pcre
-       lfsmake2 pcre-compat
+       lfsmake2 pcre2
+       lfsmake2 gettext
+       lfsmake2 attr
+       lfsmake2 acl
        lfsmake2 bash
        lfsmake2 diffutils
-       lfsmake2 e2fsprogs
        lfsmake2 ed
        lfsmake2 findutils
        lfsmake2 flex
        lfsmake2 gawk
-       lfsmake2 gettext
        lfsmake2 go
        lfsmake2 grep
        lfsmake2 groff
@@ -1121,6 +1133,7 @@ buildbase() {
        lfsmake2 kbd
        lfsmake2 less
        lfsmake2 pkg-config
+       lfsmake2 procps
        lfsmake2 make
        lfsmake2 man
        lfsmake2 net-tools
@@ -1133,6 +1146,7 @@ buildbase() {
        lfsmake2 texinfo
        lfsmake2 util-linux
        lfsmake2 vim
+       lfsmake2 e2fsprogs
 }
 
 buildipfire() {
@@ -1142,7 +1156,6 @@ buildipfire() {
   lfsmake2 initscripts
   lfsmake2 backup
   lfsmake2 openssl
-  [ "${BUILD_ARCH}" = "i586" ] && lfsmake2 openssl KCFG='-sse2'
   lfsmake2 kmod
   lfsmake2 udev
   lfsmake2 popt
@@ -1183,20 +1196,12 @@ buildipfire() {
   case "${BUILD_ARCH}" in
        x86_64|aarch64)
                lfsmake2 linux                  KCFG=""
-#              lfsmake2 backports                      KCFG=""
-#              lfsmake2 e1000e                 KCFG=""
-#              lfsmake2 igb                            KCFG=""
-#              lfsmake2 ixgbe                  KCFG=""
                lfsmake2 xtables-addons         KCFG=""
                lfsmake2 linux-initrd                   KCFG=""
                ;;
        i586)
                # x86 kernel build
                lfsmake2 linux                  KCFG=""
-#              lfsmake2 backports                      KCFG=""
-#              lfsmake2 e1000e                 KCFG=""
-#              lfsmake2 igb                            KCFG=""
-#              lfsmake2 ixgbe                  KCFG=""
                lfsmake2 xtables-addons         KCFG=""
                lfsmake2 linux-initrd                   KCFG=""
                ;;
@@ -1204,10 +1209,6 @@ buildipfire() {
        armv5tel)
                # arm multi platform (Panda, Wandboard ...) kernel build
                lfsmake2 linux                  KCFG="-multi"
-#              lfsmake2 backports                      KCFG="-multi"
-#              lfsmake2 e1000e                 KCFG="-multi"
-#              lfsmake2 igb                            KCFG="-multi"
-#              lfsmake2 ixgbe                  KCFG="-multi"
                lfsmake2 xtables-addons         KCFG="-multi"
                lfsmake2 linux-initrd                   KCFG="-multi"
                ;;
@@ -1233,12 +1234,14 @@ buildipfire() {
   lfsmake2 linux-atm
   lfsmake2 gdbm
   lfsmake2 pam
+  lfsmake2 c-ares
   lfsmake2 curl
   lfsmake2 tcl
   lfsmake2 sqlite
   lfsmake2 libffi
   lfsmake2 python
   lfsmake2 python3
+  lfsmake2 gdb
   lfsmake2 grub
   lfsmake2 efivar
   lfsmake2 efibootmgr
@@ -1251,8 +1254,9 @@ buildipfire() {
   lfsmake2 nasm
   lfsmake2 libarchive
   lfsmake2 cmake
+  lfsmake2 ninja
+  lfsmake2 meson
   lfsmake2 libjpeg
-  lfsmake2 libjpeg-compat
   lfsmake2 openjpeg
   lfsmake2 libexif
   lfsmake2 libpng
@@ -1262,8 +1266,6 @@ buildipfire() {
   lfsmake2 slang
   lfsmake2 newt
   lfsmake2 libsmooth
-  lfsmake2 attr
-  lfsmake2 acl
   lfsmake2 libcap
   lfsmake2 libcap-ng
   lfsmake2 pciutils
@@ -1333,6 +1335,7 @@ buildipfire() {
   lfsmake2 Mail-Tools
   lfsmake2 MIME-Tools
   lfsmake2 Net-Server
+  lfsmake2 Canary-Stability
   lfsmake2 Convert-TNEF
   lfsmake2 Convert-UUlib
   lfsmake2 Archive-Tar
@@ -1384,7 +1387,6 @@ buildipfire() {
   lfsmake2 spandsp
   lfsmake2 lz4
   lfsmake2 lzo
-  lfsmake2 zstd
   lfsmake2 openvpn
   lfsmake2 mpage
   lfsmake2 dbus
@@ -1417,9 +1419,6 @@ buildipfire() {
   lfsmake2 fetchmail
   lfsmake2 clamav
   lfsmake2 perl-NetAddr-IP
-  lfsmake2 spamassassin
-  lfsmake2 perl-Net-LibIDN
-  lfsmake2 amavisd
   lfsmake2 dma
   lfsmake2 alsa
   lfsmake2 mpfire
@@ -1500,13 +1499,12 @@ buildipfire() {
   lfsmake2 iw
   lfsmake2 wpa_supplicant
   lfsmake2 hostapd
-  lfsmake2 pycurl
-  lfsmake2 urlgrabber
   lfsmake2 syslinux
   lfsmake2 tftpd
   lfsmake2 cpufrequtils
   lfsmake2 gutenprint
   lfsmake2 apcupsd
+  lfsmake2 fireperf
   lfsmake2 iperf
   lfsmake2 iperf3
   lfsmake2 7zip
@@ -1548,11 +1546,7 @@ buildipfire() {
   lfsmake2 crda
   lfsmake2 libsolv
   lfsmake2 python-distutils-extra
-  lfsmake2 python-lzma
-  lfsmake2 python-progressbar
-  lfsmake2 python-xattr
   lfsmake2 ddns
-  lfsmake2 python3-setuptools
   lfsmake2 python3-setuptools-scm
   lfsmake2 python3-six
   lfsmake2 python3-dateutil
@@ -1563,6 +1557,7 @@ buildipfire() {
   lfsmake2 python3-s3transfer
   lfsmake2 python3-rsa
   lfsmake2 python3-pyasn1
+  lfsmake2 python3-urllib3
   lfsmake2 python3-botocore
   lfsmake2 python3-llfuse
   lfsmake2 python3-msgpack
@@ -1576,9 +1571,6 @@ buildipfire() {
   lfsmake2 fping
   lfsmake2 telnet
   lfsmake2 xinetd
-  lfsmake2 gpgme
-  lfsmake2 pygpgme
-  lfsmake2 pakfire3
   lfsmake2 stress
   lfsmake2 libstatgrab
   lfsmake2 sarg
@@ -1648,6 +1640,7 @@ buildipfire() {
   lfsmake2 libloc
   lfsmake2 ncdu
   lfsmake2 lshw
+  lfsmake2 socat
 }
 
 buildinstaller() {
@@ -1813,9 +1806,9 @@ clean)
        for i in `mount | grep $BASEDIR | sed 's/^.*loop=\(.*\))/\1/'`; do
                $LOSETUP -d $i 2>/dev/null
        done
-       for i in `mount | grep $BASEDIR | cut -d " " -f 1`; do
-               umount $i
-       done
+       #for i in `mount | grep $BASEDIR | cut -d " " -f 1`; do
+       #       umount $i
+       #done
        stdumount
        for i in `seq 0 7`; do
                if ( losetup /dev/loop${i} 2>/dev/null | grep -q "/install/images" ); then
@@ -1975,7 +1968,7 @@ lang)
        $BASEDIR/tools/check_strings.pl de > $BASEDIR/doc/language_issues.de
        $BASEDIR/tools/check_strings.pl fr > $BASEDIR/doc/language_issues.fr
        $BASEDIR/tools/check_strings.pl es > $BASEDIR/doc/language_issues.es
-       $BASEDIR/tools/check_strings.pl es > $BASEDIR/doc/language_issues.pl
+       $BASEDIR/tools/check_strings.pl pl > $BASEDIR/doc/language_issues.pl
        $BASEDIR/tools/check_strings.pl ru > $BASEDIR/doc/language_issues.ru
        $BASEDIR/tools/check_strings.pl nl > $BASEDIR/doc/language_issues.nl
        $BASEDIR/tools/check_strings.pl tr > $BASEDIR/doc/language_issues.tr