vlmcsd/hotbird64-mass-build/make_multilib_linux

156 lines
5.4 KiB
Plaintext
Raw Normal View History

2016-06-06 04:36:00 +02:00
#!/bin/bash
2016-11-16 05:12:36 +01:00
export VLMCSD_VERSION=$(git describe)
2016-06-06 04:36:00 +02:00
SMALLCC="-pipe -fno-common -fno-exceptions -fno-stack-protector -fno-unwind-tables -fno-asynchronous-unwind-tables -fmerge-all-constants"
SMALLLD="-pipe -Wl,--hash-style=sysv -Wl,-z,norelro -Wl,--build-id=none"
SMALL="$SMALLCC $SMALLLD"
2016-10-14 07:28:23 +02:00
cd "$( dirname "$0" )"
gmake -C .. clean
BINDIR="../bin"
MANDIR="../man"
cd ../src
2016-06-06 04:36:00 +02:00
2018-10-24 05:40:18 +02:00
mkdir -p ../binaries/Linux/intel/glibc
mkdir -p ../binaries/Linux/intel/uclibc
mkdir -p ../binaries/Linux/intel/static
mkdir -p ../binaries/Linux/intel/musl
mkdir -p ../binaries/Linux/sparc/glibc
mkdir -p ../binaries/Linux/s390/glibc
mkdir -p ../binaries/Android/arm/bionic
mkdir -p ../binaries/Android/arm/static
mkdir -p ../binaries/Android/intel/bionic
mkdir -p ../binaries/Android/intel/static
mkdir -p ../binaries/Android/mips/bionic
mkdir -p ../binaries/Android/mips/static
mkdir -p ../binaries/Linux/arm/little-endian/glibc
mkdir -p ../binaries/Linux/arm/little-endian/musl
mkdir -p ../binaries/Linux/arm/little-endian/uclibc
mkdir -p ../binaries/Linux/arm/little-endian/static
mkdir -p ../binaries/Linux/arm/big-endian/uclibc
mkdir -p ../binaries/Linux/arm/big-endian/static
mkdir -p ../binaries/Linux/mips/little-endian/glibc
mkdir -p ../binaries/Linux/mips/little-endian/uclibc
mkdir -p ../binaries/Linux/mips/little-endian/static
mkdir -p ../binaries/Linux/mips/little-endian/musl
mkdir -p ../binaries/Linux/mips/big-endian/uclibc
mkdir -p ../binaries/Linux/mips/big-endian/static
mkdir -p ../binaries/Linux/mips/big-endian/glibc
mkdir -p ../binaries/Linux/mips/big-endian/musl
mkdir -p ../binaries/Linux/ppc/little-endian/glibc
mkdir -p ../binaries/Linux/ppc/big-endian/glibc
mkdir -p ../binaries/Linux/ppc/big-endian/uclibc
mkdir -p ../binaries/Linux/ppc/big-endian/musl
mkdir -p ../binaries/Linux/ppc/big-endian/static
mkdir -p ../binaries/MacOSX/intel
mkdir -p ../binaries/MacOSX/ppc
mkdir -p ../binaries/iOS/arm
mkdir -p ../binaries/FreeBSD/intel
mkdir -p ../binaries/NetBSD/intel
mkdir -p ../binaries/OpenBSD/intel
mkdir -p ../binaries/DragonFly/intel
mkdir -p ../binaries/Solaris/intel
mkdir -p ../binaries/Windows/intel
mkdir -p ../binaries/Minix/intel
mkdir -p ../binaries/Hurd/intel
2016-06-06 04:36:00 +02:00
## IBM S/390
export CFLAGS="$SMALLCC"
export PLATFORMFLAGS="-flto=jobserver -fwhole-program -m31 -mesa -mpacked-stack -msmall-exec"
export LDFLAGS="$SMALLLD -Wl,--hash-style=gnu"
export THREADS=0
export FEATURES=full
export CC=s390x-linux-gnu-gcc
export VERBOSE=3
2018-10-24 05:40:18 +02:00
export MULTI_NAME=~/x/binaries/Linux/s390/glibc/vlmcsdmulti-s390-glibc
export CLIENT_NAME=~/x/binaries/Linux/s390/glibc/vlmcs-s390-glibc
export PROGRAM_NAME=~/x/binaries/Linux/s390/glibc/vlmcsd-s390-glibc
2016-06-06 04:36:00 +02:00
2016-06-28 07:07:01 +02:00
make -B -j`nproc` allmulti
2016-06-06 04:36:00 +02:00
export PLATFORMFLAGS="-flto=jobserver -fwhole-program -m64 -mzarch -mpacked-stack -msmall-exec"
2018-10-24 05:40:18 +02:00
export MULTI_NAME=~/x/binaries/Linux/s390/glibc/vlmcsdmulti-s390x-glibc
export CLIENT_NAME=~/x/binaries/Linux/s390/glibc/vlmcs-s390x-glibc
export PROGRAM_NAME=~/x/binaries/Linux/s390/glibc/vlmcsd-s390x-glibc
2016-06-06 04:36:00 +02:00
2016-06-28 07:07:01 +02:00
make -B -j`nproc` allmulti
2016-06-06 04:36:00 +02:00
2016-06-28 07:07:01 +02:00
2016-06-06 04:36:00 +02:00
## SPARC64
export PLATFORMFLAGS="-flto=jobserver -fwhole-program -mcpu=v7"
export LDFLAGS="$SMALLLD"
export CC=sparc64-linux-gnu-gcc
2018-10-24 05:40:18 +02:00
export MULTI_NAME=~/x/binaries/Linux/sparc/glibc/vlmcsdmulti-sparc64v9-glibc
export CLIENT_NAME=~/x/binaries/Linux/sparc/glibc/vlmcs-sparc64v9-glibc
export PROGRAM_NAME=~/x/binaries/Linux/sparc/glibc/vlmcsd-sparc64v9-glibc
2016-06-06 04:36:00 +02:00
2016-06-28 07:07:01 +02:00
make -B -j`nproc` allmulti
2016-06-06 04:36:00 +02:00
2016-06-28 07:07:01 +02:00
2016-06-06 04:36:00 +02:00
## MIPS64 BIG-ENDIAN
export PLATFORMFLAGS="-flto=jobserver -fwhole-program -mips64 -mno-mips16"
export LDFLAGS="$SMALLLD"
export CC=mips64-linux-gnuabi64-gcc
2018-10-24 05:40:18 +02:00
export MULTI_NAME=~/x/binaries/Linux/mips/big-endian/glibc/vlmcsdmulti-mips64-glibc
export CLIENT_NAME=~/x/binaries/Linux/mips/big-endian/glibc/vlmcs-mips64-glibc
export PROGRAM_NAME=~/x/binaries/Linux/mips/big-endian/glibc/vlmcsd-mips64-glibc
2016-06-06 04:36:00 +02:00
2016-06-28 07:07:01 +02:00
make -B -j`nproc` allmulti
2016-06-06 04:36:00 +02:00
export PLATFORMFLAGS="-flto=jobserver -fwhole-program -mips64 -mmicromips"
2018-10-24 05:40:18 +02:00
export MULTI_NAME=~/x/binaries/Linux/mips/big-endian/glibc/vlmcsdmulti-mips64mm-glibc
export CLIENT_NAME=~/x/binaries/Linux/mips/big-endian/glibc/vlmcs-mips64mm-glibc
export PROGRAM_NAME=~/x/binaries/Linux/mips/big-endian/glibc/vlmcsd-mips64mm-glibc
2016-06-06 04:36:00 +02:00
2016-06-28 07:07:01 +02:00
make -B -j`nproc` allmulti
2016-06-06 04:36:00 +02:00
## MIPS64 LITTLE-ENDIAN
export PLATFORMFLAGS="-flto=jobserver -fwhole-program -mips64 -mno-mips16"
export LDFLAGS="$SMALLLD"
export CC=mips64el-linux-gnuabi64-gcc
2018-10-24 05:40:18 +02:00
export MULTI_NAME=~/x/binaries/Linux/mips/little-endian/glibc/vlmcsdmulti-mips64el-glibc
export CLIENT_NAME=~/x/binaries/Linux/mips/little-endian/glibc/vlmcs-mips64el-glibc
export PROGRAM_NAME=~/x/binaries/Linux/mips/little-endian/glibc/vlmcsd-mips64el-glibc
2016-06-06 04:36:00 +02:00
2016-06-28 07:07:01 +02:00
make -B -j`nproc` allmulti
2016-06-06 04:36:00 +02:00
export PLATFORMFLAGS="-flto=jobserver -fwhole-program -mips64 -mmicromips"
2018-10-24 05:40:18 +02:00
export MULTI_NAME=~/x/binaries/Linux/mips/little-endian/glibc/vlmcsdmulti-mips64elmm-glibc
export CLIENT_NAME=~/x/binaries/Linux/mips/little-endian/glibc/vlmcs-mips64elmm-glibc
export PROGRAM_NAME=~/x/binaries/Linux/mips/little-endian/glibc/vlmcsd-mips64elmm-glibc
2016-06-06 04:36:00 +02:00
2016-06-28 07:07:01 +02:00
make -B -j`nproc` allmulti
2016-06-06 04:36:00 +02:00
if [ "$1" == "nocopy" ]; then
exit 0
fi
2018-10-24 05:40:18 +02:00
scp -p -P 2222 ~/x/binaries/Linux/s390/glibc/vlmcsdmulti-s390-glibc ~/x/binaries/Linux/s390/glibc/vlmcs-s390-glibc ~/x/binaries/Linux/s390/glibc/vlmcsd-s390-glibc ~/x/binaries/Linux/s390/glibc/vlmcsdmulti-s390x-glibc ~/x/binaries/Linux/s390/glibc/vlmcs-s390x-glibc ~/x/binaries/Linux/s390/glibc/vlmcsd-s390x-glibc s390:vlmcsd
scp -p -P 2222 ~/x/binaries/Linux/s390/glibc/vlmcsdmulti-s390-glibc ~/x/binaries/Linux/s390/glibc/vlmcsdmulti-s390x-glibc s390:/usr/local/sbin