Nevar pievienot vairāk kā 25 tēmas Tēmai ir jāsākas ar burtu vai ciparu, tā var saturēt domu zīmes ('-') un var būt līdz 35 simboliem gara.

126 rindas
4.6KB

  1. SHELL:=/bin/bash
  2. UBUNTU_VERSION ?= 2404
  3. CODENAME ?= noble
  4. VERSION:=1.86.0
  5. build: $(CODENAME)/cppse-boost_$(VERSION)_amd64.deb
  6. $(CODENAME)/cppse-boost_$(VERSION)_amd64.deb:
  7. mkdir -p $(CODENAME)
  8. make ubuntu$(UBUNTU_VERSION)
  9. ubuntu1804:
  10. # below URL is unreliable
  11. # wget "https://dl.bintray.com/boostorg/release/1.72.0/source/boost_1_72_0.tar.bz2"
  12. #tar -xf boost_1_72_0.tar.bz2
  13. git clone --branch boost-1.73.0 --recursive https://github.com/boostorg/boost
  14. bash ../ubuntu1804.sh make impl
  15. make package-ubuntu1804
  16. ubuntu2004:
  17. git clone --branch boost-1.73.0 --recursive https://github.com/boostorg/boost
  18. bash ../ubuntu2004.sh make impl
  19. make package-ubuntu2004
  20. bash ../ubuntu2004.sh chown $$(id -u):$$(id -g) . -R
  21. ubuntu2204:
  22. git clone --branch boost-1.80.0 --recursive https://github.com/boostorg/boost
  23. bash ../ubuntu2204.sh make impl
  24. make package-ubuntu2204
  25. bash ../ubuntu2204.sh chown $$(id -u):$$(id -g) . -R
  26. ubuntu$(UBUNTU_VERSION):
  27. git clone --branch boost-1.86.0 --recursive https://github.com/boostorg/boost
  28. bash ../ubuntu$(UBUNTU_VERSION).sh make impl
  29. make package-ubuntu$(UBUNTU_VERSION)
  30. bash ../ubuntu$(UBUNTU_VERSION).sh chown $$(id -u):$$(id -g) . -R
  31. impl:
  32. switch-to-latest-clang
  33. pushd boost && \
  34. mkdir -p target && \
  35. CXX=$$(which c++) ./bootstrap.sh --prefix=$$PWD/target/ --with-toolset=clang && \
  36. ./b2 clean && \
  37. ./b2 --prefix=$$PWD/target/ toolset=clang cxxflags="-std=c++17 -stdlib=libstdc++ -fPIC" linkflags="-stdlib=libstdc++" --with-program_options \
  38. --with-system \
  39. --with-date_time \
  40. --with-thread \
  41. --with-chrono || true
  42. # do not use -D_GLIBCXX_USE_CXX11_ABI=0 , other libs I now compile with libstdc++ don't do it either.
  43. # with stdlib: \
  44. #./b2 --prefix=$$PWD/target/ toolset=clang cxxflags="-D_GLIBCXX_USE_CXX11_ABI=0 -stdlib=libc++ -std=c++17" linkflags="-stdlib=libc++" || true
  45. # without:
  46. #./b2 --prefix=$$PWD/target/ toolset=clang || true
  47. # ^ ||true because with clang I saw a few libraries not compile correctly, we can ignore those.
  48. #./b2 --with-program_options --prefix=$$PWD/target/ toolset=clang cxxflags="-stdlib=libc++ -std=c++17" linkflags="-stdlib=libc++"
  49. # also from; ./b2 --show-libraries && \
  50. #- atomic
  51. #- container
  52. #- context
  53. #- contract
  54. #- coroutine
  55. #- exception
  56. #- fiber
  57. #- filesystem
  58. #- graph
  59. #- graph_parallel
  60. #- headers
  61. #- iostreams
  62. #- locale
  63. #- log
  64. #- math
  65. #- mpi
  66. #- nowide
  67. #- python
  68. #- random
  69. #- regex
  70. #- serialization
  71. #- stacktrace
  72. #- test
  73. #- timer
  74. #- type_erasure
  75. #- wave
  76. package-ubuntu1804:
  77. rm -rf out
  78. mkdir -p out/opt/cppse/build/boost/include/
  79. cp -L -prv boost/stage/lib out/opt/cppse/build/boost/
  80. cp -L -prv boost/boost out/opt/cppse/build/boost/include/
  81. rm -rf boost_*_amd64.deb
  82. docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:18.04 fpm -f -v 1.1 -s dir -t deb -n boost --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "boost - build dependency" --url "https://github.com/liballeg/boost.git" --deb-generate-changes -C /src/out
  83. package-ubuntu2004:
  84. rm -rf out
  85. mkdir -p out/opt/cppse/build/boost/include/
  86. cp -L -prv boost/stage/lib out/opt/cppse/build/boost/
  87. cp -L -prv boost/boost out/opt/cppse/build/boost/include/
  88. rm -rf boost_*_amd64.deb
  89. docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:20.04 fpm -f -v 1.1 -s dir -t deb -n boost --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "boost - build dependency" --url "https://github.com/liballeg/boost.git" --deb-generate-changes -C /src/out
  90. package-ubuntu2204:
  91. rm -rf out
  92. mkdir -p out/opt/cppse/build/boost/include/
  93. cp -L -prv boost/stage/lib out/opt/cppse/build/boost/
  94. cp -L -prv boost/boost out/opt/cppse/build/boost/include/
  95. rm -rf boost_*_amd64.deb
  96. docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:22.04 fpm -f -v 1.1.1 -s dir -t deb -n boost --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "boost - build dependency" --url "https://github.com/liballeg/boost.git" --deb-generate-changes -C /src/out
  97. package-ubuntu$(UBUNTU_VERSION):
  98. rm -rf out
  99. mkdir -p out/opt/cppse/build/boost/include/
  100. cp -L -prv boost/stage/lib out/opt/cppse/build/boost/
  101. cp -L -prv boost/boost out/opt/cppse/build/boost/include/
  102. rm -rf $(CODENAME)/cppse-boost_*_amd64.deb
  103. docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:24.04 fpm -f -v $(VERSION) --iteration $(CODENAME) -s dir -t deb -n cppse-boost --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "boost - build dependency" --url "https://github.com/liballeg/boost.git" --deb-generate-changes -C /src/out
  104. cp -prv cppse-boost_*_amd64.deb $(CODENAME)/
  105. clean:
  106. rm -rf boost
  107. rm -rf out
  108. shell:
  109. FLAGS="-i --privileged" bash ../ubuntu1804.sh /bin/bash