You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

92 satır
4.0KB

  1. SHELL:=/bin/bash
  2. UBUNTU_VERSION ?= 2404
  3. CODENAME ?= noble
  4. VERSION:=0.1.7
  5. build: $(CODENAME)/cppse-fastpfor_$(VERSION)_amd64.deb
  6. $(CODENAME)/cppse-fastpfor_$(VERSION)_amd64.deb:
  7. mkdir -p $(CODENAME)
  8. make ubuntu$(UBUNTU_VERSION)
  9. ubuntu1804:
  10. #git clone https://github.com/lemire/FastPFor
  11. git clone https://github.com/rayburgemeestre/FastPFor
  12. pushd FastPFor && git checkout change-google-test-branch
  13. bash ../ubuntu1804.sh make impl
  14. make package-ubuntu1804
  15. ubuntu2004:
  16. git clone https://github.com/rayburgemeestre/FastPFor
  17. pushd FastPFor && git checkout change-google-test-branch # master at the time of writing
  18. bash ../ubuntu2004.sh make impl
  19. make package-ubuntu2004
  20. bash ../ubuntu2004.sh chown $$(id -u):$$(id -g) . -R # fix permissions
  21. ubuntu2204:
  22. git clone https://github.com/rayburgemeestre/FastPFor
  23. pushd FastPFor && git checkout change-google-test-branch # master at the time of writing
  24. bash ../ubuntu2204.sh make impl
  25. make package-ubuntu2204
  26. bash ../ubuntu2204.sh chown $$(id -u):$$(id -g) . -R # fix permissions
  27. ubuntu$(UBUNTU_VERSION):
  28. git clone https://github.com/rayburgemeestre/FastPFor || true
  29. pushd FastPFor && git checkout change-google-test-branch # master at the time of writing
  30. bash ../ubuntu$(UBUNTU_VERSION).sh make impl
  31. make package-ubuntu$(UBUNTU_VERSION)
  32. bash ../ubuntu$(UBUNTU_VERSION).sh chown $$(id -u):$$(id -g) . -R # fix permissions
  33. impl:
  34. patch FastPFor/CMakeLists.txt libcpp.patch
  35. switch-to-latest-clang
  36. pushd FastPFor && \
  37. CXX=$$(which c++) cmake . && \
  38. make -j $$(nproc)
  39. package-ubuntu1804:
  40. rm -rf out
  41. mkdir -p out/opt/cppse/build/fastpfor/lib
  42. mkdir -p out/opt/cppse/build/fastpfor/include
  43. cp -prv ./FastPFor/libFastPFOR.a out/opt/cppse/build/fastpfor/lib/
  44. cp -prv ./FastPFor/headers out/opt/cppse/build/fastpfor/include/
  45. rm -rf fastpfor_*_amd64.deb
  46. docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:18.04 fpm -f -v 1.1 -s dir -t deb -n fastpfor --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "fastpfor - build dependency" --url "https://github.com/rayburgemeestre/FastPFor" --deb-generate-changes -C /src/out
  47. package-ubuntu2004:
  48. rm -rf out
  49. mkdir -p out/opt/cppse/build/fastpfor/lib
  50. mkdir -p out/opt/cppse/build/fastpfor/include
  51. cp -prv ./FastPFor/libFastPFOR.a out/opt/cppse/build/fastpfor/lib/
  52. cp -prv ./FastPFor/headers out/opt/cppse/build/fastpfor/include/
  53. rm -rf fastpfor_*_amd64.deb
  54. docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:20.04 fpm -f -v 1.1 -s dir -t deb -n fastpfor --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "fastpfor - build dependency" --url "https://github.com/rayburgemeestre/FastPFor" --deb-generate-changes -C /src/out
  55. package-ubuntu2204:
  56. rm -rf out
  57. mkdir -p out/opt/cppse/build/fastpfor/lib
  58. mkdir -p out/opt/cppse/build/fastpfor/include
  59. cp -prv ./FastPFor/libFastPFOR.a out/opt/cppse/build/fastpfor/lib/
  60. cp -prv ./FastPFor/headers out/opt/cppse/build/fastpfor/include/
  61. rm -rf fastpfor_*_amd64.deb
  62. docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:22.04 fpm -f -v 1.1.1 -s dir -t deb -n fastpfor --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "fastpfor - build dependency" --url "https://github.com/rayburgemeestre/FastPFor" --deb-generate-changes -C /src/out
  63. package-ubuntu$(UBUNTU_VERSION):
  64. rm -rf out
  65. mkdir -p out/opt/cppse/build/fastpfor/lib
  66. mkdir -p out/opt/cppse/build/fastpfor/include
  67. cp -prv ./FastPFor/libFastPFOR.a out/opt/cppse/build/fastpfor/lib/
  68. cp -prv ./FastPFor/headers out/opt/cppse/build/fastpfor/include/
  69. rm -rf $(CODENAME)/cppse-fastpfor_*_amd64.deb
  70. docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:24.04 fpm -f -v $(VERSION) --iteration $(CODENAME) -s dir -t deb -n cppse-fastpfor --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "fastpfor - build dependency" --url "https://github.com/rayburgemeestre/FastPFor" --deb-generate-changes -C /src/out
  71. cp -prv cppse-fastpfor_*_amd64.deb $(CODENAME)/
  72. clean:
  73. rm -rf FastPFor
  74. rm -rf out
  75. shell:
  76. FLAGS="-i --privileged" bash ../ubuntu1804.sh /bin/bash