#!/bin/bash cd "$( dirname "$0" )" export VLMCSD_VERSION=$(git describe) export VERBOSE=3 export DNS_PARSER=internal MAKEFLAGS="-j200 -B" REUSEOBJFLAGS="-j200" 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" rm -f vlmcs vlmcsdmulti vlmcsd 2>/dev/null rm -fr ../binaries 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 rm -f *_all.c vlmcsd.o vlmcs.o vlmcsdmulti.o 2> /dev/null export STAGING_DIR=. cd ../src pwd #Linux armv4 little-endian uclibc INSTALLDIR=../binaries/Linux/arm/little-endian/ SUFFIX=-armv4el-uclibc export PROGRAM_NAME=${INSTALLDIR}uclibc/vlmcsd${SUFFIX} export CLIENT_NAME=${INSTALLDIR}uclibc/vlmcs${SUFFIX} export MULTI_NAME=${INSTALLDIR}uclibc/vlmcsdmulti${SUFFIX} export CC=/root/cross-compiler-armv4l/bin/armv4l-gcc export PLATFORMFLAGS="-pipe" export FEATURES=full export CFLAGS="$SMALLCC" export LDFLAGS="-Wl,-z,norelro -fwhole-program" export THREADS=0 export NOPROCFS=1 make $MAKEFLAGS GETIFADDRS=musl SAFE_MODE=1 allmulti if [ $? != 0 ]; then echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME exit $? fi export PROGRAM_NAME=${INSTALLDIR}static/vlmcsd${SUFFIX}-static export CLIENT_NAME=${INSTALLDIR}static/vlmcs${SUFFIX}-static export MULTI_NAME=${INSTALLDIR}static/vlmcsdmulti${SUFFIX}-static export LDFLAGS="-Wl,-z,norelro -fwhole-program -static" make $REUSEOBJFLAGS GETIFADDRS=musl SAFE_MODE=1 allmulti if [ $? != 0 ]; then echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME exit $? fi # mips1 little-endian with openssl 0.9.8 support dreambox toolchain INSTALLDIR=../binaries/Linux/mips/little-endian/glibc/ SUFFIX=-mips1el-glibc-openssl0.9.8-soft-EXPERIMENTAL export CRYPTO=openssl_with_aes_soft export PROGRAM_NAME=${INSTALLDIR}vlmcsd${SUFFIX} export CLIENT_NAME=${INSTALLDIR}vlmcs${SUFFIX} export MULTI_NAME=${INSTALLDIR}vlmcsdmulti${SUFFIX} export CC=/opt/simplebuild/toolchains/mipsoe20/bin/mipsel-unknown-linux-gnu-gcc export PLATFORMFLAGS="-flto=16 -fwhole-program" export FEATURES=full export CFLAGS="$SMALLCC" export LDFLAGS="$SMALLLD" export THREADS=0 export NOPROCFS=0 make $MAKEFLAGS allmulti if [ $? != 0 ]; then echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME exit $? fi # mips1 little-endian dreambox toolchain INSTALLDIR=../binaries/Linux/mips/little-endian/glibc/ SUFFIX=-mips1el-glibc export PROGRAM_NAME=${INSTALLDIR}vlmcsd${SUFFIX} export CLIENT_NAME=${INSTALLDIR}vlmcs${SUFFIX} export MULTI_NAME=${INSTALLDIR}vlmcsdmulti${SUFFIX} export CC=/opt/simplebuild/toolchains/mipsoe20/bin/mipsel-unknown-linux-gnu-gcc export PLATFORMFLAGS="-flto=16 -fwhole-program" export FEATURES=full export CFLAGS="$SMALLCC" export LDFLAGS="$SMALLLD" export THREADS=0 export CRYPTO=internal make $MAKEFLAGS allmulti if [ $? != 0 ]; then echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME exit $? fi # Linux mips1 little-endian uclibc INSTALLDIR=../binaries/Linux/mips/little-endian/ SUFFIX=-mips1el-uclibc export PROGRAM_NAME=${INSTALLDIR}uclibc/vlmcsd${SUFFIX} export CLIENT_NAME=${INSTALLDIR}uclibc/vlmcs${SUFFIX} export MULTI_NAME=${INSTALLDIR}uclibc/vlmcsdmulti${SUFFIX} export CC=/root/cross-compiler-mipsel/bin/mipsel-gcc export PLATFORMFLAGS="-pipe" export FEATURES=full export CFLAGS="$SMALLCC" export LDFLAGS="-Wl,-z,norelro -fwhole-program" export THREADS=0 export CRYPTO=internal export NOPROCFS=1 make $MAKEFLAGS GETIFADDRS=musl SAFE_MODE=1 allmulti if [ $? != 0 ]; then echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME exit $? fi export PROGRAM_NAME=${INSTALLDIR}static/vlmcsd${SUFFIX}-static export CLIENT_NAME=${INSTALLDIR}static/vlmcs${SUFFIX}-static export MULTI_NAME=${INSTALLDIR}static/vlmcsdmulti${SUFFIX}-static export LDFLAGS="-Wl,-z,norelro -fwhole-program -static" make $REUSEOBJFLAGS GETIFADDRS=musl SAFE_MODE=1 allmulti if [ $? != 0 ]; then echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME exit $? fi # Linux mips16 little endian glibc INSTALLDIR=../binaries/Linux/mips/little-endian/glibc/ SUFFIX=-mips16el-glibc export PROGRAM_NAME=${INSTALLDIR}vlmcsd${SUFFIX} export CLIENT_NAME=${INSTALLDIR}vlmcs${SUFFIX} export MULTI_NAME=${INSTALLDIR}vlmcsdmulti${SUFFIX} export CC=/opt/toolchains/mips32el-mips16-glibc-2.18/usr/bin/mipsel-linux-gcc export PLATFORMFLAGS="-flto=16 -fwhole-program -mips32 -mips16" export FEATURES=full export CFLAGS="$SMALLCC" export LDFLAGS="$SMALLLD" export THREADS=0 export CRYPTO=internal export NOPROCFS=0 make $MAKEFLAGS allmulti if [ $? != 0 ]; then echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME exit $? fi # Linux mips16 little-endian uclibc INSTALLDIR=../binaries/Linux/mips/little-endian/uclibc/ SUFFIX=-mips16el-uclibc export PROGRAM_NAME=${INSTALLDIR}vlmcsd${SUFFIX} export CLIENT_NAME=${INSTALLDIR}vlmcs${SUFFIX} export MULTI_NAME=${INSTALLDIR}vlmcsdmulti${SUFFIX} export CC=/opt/toolchains/mips32el-mips16-uclibc-0.9.33/bin/mipsel-linux-gcc export PLATFORMFLAGS="-flto=16 -fwhole-program -mips32 -mips16" export FEATURES=full export CFLAGS="$SMALLCC" export LDFLAGS="$SMALLLD" export THREADS=0 export CRYPTO=internal make $MAKEFLAGS allmulti if [ $? != 0 ]; then echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME exit $? fi #Linux PowerPC uclibc OpenWRT toolchain INSTALLDIR=../binaries/Linux/ppc/big-endian/ SUFFIX=-ppc-uclibc export PROGRAM_NAME=${INSTALLDIR}uclibc/vlmcsd${SUFFIX} export CLIENT_NAME=${INSTALLDIR}uclibc/vlmcs${SUFFIX} export MULTI_NAME=${INSTALLDIR}uclibc/vlmcsdmulti${SUFFIX} #export CC=~/openwrt/staging_dir/toolchain-powerpc_405_gcc-4.8-linaro_uClibc-0.9.33.2/bin/powerpc-openwrt-linux-gcc export CC=/opt/toolchains/ppc-uclibc0.9.33.2-gcc-4.9.1-binutils2.24/bin/powerpc-linux-gcc export PLATFORMFLAGS="-flto=16 -fwhole-program -L/root/cross-compiler-powerpc/lib -L/root/cross-compiler-powerpc/usr/lib" #export PLATFORMFLAGS="-flto=16 -fwhole-program" export FEATURES=full export CFLAGS="$SMALLCC" export LDFLAGS="$SMALLLD -static-libgcc" export THREADS=0 export CRYPTO=internal make $MAKEFLAGS GETIFADDRS=musl allmulti if [ $? != 0 ]; then echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME exit $? fi export PROGRAM_NAME=${INSTALLDIR}static/vlmcsd${SUFFIX}-static export CLIENT_NAME=${INSTALLDIR}static/vlmcs${SUFFIX}-static export MULTI_NAME=${INSTALLDIR}static/vlmcsdmulti${SUFFIX}-static export LDFLAGS="$SMALLLD -static" make $REUSEOBJFLAGS GETIFADDRS=musl allmulti if [ $? != 0 ]; then echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME exit $? fi #Linux PowerPC musl 1.15 toolchain INSTALLDIR=../binaries/Linux/ppc/big-endian/ SUFFIX=-ppc-musl export PROGRAM_NAME=${INSTALLDIR}musl/vlmcsd${SUFFIX} export CLIENT_NAME=${INSTALLDIR}musl/vlmcs${SUFFIX} export MULTI_NAME=${INSTALLDIR}musl/vlmcsdmulti${SUFFIX} export CC=/opt/toolchains/ppc-musl-1.15-gcc-6.2.0-binutils-2.27/usr/bin/powerpc-Hotbird64-linux-musl-gcc export PLATFORMFLAGS="-flto=16 -fwhole-program" export FEATURES=full export CFLAGS="$SMALLCC" export LDFLAGS="$SMALLLD -static-libgcc" export THREADS=0 export CRYPTO=internal make $MAKEFLAGS AUXV=1 DNS_PARSER=OS allmulti if [ $? != 0 ]; then echo Error creating $MULTI_NAME, $CLIENT_NAME and/or $PROGRAM_NAME exit $? fi export PROGRAM_NAME=${INSTALLDIR}static/vlmcsd${SUFFIX}-static export CLIENT_NAME=${INSTALLDIR}static/vlmcs${SUFFIX}-static export MULTI_NAME=${INSTALLDIR}static/vlmcsdmulti${SUFFIX}-static export LDFLAGS="$SMALLLD -static" make $REUSEOBJFLAGS AUXV=1 DNS_PARSER=OS allmulti if [ $? != 0 ]; then echo Error creating $MULTI_NAME, $CLIENT_NAME and/or $PROGRAM_NAME exit $? fi #Fritzbox 7170 (mips32r2 little-endian) device specific, May or may not run on other devices INSTALLDIR=../binaries/Linux/mips/little-endian/ SUFFIX=-mips32r2el-Fritzbox-71xx-72xx-uclibc export PROGRAM_NAME=${INSTALLDIR}uclibc/vlmcsd${SUFFIX} export CLIENT_NAME=${INSTALLDIR}uclibc/vlmcs${SUFFIX} export MULTI_NAME=${INSTALLDIR}uclibc/vlmcsdmulti${SUFFIX} export CC=/opt/simplebuild/toolchains/fritz71xx/bin/mipsel-linux-uclibc-gcc export PLATFORMFLAGS="-flto=16 -fwhole-program -march=4kec -mtune=4kec" export FEATURES=full export CFLAGS="$SMALLCC" export LDFLAGS="$SMALLLD" export THREADS=0 export CRYPTO=internal make NOLRESOLV=1 GETIFADDRS=musl $MAKEFLAGS allmulti if [ $? != 0 ]; then echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME exit $? fi export PROGRAM_NAME=${INSTALLDIR}static/vlmcsd${SUFFIX}-static export CLIENT_NAME=${INSTALLDIR}static/vlmcs${SUFFIX}-static export MULTI_NAME=${INSTALLDIR}static/vlmcsdmulti${SUFFIX}-static export LDFLAGS="$SMALLLD -static" make NOLRESOLV=1 GETIFADDRS=musl $REUSEOBJFLAGS allmulti if [ $? != 0 ]; then echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME exit $? fi #Fritzbox 7370 (mips32r2 big-endian) device specific, May or may not run on other devices INSTALLDIR=../binaries/Linux/mips/big-endian/ SUFFIX=-mips16-Fritzbox-33xx-73xx-74xx-63xx-64xx-uclibc export PROGRAM_NAME=${INSTALLDIR}uclibc/vlmcsd${SUFFIX} export CLIENT_NAME=${INSTALLDIR}uclibc/vlmcs${SUFFIX} export MULTI_NAME=${INSTALLDIR}uclibc/vlmcsdmulti${SUFFIX} export CC=/opt/simplebuild/toolchains/fritz73xxOS62/bin/mips-linux-cc export PLATFORMFLAGS="-flto=16 -fwhole-program -march=24kc -mtune=24kc -mips16 -mdsp" export FEATURES=full export CFLAGS="$SMALLCC" export LDFLAGS="$SMALLLD" export THREADS=0 export CRYPTO=internal make NOLRESOLV=1 $MAKEFLAGS allmulti if [ $? != 0 ]; then echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME exit $? fi export PROGRAM_NAME=${INSTALLDIR}static/vlmcsd${SUFFIX}-static export CLIENT_NAME=${INSTALLDIR}static/vlmcs${SUFFIX}-static export MULTI_NAME=${INSTALLDIR}static/vlmcsdmulti${SUFFIX}-static export LDFLAGS="$SMALLLD -static" make NOLRESOLV=1 $REUSEOBJFLAGS allmulti if [ $? != 0 ]; then echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME exit $? fi #Fritzbox 7370 (mips32r2 big-endian) device specific with _PEDANTIC, May or may not run on other devices INSTALLDIR=../binaries/Linux/mips/big-endian/uclibc/ SUFFIX=-mips16-Fritzbox-33xx-73xx-74xx-63xx-64xx-uclibc-pedantic export PROGRAM_NAME=${INSTALLDIR}vlmcsd${SUFFIX} export CLIENT_NAME=${INSTALLDIR}vlmcs${SUFFIX} export MULTI_NAME=${INSTALLDIR}vlmcsdmulti${SUFFIX} export CC=/opt/simplebuild/toolchains/fritz73xxOS62/bin/mips-linux-cc export PLATFORMFLAGS="-flto=16 -fwhole-program -march=24kc -mtune=24kc -mips16 -mdsp" export FEATURES=full export CFLAGS="$SMALLCC -D_PEDANTIC" export LDFLAGS="$SMALLLD" export THREADS=0 export CRYPTO=internal make NOLRESOLV=1 $MAKEFLAGS $PROGRAM_NAME if [ $? != 0 ]; then echo Error creating $PROGRAM_NAME exit $? fi #Fritzbox 7370 (mips32r2 big-endian) device specific with simple sockets and some features disabled, May or may not run on other devices INSTALLDIR=../binaries/Linux/mips/big-endian/uclibc/ SUFFIX=-mips16-Fritzbox-33xx-73xx-74xx-63xx-64xx-uclibc-simple export PROGRAM_NAME=${INSTALLDIR}vlmcsd${SUFFIX} export CLIENT_NAME=${INSTALLDIR}vlmcs${SUFFIX} export MULTI_NAME=${INSTALLDIR}vlmcsdmulti${SUFFIX} export CC=/opt/simplebuild/toolchains/fritz73xxOS62/bin/mips-linux-cc export PLATFORMFLAGS="-flto=16 -fwhole-program -march=24kc -mtune=24kc -mips16 -mdsp" export FEATURES=full export CFLAGS="$SMALLCC -DNO_USER_SWITCH -DSIMPLE_SOCKETS -DNO_PID_FILE -DNO_USER_SWITCH -DNO_USER_SWITCH" export LDFLAGS="$SMALLLD" export THREADS=0 export CRYPTO=internal make NOLRESOLV=1 $MAKEFLAGS $PROGRAM_NAME if [ $? != 0 ]; then echo Error creating $PROGRAM_NAME exit $? fi #Fritzbox 7370 (mips32r2 big-endian) device specific inetd start only, May or may not run on other devices INSTALLDIR=../binaries/Linux/mips/big-endian/uclibc/ SUFFIX=-mips16-Fritzbox-33xx-73xx-74xx-63xx-64xx-uclibc-inetd export PROGRAM_NAME=${INSTALLDIR}vlmcsd${SUFFIX} export CLIENT_NAME=${INSTALLDIR}vlmcs${SUFFIX} export MULTI_NAME=${INSTALLDIR}vlmcsdmulti${SUFFIX} export CC=/opt/simplebuild/toolchains/fritz73xxOS62/bin/mips-linux-cc export PLATFORMFLAGS="-flto=16 -fwhole-program -march=24kc -mtune=24kc -mips16 -mdsp" export FEATURES=inetd export CFLAGS="$SMALLCC" export LDFLAGS="$SMALLLD" export THREADS=0 export CRYPTO=internal make NOLRESOLV=1 $MAKEFLAGS $PROGRAM_NAME if [ $? != 0 ]; then echo Error creating $PROGRAM_NAME exit $? fi #Fritzbox 7370 (mips32r2 big-endian) device specific with pthreads, May or may not run on other devices INSTALLDIR=../binaries/Linux/mips/big-endian/uclibc/ SUFFIX=-mips16-Fritzbox-33xx-73xx-74xx-63xx-64xx-uclibc-threads export PROGRAM_NAME=${INSTALLDIR}vlmcsd${SUFFIX} export CLIENT_NAME=${INSTALLDIR}vlmcs${SUFFIX} export MULTI_NAME=${INSTALLDIR}vlmcsdmulti${SUFFIX} export CC=/opt/simplebuild/toolchains/fritz73xxOS62/bin/mips-linux-cc export PLATFORMFLAGS="-flto=16 -fwhole-program -march=24kc -mtune=24kc -mips16 -mdsp" export FEATURES=full export CFLAGS="$SMALLCC" export LDFLAGS="$SMALLLD -lpthread" export THREADS=1 make NOLRESOLV=1 $MAKEFLAGS $PROGRAM_NAME if [ $? != 0 ]; then echo Error creating $PROGRAM_NAME exit $? fi #Fritzbox 7370 (mips32r2 big-endian) device specific with OpenSSL support, May or may not run on other devices INSTALLDIR=../binaries/Linux/mips/big-endian/uclibc/ SUFFIX=-mips16-Fritzbox-33xx-73xx-74xx-63xx-64xx-uclibc-openssl0.9.8-soft-EXPERIMENTAL export PROGRAM_NAME=${INSTALLDIR}vlmcsd${SUFFIX} export CLIENT_NAME=${INSTALLDIR}vlmcs${SUFFIX} export MULTI_NAME=${INSTALLDIR}vlmcsdmulti${SUFFIX} export CC=/opt/simplebuild/toolchains/fritz73xxOS62/bin/mips-linux-cc export PLATFORMFLAGS="-flto=16 -fwhole-program -march=24kc -mtune=24kc -mips16 -mdsp" export FEATURES=full export CFLAGS="$SMALLCC" export LDFLAGS="$SMALLLD" export THREADS=0 export CRYPTO=openssl_with_aes_soft export OPENSSL_HMAC=0 make NOLRESOLV=1 $MAKEFLAGS allmulti if [ $? != 0 ]; then echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME exit $? fi unset OPENSSL_HMAC #make $MAKEFLAGS CLIENT_NAME=../binaries/Linux/mips/big-endian/uclibc/vlmcs-mips32-uclibc CFLAGS="$SMALL -pipe -flto=16 -fwhole-program" PROGRAM_NAME=../binaries/Linux/mips/big-endian/uclibc/vlmcsd-mips32-uclibc CC=/opt/toolchains/mips32eb-uclibc-0.9.33/usr/bin/mips-linux-cc && \ # Linux mips32 big-endian uclibc INSTALLDIR=../binaries/Linux/mips/big-endian/uclibc/ SUFFIX=-mips32-uclibc export PROGRAM_NAME=${INSTALLDIR}vlmcsd${SUFFIX} export CLIENT_NAME=${INSTALLDIR}vlmcs${SUFFIX} export MULTI_NAME=${INSTALLDIR}vlmcsdmulti${SUFFIX} export CC=/opt/toolchains/mips32eb-uclibc-0.9.33/usr/bin/mips-linux-cc export PLATFORMFLAGS="-flto=16 -fwhole-program -mips32" export FEATURES=full export CFLAGS="$SMALLCC" export LDFLAGS="$SMALLLD" export THREADS=0 export CRYPTO=internal make $MAKEFLAGS allmulti if [ $? != 0 ]; then echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME exit $? fi # Linux mips16 big-endian uclibc INSTALLDIR=../binaries/Linux/mips/big-endian/uclibc/ SUFFIX=-mips16-uclibc export PROGRAM_NAME=${INSTALLDIR}vlmcsd${SUFFIX} export CLIENT_NAME=${INSTALLDIR}vlmcs${SUFFIX} export MULTI_NAME=${INSTALLDIR}vlmcsdmulti${SUFFIX} export CC=/opt/toolchains/mips32eb-uclibc-0.9.33/usr/bin/mips-linux-cc export PLATFORMFLAGS="-flto=16 -fwhole-program -mips16" export FEATURES=full export CFLAGS="$SMALLCC" export LDFLAGS="$SMALLLD" export THREADS=0 export CRYPTO=internal make $MAKEFLAGS allmulti if [ $? != 0 ]; then echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME exit $? fi #Atheros ar7xxx/ar9xxx chips with OpenWRT toolchain (mips16 big-endian) device specific, May or may not run on other devices INSTALLDIR=../binaries/Linux/mips/big-endian/ SUFFIX=-mips16-openwrt-atheros-ar7xxx-ar9xxx-uclibc export PROGRAM_NAME=${INSTALLDIR}uclibc/vlmcsd${SUFFIX} export CLIENT_NAME=${INSTALLDIR}uclibc/vlmcs${SUFFIX} export MULTI_NAME=${INSTALLDIR}uclibc/vlmcsdmulti${SUFFIX} export CC=/opt/toolchains/mips-openwrt-linux-uclibc/bin/mips-openwrt-linux-gcc export PLATFORMFLAGS="-flto=16 -fwhole-program -march=24kc -mips16" export FEATURES=full export CFLAGS="$SMALLCC" export LDFLAGS="-ldl -lpthread $SMALLLD" export THREADS=0 export CRYPTO=internal make $MAKEFLAGS allmulti if [ $? != 0 ]; then echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME exit $? fi #Atheros ar7xxx/ar9xxx chips with OpenWRT toolchain (mips16 big-endian) device specific, May or may not run on other devices INSTALLDIR=../binaries/Linux/mips/big-endian/ SUFFIX=-mips16-openwrt-atheros-ar7xxx-ar9xxx-musl export PROGRAM_NAME=${INSTALLDIR}musl/vlmcsd${SUFFIX} export CLIENT_NAME=${INSTALLDIR}musl/vlmcs${SUFFIX} export MULTI_NAME=${INSTALLDIR}musl/vlmcsdmulti${SUFFIX} export CC=/opt/toolchains/mips_34kc_gcc-4.9-linaro_musl-1.1.6-mips16/bin/mips-openwrt-linux-musl-gcc-4.9.2 export PLATFORMFLAGS="-flto=16 -fwhole-program -march=24kc -mips16" export FEATURES=full export CFLAGS="$SMALLCC" export LDFLAGS="$SMALLLD" export THREADS=0 export CRYPTO=internal make $MAKEFLAGS allmulti if [ $? != 0 ]; then echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME exit $? fi export PROGRAM_NAME=${INSTALLDIR}static/vlmcsd${SUFFIX}-static export CLIENT_NAME=${INSTALLDIR}static/vlmcs${SUFFIX}-static export MULTI_NAME=${INSTALLDIR}static/vlmcsdmulti${SUFFIX}-static export LDFLAGS="$LDFLAGS -static" make $REUSEOBJFLAGS allmulti if [ $? != 0 ]; then echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME exit $? fi #Atheros ar7xxx/ar9xxx chips with OpenWRT toolchain (mips32r2 big-endian) device specific, May or may not run on other devices INSTALLDIR=../binaries/Linux/mips/big-endian/ SUFFIX=-mips32r2-openwrt-atheros-ar7xxx-ar9xxx-uclibc export PROGRAM_NAME=${INSTALLDIR}uclibc/vlmcsd${SUFFIX} export CLIENT_NAME=${INSTALLDIR}uclibc/vlmcs${SUFFIX} export MULTI_NAME=${INSTALLDIR}uclibc/vlmcsdmulti${SUFFIX} export CC=/opt/toolchains/mips-openwrt-linux-uclibc/bin/mips-openwrt-linux-gcc export PLATFORMFLAGS="-flto=16 -fwhole-program -march=24kc" export FEATURES=full export CFLAGS="$SMALLCC -DNO_LIMIT" export LDFLAGS="-ldl -lpthread $SMALLLD" export THREADS=0 export CRYPTO=internal make $MAKEFLAGS allmulti if [ $? != 0 ]; then echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME exit $? fi export PROGRAM_NAME=${INSTALLDIR}static/vlmcsd${SUFFIX}-static export CLIENT_NAME=${INSTALLDIR}static/vlmcs${SUFFIX}-static export MULTI_NAME=${INSTALLDIR}static/vlmcsdmulti${SUFFIX}-static export LDFLAGS="$LDFLAGS -static" make $REUSEOBJFLAGS allmulti if [ $? != 0 ]; then echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME exit $? fi # Linux mips16 big-endian uclibc threads INSTALLDIR=../binaries/Linux/mips/big-endian/uclibc/ SUFFIX=-mips16-uclibc-threads export PROGRAM_NAME=${INSTALLDIR}vlmcsd${SUFFIX} export CLIENT_NAME=${INSTALLDIR}vlmcs${SUFFIX} export MULTI_NAME=${INSTALLDIR}vlmcsdmulti${SUFFIX} export CC=/opt/toolchains/mips32eb-uclibc-0.9.33/usr/bin/mips-linux-cc export PLATFORMFLAGS="-flto=16 -fwhole-program -mips16" export FEATURES=full export CFLAGS="$SMALLCC" export LDFLAGS="$SMALLLD -lpthread" export THREADS=1 export CRYPTO=internal make $MAKEFLAGS $PROGRAM_NAME if [ $? != 0 ]; then echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME exit $? fi # Linux mips32 big-endian glibc INSTALLDIR=../binaries/Linux/mips/big-endian/glibc/ SUFFIX=-mips32-glibc export PROGRAM_NAME=${INSTALLDIR}vlmcsd${SUFFIX} export CLIENT_NAME=${INSTALLDIR}vlmcs${SUFFIX} export MULTI_NAME=${INSTALLDIR}vlmcsdmulti${SUFFIX} export CC=/opt/toolchains/mips32eb-glibc-2.19/usr/bin/mips-linux-cc export PLATFORMFLAGS="-flto=16 -fwhole-program" export FEATURES=full export CFLAGS="$SMALLCC" export LDFLAGS="$SMALLLD" export THREADS=0 export CRYPTO=internal make $MAKEFLAGS allmulti if [ $? != 0 ]; then echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME exit $? fi # Linux mips16 big-endian glibc INSTALLDIR=../binaries/Linux/mips/big-endian/glibc/ SUFFIX=-mips16-glibc export PROGRAM_NAME=${INSTALLDIR}vlmcsd${SUFFIX} export CLIENT_NAME=${INSTALLDIR}vlmcs${SUFFIX} export MULTI_NAME=${INSTALLDIR}vlmcsdmulti${SUFFIX} export CC=/opt/toolchains/mips32eb-glibc-2.19/usr/bin/mips-linux-cc export PLATFORMFLAGS="-flto=16 -fwhole-program -mips16" export FEATURES=full export CFLAGS="$SMALLCC" export LDFLAGS="$SMALLLD" export THREADS=0 export CRYPTO=internal make $MAKEFLAGS allmulti if [ $? != 0 ]; then echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME exit $? fi #Linux mips32 big-endian musl INSTALLDIR=../binaries/Linux/mips/big-endian/ SUFFIX=-mips32-musl export PROGRAM_NAME=${INSTALLDIR}musl/vlmcsd${SUFFIX} export CLIENT_NAME=${INSTALLDIR}musl/vlmcs${SUFFIX} export MULTI_NAME=${INSTALLDIR}musl/vlmcsdmulti${SUFFIX} export CC=/opt/toolchains/mips32eb-musl/usr/bin/mips-linux-cc export PLATFORMFLAGS="-flto=16 -fwhole-program -mips32" export FEATURES=full export CFLAGS="$SMALLCC" export LDFLAGS="$SMALLLD" export THREADS=0 export CRYPTO=internal export NOPROCFS=0 export AUXV=1 make $MAKEFLAGS allmulti if [ $? != 0 ]; then echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME exit $? fi export PROGRAM_NAME=${INSTALLDIR}static/vlmcsd${SUFFIX}-static export CLIENT_NAME=${INSTALLDIR}static/vlmcs${SUFFIX}-static export MULTI_NAME=${INSTALLDIR}static/vlmcsdmulti${SUFFIX}-static export LDFLAGS="$SMALLLD -static" make $REUSEOBJFLAGS allmulti if [ $? != 0 ]; then echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME exit $? fi rm -f *_all.c vlmcsd.o vlmcs.o vlmcsdmulti.o 2> /dev/null #Linux mips16 little-endian musl soft-float INSTALLDIR=../binaries/Linux/mips/little-endian/ SUFFIX=-mips16el-musl export PROGRAM_NAME=${INSTALLDIR}musl/vlmcsd${SUFFIX} export CLIENT_NAME=${INSTALLDIR}musl/vlmcs${SUFFIX} export MULTI_NAME=${INSTALLDIR}musl/vlmcsdmulti${SUFFIX} export CC=/opt/toolchains/mips32el-mips16-musl/usr/bin/mipsel-linux-cc export PLATFORMFLAGS="-flto=16 -fwhole-program -mips16" export FEATURES=full export CFLAGS="$SMALLCC" export LDFLAGS="$SMALLLD" export THREADS=0 export CRYPTO=internal export NOPROCFS=0 export AUXV=1 make $MAKEFLAGS allmulti if [ $? != 0 ]; then echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME exit $? fi export PROGRAM_NAME=${INSTALLDIR}static/vlmcsd${SUFFIX}-static export CLIENT_NAME=${INSTALLDIR}static/vlmcs${SUFFIX}-static export MULTI_NAME=${INSTALLDIR}static/vlmcsdmulti${SUFFIX}-static export LDFLAGS="$SMALLLD -static" make $REUSEOBJFLAGS allmulti if [ $? != 0 ]; then echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME exit $? fi #Linux mips16 little-endian musl fpu INSTALLDIR=../binaries/Linux/mips/little-endian/ SUFFIX=-mips16el-musl-fpu export PROGRAM_NAME=${INSTALLDIR}static/vlmcsd${SUFFIX}-static export CLIENT_NAME=${INSTALLDIR}static/vlmcs${SUFFIX}-static export MULTI_NAME=${INSTALLDIR}static/vlmcsdmulti${SUFFIX}-static export CC=/opt/toolchains/mips32el-mips16-musl-fpu/usr/bin/mipsel-linux-cc export PLATFORMFLAGS="-flto=16 -fwhole-program -mips16" export FEATURES=full export CFLAGS="$SMALLCC" export LDFLAGS="$SMALLLD -static" export THREADS=0 export CRYPTO=internal export NOPROCFS=0 export AUXV=1 make $MAKEFLAGS allmulti if [ $? != 0 ]; then echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME exit $? fi # Linux x86 uclibc INSTALLDIR=../binaries/Linux/intel/uclibc/ SUFFIX=-x86-uclibc export PROGRAM_NAME=${INSTALLDIR}vlmcsd${SUFFIX} export CLIENT_NAME=${INSTALLDIR}vlmcs${SUFFIX} export MULTI_NAME=${INSTALLDIR}vlmcsdmulti${SUFFIX} export CC=/opt/toolchains/i486-uclibc-0.9.33/bin/i486-linux-gcc export PLATFORMFLAGS="-flto=16 -fwhole-program -m32 -march=i486 -mtune=generic" export FEATURES=full export CFLAGS="$SMALLCC" export LDFLAGS="$SMALLLD -Wl,--hash-style=gnu" export THREADS=0 export CRYPTO=internal export NOPROCFS=0 export AUXV=0 make $MAKEFLAGS allmulti if [ $? != 0 ]; then echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME exit $? fi #make $MAKEFLAGS CLIENT_NAME=../binaries/Linux/intel/glibc/vlmcs-x64-glibc LDFLAGS="-Wl,--hash-style=gnu" CFLAGS="$SMALL -pipe -flto=16 -fwhole-program" PROGRAM_NAME=../binaries/Linux/intel/glibc/vlmcsd-x64-glibc CC=/opt/toolchains/x86_64-glibc-2.19/usr/bin/x86_64-linux-gcc PLATFORMFLAGS="-m64 -mtune=generic"&& \ # Linux x64 glibc INSTALLDIR=../binaries/Linux/intel/glibc/ SUFFIX=-x64-glibc export PROGRAM_NAME=${INSTALLDIR}vlmcsd${SUFFIX} export CLIENT_NAME=${INSTALLDIR}vlmcs${SUFFIX} export MULTI_NAME=${INSTALLDIR}vlmcsdmulti${SUFFIX} export CC=/opt/toolchains/x86_64-glibc-2.19/usr/bin/x86_64-linux-gcc export PLATFORMFLAGS="-flto=16 -fwhole-program -m64 -mtune=generic" export FEATURES=full export CFLAGS="$SMALLCC" export LDFLAGS="$SMALLLD -Wl,--hash-style=gnu" export THREADS=0 export CRYPTO=internal make $MAKEFLAGS allmulti if [ $? != 0 ]; then echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME exit $? fi #Linux Sparc32v7 glibc INSTALLDIR=../binaries/Linux/sparc/glibc/ SUFFIX=-sparc32v7-glibc export PROGRAM_NAME=${INSTALLDIR}vlmcsd${SUFFIX} export CLIENT_NAME=${INSTALLDIR}vlmcs${SUFFIX} export MULTI_NAME=${INSTALLDIR}vlmcsdmulti${SUFFIX} export CC=/opt/toolchains/sparc32-glibc-gcc-4.7.4/bin/sparc-buildroot-linux-gnu-gcc export PLATFORMFLAGS="-flto=16 -fwhole-program -mcpu=v7" export FEATURES=full export CFLAGS="$SMALLCC" export LDFLAGS="$SMALLLD" export THREADS=0 export CRYPTO=internal make $MAKEFLAGS allmulti if [ $? != 0 ]; then echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME exit $? fi #make $MAKEFLAGS ../binaries/Linux/intel/glibc/vlmcsd-x64-glibc-threads CLIENT_NAME=../binaries/Linux/intel/glibc/vlmcs-x64-glibc-threads THREADS=1 LDFLAGS="-Wl,--hash-style=gnu -lpthread" CFLAGS="-pipe -flto=16 -fwhole-program" PROGRAM_NAME=../binaries/Linux/intel/glibc/vlmcsd-x64-glibc-threads CC=/opt/toolchains/x86_64-glibc-2.19/usr/bin/x86_64-linux-gcc PLATFORMFLAGS="-m64 -mtune=generic"&& \ # Linux x64 glibc with threads INSTALLDIR=../binaries/Linux/intel/glibc/ SUFFIX=-x64-glibc-threads export PROGRAM_NAME=${INSTALLDIR}vlmcsd${SUFFIX} export CLIENT_NAME=${INSTALLDIR}vlmcs${SUFFIX} export MULTI_NAME=${INSTALLDIR}vlmcsdmulti${SUFFIX} export CC=/opt/toolchains/x86_64-glibc-2.19/usr/bin/x86_64-linux-gcc export PLATFORMFLAGS="-flto=16 -fwhole-program -m64 -mtune=generic" export FEATURES=full export CFLAGS="$SMALLCC" export LDFLAGS="$SMALLLD -Wl,--hash-style=gnu -lpthread" export THREADS=1 export CRYPTO=internal make $MAKEFLAGS $PROGRAM_NAME if [ $? != 0 ]; then echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME exit $? fi #make $MAKEFLAGS LDFLAGS="-Wl,--hash-style=gnu" CLIENT_NAME=../binaries/Linux/intel/glibc/vlmcs-x64-glibc-openssl1.0.0-hard-EXPERIMENTAL CRYPTO=openssl_with_aes CFLAGS="$SMALL -pipe -flto=16 -fwhole-program" PROGRAM_NAME=../binaries/Linux/intel/glibc/vlmcsd-x64-glibc-openssl1.0.0-hard-EXPERIMENTAL CC=/opt/toolchains/x86_64-glibc-2.19/usr/bin/x86_64-linux-gcc PLATFORMFLAGS="-m64 -mtune=generic" && \ # Linux x64 glibc with OpenSSL 1.0.x support INSTALLDIR=../binaries/Linux/intel/glibc/ SUFFIX=-x64-glibc-openssl1.0.0-hard-EXPERIMENTAL export PROGRAM_NAME=${INSTALLDIR}vlmcsd${SUFFIX} export CLIENT_NAME=${INSTALLDIR}vlmcs${SUFFIX} export MULTI_NAME=${INSTALLDIR}vlmcsdmulti${SUFFIX} export CC=/opt/toolchains/x86_64-glibc-2.19/usr/bin/x86_64-linux-gcc export PLATFORMFLAGS="-flto=16 -fwhole-program -m64 -mtune=generic" export FEATURES=full export CFLAGS="$SMALLCC" export LDFLAGS="$SMALLLD -Wl,--hash-style=gnu" export THREADS=0 export CRYPTO=openssl_with_aes make $MAKEFLAGS allmulti if [ $? != 0 ]; then echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME exit $? fi # Linux x64 musl INSTALLDIR=../binaries/Linux/intel/ SUFFIX=-x64-musl export PROGRAM_NAME=${INSTALLDIR}musl/vlmcsd${SUFFIX} export CLIENT_NAME=${INSTALLDIR}musl/vlmcs${SUFFIX} export MULTI_NAME=${INSTALLDIR}musl/vlmcsdmulti${SUFFIX} #export CC=/opt/toolchains/x86_64_gcc-4.9-linaro_musl-1.1.6/bin/x86_64-openwrt-linux-musl-gcc-4.9.2 export CC=/opt/toolchains/x86_64-musl-gcc-5.3.0-binutils-2.25.1/bin/x86_64-Hotbird-linux-musl-gcc.br_real export PLATFORMFLAGS="-flto=16 -fwhole-program -m64 -mtune=generic" export FEATURES=full export CFLAGS="$SMALLCC" export LDFLAGS="$SMALLLD -Wl,--hash-style=gnu" export THREADS=0 export CRYPTO=internal export NOPROCFS=0 export AUXV=1 make $MAKEFLAGS allmulti if [ $? != 0 ]; then echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME exit $? fi export PROGRAM_NAME=${INSTALLDIR}static/vlmcsd${SUFFIX}-static export CLIENT_NAME=${INSTALLDIR}static/vlmcs${SUFFIX}-static export MULTI_NAME=${INSTALLDIR}static/vlmcsdmulti${SUFFIX}-static export LDFLAGS="$SMALLLD -Wl,--hash-style=gnu -static" make $REUSEOBJFLAGS allmulti if [ $? != 0 ]; then echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME exit $? fi #make $MAKEFLAGS CC=/opt/toolchains/x86_64-uclibc-0.9.33/bin/x86_64-linux-gcc LDFLAGS="-Wl,--hash-style=gnu" CLIENT_NAME=../binaries/Linux/intel/uclibc/vlmcs-x64-uclibc PROGRAM_NAME=../binaries/Linux/intel/uclibc/vlmcsd-x64-uclibc CFLAGS="$SMALL -flto=16 -fwhole-program -pipe -fno-stack-protector" && \ # Linux x64 uclibc INSTALLDIR=../binaries/Linux/intel/uclibc/ SUFFIX=-x64-uclibc export PROGRAM_NAME=${INSTALLDIR}vlmcsd${SUFFIX} export CLIENT_NAME=${INSTALLDIR}vlmcs${SUFFIX} export MULTI_NAME=${INSTALLDIR}vlmcsdmulti${SUFFIX} export CC=/opt/toolchains/x86_64-uclibc-0.9.33/bin/x86_64-linux-gcc export PLATFORMFLAGS="-flto=16 -fwhole-program -m64 -mtune=generic" export FEATURES=full export CFLAGS="$SMALLCC" export LDFLAGS="$SMALLLD -Wl,--hash-style=gnu" export THREADS=0 export CRYPTO=internal export NOPROCFS=0 export AUXV=0 make $MAKEFLAGS allmulti if [ $? != 0 ]; then echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME exit $? fi # mips32 little-endian DD-WRT toolchain with gcc 4.1.0 export CC=/opt/simplebuild/toolchains/ddwrt410/bin/mipsel-linux-gcc INSTALLDIR=../binaries/Linux/mips/little-endian/ SUFFIX=-mips32el-ddwrt-gcc$($CC -dumpversion)-uclibc export PROGRAM_NAME=${INSTALLDIR}uclibc/vlmcsd${SUFFIX} export CLIENT_NAME=${INSTALLDIR}uclibc/vlmcs${SUFFIX} export MULTI_NAME=${INSTALLDIR}uclibc/vlmcsdmulti${SUFFIX} export PLATFORMFLAGS="-pipe -mips32" export FEATURES=full export CFLAGS="$SMALLCC" export LDFLAGS="-fwhole-program" export THREADS=0 export CRYPTO=internal make $MAKEFLAGS GETIFADDRS=musl CAT=2 SAFE_MODE=1 $PROGRAM_NAME $MULTI_NAME $CLIENT_NAME if [ $? != 0 ]; then echo Error creating $PROGRAM_NAME, $MULTI_NAME and/or $CLIENT_NAME exit $? fi export PROGRAM_NAME=${INSTALLDIR}static/vlmcsd${SUFFIX}-static export CLIENT_NAME=${INSTALLDIR}static/vlmcs${SUFFIX}-static export MULTI_NAME=${INSTALLDIR}static/vlmcsdmulti${SUFFIX}-static export LDFLAGS="-fwhole-program -static" make $REUSEOBJFLAGS GETIFADDRS=musl CAT=2 SAFE_MODE=1 $PROGRAM_NAME $MULTI_NAME $CLIENT_NAME if [ $? != 0 ]; then echo Error creating $PROGRAM_NAME, $MULTI_NAME and/or $CLIENT_NAME exit $? fi #Linux mips32 little-endian uclibc INSTALLDIR=../binaries/Linux/mips/little-endian/ SUFFIX=-mips32el-uclibc export PROGRAM_NAME=${INSTALLDIR}uclibc/vlmcsd${SUFFIX} export CLIENT_NAME=${INSTALLDIR}uclibc/vlmcs${SUFFIX} export MULTI_NAME=${INSTALLDIR}uclibc/vlmcsdmulti${SUFFIX} export CC=/opt/toolchains/mips32el-uclibc-0.9.33/bin/mipsel-linux-gcc export PLATFORMFLAGS="-flto=16 -fwhole-program -mips32" export FEATURES=full export CFLAGS="$SMALLCC" export LDFLAGS="$SMALLLD" export THREADS=0 export CRYPTO=internal make $MAKEFLAGS allmulti if [ $? != 0 ]; then echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME exit $? fi export PROGRAM_NAME=${INSTALLDIR}static/vlmcsd${SUFFIX}-static export CLIENT_NAME=${INSTALLDIR}static/vlmcs${SUFFIX}-static export MULTI_NAME=${INSTALLDIR}static/vlmcsdmulti${SUFFIX}-static export LDFLAGS="$SMALLLD -static" make $REUSEOBJFLAGS allmulti if [ $? != 0 ]; then echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME exit $? fi #Linux armv6 hard-float little-endian. Used on Raspberry Pi with Raspbian. #The hard-float ABI cannot be combined with thumb. #You may wish to use armv5el-thumb instead because the binary is smaller INSTALLDIR=../binaries/Linux/arm/little-endian/glibc/ SUFFIX=-armv6hf-Raspberry-glibc export PROGRAM_NAME=${INSTALLDIR}vlmcsd${SUFFIX} export CLIENT_NAME=${INSTALLDIR}vlmcs${SUFFIX} export MULTI_NAME=${INSTALLDIR}vlmcsdmulti${SUFFIX} export CC=/opt/toolchains/armhfv6-glibc-2.19/bin/arm-linux-gcc export PLATFORMFLAGS="-flto=16 -fwhole-program -march=armv6zk -mfpu=vfp -mfloat-abi=hard -mtune=arm1176jzf-s" export FEATURES=full export CFLAGS="$SMALLCC" export LDFLAGS="$SMALLLD -Wl,--hash-style=gnu" export THREADS=0 export CRYPTO=internal make $MAKEFLAGS allmulti if [ $? != 0 ]; then echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME exit $? fi # Linux arm big-endian uclibc INSTALLDIR=../binaries/Linux/arm/big-endian/ SUFFIX=-armeb-nslu2-uclibc export PROGRAM_NAME=${INSTALLDIR}uclibc/vlmcsd${SUFFIX} export CLIENT_NAME=${INSTALLDIR}uclibc/vlmcs${SUFFIX} export MULTI_NAME=${INSTALLDIR}uclibc/vlmcsdmulti${SUFFIX} export CC=/opt/simplebuild/toolchains/nslu2open/bin/armeb-linux-uclibc-gcc export PLATFORMFLAGS="-pipe" export FEATURES=full export CFLAGS="$SMALLCC" export LDFLAGS="-Wl,-z,norelo" export THREADS=0 make $MAKEFLAGS GETIFADDRS=musl SAFE_MODE=1 CAT=2 $CLIENT_NAME $PROGRAM_NAME $MULTI_NAME if [ $? != 0 ]; then echo Error creating $CLIENT_NAME, $MULTI_NAME and/or $PROGRAM_NAME exit $? fi export PROGRAM_NAME=${INSTALLDIR}static/vlmcsd${SUFFIX}-static export CLIENT_NAME=${INSTALLDIR}static/vlmcs${SUFFIX}-static export MULTI_NAME=${INSTALLDIR}static/vlmcsdmulti${SUFFIX}-static export LDFLAGS="-Wl,-z,norelo -static" make $REUSEOBJFLAGS GETIFADDRS=musl SAFE_MODE=1 CAT=2 $CLIENT_NAME $PROGRAM_NAME $MULTI_NAME if [ $? != 0 ]; then echo Error creating $CLIENT_NAME, $MULTI_NAME and/or $PROGRAM_NAME exit $? fi # Strip off unnecessary stuff from ../binaries #find ../binaries -xdev -name 'vlmcs*' -exec /opt/toolchains/mips32el-mips16-glibc-2.18/usr/bin/mipsel-linux-strip -s --strip-unneeded --remove-section=.note.gnu.gold-version --remove-section=.comment --remove-section=.note --remove-section=.note.gnu.build-id --remove-section=.note.ABI-tag {} \; 2>/dev/null #find ../binaries -xdev -name 'vlmcs*' -exec strip -s --strip-unneeded --remove-section=.note.gnu.gold-version --remove-section=.comment --remove-section=.note --remove-section=.note.gnu.build-id --remove-section=.note.ABI-tag {} \; 2>/dev/null find ../binaries -xdev -name 'vlmcs*' ! -name '*-NetBSD-*' ! -name '*-Windows-*' ! -name '*-cygwin-*' ! -name '*-MacOSX-*' ! -name '*-iOS-*' -exec sstrip -z {} \; cd .. make alldocs rm build/*.o #cp -p ../binaries/Linux/intel/glibc/vlmcs-x32-glibc /usr/local/bin/vlmcs if [ `lsb_release -is` == "Debian" ]; then cp -pf binaries/Linux/intel/glibc/vlmcsdmulti-x86-glibc /usr/local/sbin/vlmcsdmulti else cp -pf binaries/Linux/intel/glibc/vlmcsdmulti-x32-glibc /usr/local/sbin/vlmcsdmulti fi ln -s vlmcsdmulti /usr/local/sbin/vlmcsd 2>/dev/null ln -s ../sbin/vlmcsdmulti /usr/local/bin/vlmcs 2>/dev/null mkdir -p /usr/local/man/man1 2>/dev/null mkdir -p /usr/local/man/man5 2>/dev/null mkdir -p /usr/local/man/man8 2>/dev/null mkdir -p /usr/local/man/man7 2>/dev/null cp -a man/vlmcs.1 man/vlmcsdmulti.1 /usr/local/man/man1/ cp -a man/vlmcsd-floppy.7 man/vlmcsd.7 /usr/local/man/man7/ cp -a man/vlmcsd.8 /usr/local/man/man8/ cp -a man/vlmcsd.ini.5 /usr/local/man/man5/ pbzip2 -f -9 /usr/local/man/man7/vlmcsd-floppy.7 /usr/local/man/man5/vlmcsd.ini.5 /usr/local/man/man1/vlmcs.1 /usr/local/man/man1/vlmcsdmulti.1 /usr/local/man/man7/vlmcsd.7 /usr/local/man/man8/vlmcsd.8 #pbzip2 -f /usr/local/man/man7/vlmcsd.7 #pbzip2 -f /usr/local/man/man8/vlmcsd.8 mandb >/dev/null 2>&1