make_mainframe_linux 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. #!/bin/bash
  2. SMALLCC="-pipe -fno-common -fno-exceptions -fno-stack-protector -fno-unwind-tables -fno-asynchronous-unwind-tables -fmerge-all-constants"
  3. SMALLLD="-pipe -Wl,--hash-style=sysv -Wl,-z,norelro -Wl,--build-id=none"
  4. SMALL="$SMALLCC $SMALLLD"
  5. export CFLAGS="$SMALLCC"
  6. export PLATFORMFLAGS="-flto=jobserver -fwhole-program -m31 -mesa -mpacked-stack -msmall-exec"
  7. export LDFLAGS="$SMALLLD -Wl,--hash-style=gnu"
  8. export THREADS=0
  9. export FEATURES=full
  10. export MULTI_NAME=vlmcsdmulti-s390-glibc
  11. export CLIENT_NAME=vlmcs-s390-glibc
  12. export PROGRAM_NAME=vlmcsd-s390-glibc
  13. make -B -j`nproc` $CLIENT_NAME $PROGRAM_NAME
  14. rm -f vlmcsd.o vlmcs.o vlmcsdmulti.o
  15. make -j`nproc` $MULTI_NAME
  16. sstrip -z $CLIENT_NAME $PROGRAM_NAME $MULTI_NAME
  17. export PLATFORMFLAGS="-flto=jobserver -fwhole-program -m64 -mzarch -mpacked-stack -msmall-exec"
  18. export MULTI_NAME=vlmcsdmulti-s390x-glibc
  19. export CLIENT_NAME=vlmcs-s390x-glibc
  20. export PROGRAM_NAME=vlmcsd-s390x-glibc
  21. make -B -j`nproc` $CLIENT_NAME $PROGRAM_NAME
  22. rm -f vlmcsd.o vlmcs.o vlmcsdmulti.o
  23. export PLATFORMFLAGS="-flto=jobserver -fwhole-program -m64 -mzarch -mpacked-stack -msmall-exec"
  24. make -j`nproc` $MULTI_NAME
  25. sstrip -z $CLIENT_NAME $PROGRAM_NAME $MULTI_NAME
  26. cp -af vlmcsd-s390-glibc /usr/local/sbin/vlmcsd
  27. cp -af vlmcs-s390-glibc /usr/local/bin/vlmcs
  28. mkdir -p /usr/local/man/man1 2>/dev/null
  29. mkdir -p /usr/local/man/man5 2>/dev/null
  30. mkdir -p /usr/local/man/man8 2>/dev/null
  31. mkdir -p /usr/local/man/man7 2>/dev/null
  32. cp -a vlmcs.1 vlmcsdmulti.1 /usr/local/man/man1/
  33. cp -a vlmcsd.7 /usr/local/man/man7/
  34. cp -a vlmcsd.8 /usr/local/man/man8/
  35. cp -a vlmcsd.ini.5 /usr/local/man/man5/
  36. pbzip2 -f -9 /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
  37. scp -p vlmcsdmulti-s390-glibc vlmcs-s390-glibc vlmcsd-s390-glibc vlmcsdmulti-s390x-glibc vlmcs-s390x-glibc vlmcsd-s390x-glibc ubuntu64.internal:x/binaries/Linux/s390/glibc