config 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. # vim: filetype=yaml sw=2
  2. filename: '[% project %]-[% c("version") %]-[% c("var/build_id") %].tar.gz'
  3. version: 7.3.0
  4. var:
  5. container:
  6. use_container: 1
  7. deps:
  8. - build-essential
  9. - libmpc-dev
  10. setup: |
  11. [% c("var/setarch") -%]
  12. mkdir -p /var/tmp/dist
  13. tar -C /var/tmp/dist -xf $rootdir/[% c("compiler_tarfile") %]
  14. export PATH="/var/tmp/dist/gcc/bin:$PATH"
  15. [% IF c("var/32bit") -%]
  16. export LD_LIBRARY_PATH=/var/tmp/dist/gcc/lib
  17. [% ELSE -%]
  18. export LD_LIBRARY_PATH=/var/tmp/dist/gcc/lib64
  19. [% END -%]
  20. [% IF c("hardened_gcc") -%]
  21. # Config options for hardening-wrapper
  22. export DEB_BUILD_HARDENING=1
  23. export DEB_BUILD_HARDENING_STACKPROTECTOR=1
  24. export DEB_BUILD_HARDENING_FORTIFY=1
  25. export DEB_BUILD_HARDENING_FORMAT=1
  26. export DEB_BUILD_HARDENING_PIE=1
  27. # Make sure we use the hardening wrapper
  28. pushd /var/tmp/dist/gcc/bin
  29. cp /usr/bin/hardened-cc ./
  30. mv gcc gcc.real
  31. mv c++ c++.real
  32. mv g++ g++.real
  33. ln -sf hardened-cc gcc
  34. ln -sf hardened-cc c++
  35. ln -sf hardened-cc g++
  36. popd
  37. [% END -%]
  38. targets:
  39. windows:
  40. var:
  41. configure_opt: --disable-multilib --enable-languages=c,c++
  42. arch_deps:
  43. - libc6-dev
  44. - zlib1g-dev
  45. linux:
  46. hardened_gcc: 1
  47. linux-i686:
  48. var:
  49. configure_opt: --enable-multilib --enable-languages=c,c++ --with-system-zlib
  50. arch_deps:
  51. - hardening-wrapper
  52. - libc6-dev
  53. - zlib1g-dev
  54. linux-x86_64:
  55. var:
  56. configure_opt: --enable-multilib --enable-languages=c,c++ --with-arch_32=i686
  57. arch_deps:
  58. - hardening-wrapper
  59. - libc6-dev-i386
  60. linux-arm:
  61. var:
  62. configure_opt: --enable-multilib --enable-languages=c,c++ --with-arch_32=i686
  63. arch_deps:
  64. - hardening-wrapper
  65. - libc6-dev-i386
  66. input_files:
  67. - project: container-image
  68. - URL: 'https://ftp.gnu.org/gnu/gcc/gcc-[% c("version") %]/gcc-[% c("version") %].tar.xz'
  69. sha256sum: 832ca6ae04636adbb430e865a1451adf6979ab44ca1c8374f61fba65645ce15c