選択できるのは25トピックまでです。 トピックは、先頭が英数字で、英数字とダッシュ('-')を使用した35文字以内のものにしてください。

60 行
2.1KB

  1. SHELL:=/bin/bash
  2. v8:
  3. # git clone https://github.com/rayburgemeestre/v8pp
  4. #
  5. git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git
  6. bash ../ubuntu1804.sh make build
  7. bash ../ubuntu1804.sh make archive # outside container not enough permissions
  8. # will be factored out at some point
  9. git clone https://github.com/pmed/v8pp
  10. pushd v8pp && git checkout 8ad6c07b13a811d9132c202f48b4a902d5685a98 # master at time of writing
  11. # also packages v8pp for now
  12. make package
  13. build:
  14. update-alternatives --install /usr/bin/c++ c++ /usr/bin/clang++-9 40
  15. update-alternatives --install /usr/bin/cc cc /usr/bin/clang-9 40
  16. update-alternatives --install /usr/bin/clang++ clang++ /usr/bin/clang++-9 40
  17. update-alternatives --install /usr/bin/clang clang /usr/bin/clang-9 40
  18. update-alternatives --install /usr/bin/ld ld /usr/bin/ld.lld-9 40
  19. apt-get update
  20. apt-get install pkg-config -y
  21. ./build-v8.sh
  22. archive:
  23. rm -rf v8.a
  24. #ar rvs v8.a $$(cat v8-include.txt |xargs -n 1 -I{} find {} -name '*.o')
  25. # third_party/
  26. # excluding buildtools/third_party directory which contains libc++ etc., or you will get linker errors.
  27. # ./out/x64.release/obj/buildtools/third_party/libc++/libc++/
  28. ar rvs v8.a $$(find ./v8/out/x64.release/ -type f -name '*.o' | grep -v "buildtools/third_party/libc++/libc++")
  29. echo all included object files listed below
  30. cat v8-include.txt |xargs -n 1 -I{} find {} -name '*.o'
  31. echo all .so files listed below
  32. find ./ -name '*.so'
  33. package:
  34. rm -rf out
  35. rm -rf v8pp_*_amd64.deb
  36. mkdir -p out/opt/cppse/build/v8pp/lib
  37. mkdir -p out/opt/cppse/build/v8pp/include
  38. cp -prv v8.a out/opt/cppse/build/v8pp/lib
  39. cp -prv v8pp/v8pp out/opt/cppse/build/v8pp/include/
  40. cp -prv v8/include out/opt/cppse/build/v8pp/include/v8
  41. docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:18.04 fpm -v 1.1 -s dir -t deb -n v8pp --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "v8pp - build dependency" --url "https://github.com/rayburgemeestre/v8pp" --deb-generate-changes -C /src/out
  42. clean:
  43. rm -rf v8pp
  44. rm -rf out
  45. rm -rf depot_tools
  46. shell:
  47. FLAGS="-i --privileged" bash ../ubuntu1804.sh /bin/bash