build.macos.release.sh 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. #!/bin/bash
  2. set -xe
  3. brew reinstall rapidjson libevent zlib pcre2 bzip2 libssh2 pkgconfig
  4. git clone https://github.com/curl/curl --depth=1
  5. cd curl
  6. #./buildconf > /dev/null
  7. #./configure --with-ssl=/usr/local/opt/[email protected] --without-mbedtls --disable-ldap --disable-ldaps --disable-rtsp --without-libidn2 > /dev/null
  8. cmake -DHTTP_ONLY=ON -DBUILD_TESTING=OFF -DBUILD_SHARED_LIBS=OFF -DOPENSSL_ROOT_DIR=/usr/local/opt/[email protected] . > /dev/null
  9. make -j8 > /dev/null
  10. cd ..
  11. git clone https://github.com/jbeder/yaml-cpp --depth=1
  12. cd yaml-cpp
  13. cmake -DYAML_CPP_BUILD_TESTS=OFF -DYAML_CPP_BUILD_TOOLS=OFF . > /dev/null
  14. make install -j8 > /dev/null
  15. cd ..
  16. git clone https://github.com/svaarala/duktape --depth=1
  17. cd duktape
  18. pip2 install PyYAML
  19. python2 util/dist.py
  20. cd dist/src
  21. cc -c -O3 -o duktape.o duktape.c
  22. cc -c -O3 -o duk_module_node.o -I. ../extras/module-node/duk_module_node.c
  23. ar cr libduktape.a duktape.o
  24. ar cr libduktape_module.a duk_module_node.o
  25. install -m0644 *.a /usr/local/lib
  26. install -m0644 duk*.h /usr/local/include
  27. install -m0644 ../extras/module-node/duk_module_node.h /usr/local/include
  28. cd ../../..
  29. cp curl/lib/libcurl.a .
  30. cp yaml-cpp/libyaml-cpp.a .
  31. cp duktape/dist/src/*.a .
  32. cp /usr/local/lib/libevent.a .
  33. cp /usr/local/opt/zlib/lib/libz.a .
  34. cp /usr/local/opt/[email protected]/lib/libssl.a .
  35. cp /usr/local/opt/[email protected]/lib/libcrypto.a .
  36. cp /usr/local/lib/libpcre2-8.a .
  37. cp /usr/local/opt/bzip2/lib/libbz2.a .
  38. cp /usr/local/lib/libssh2.a .
  39. export CMAKE_CXX_FLAGS="-I/usr/local/include -I/usr/local/opt/[email protected]/include -I/usr/local/opt/curl/include"
  40. cmake -DOPENSSL_ROOT_DIR=/usr/local/opt/[email protected] .
  41. make -j8
  42. rm subconverter
  43. c++ -Xlinker -unexported_symbol -Xlinker "*" -o base/subconverter CMakeFiles/subconverter.dir/src/*.o libpcre2-8.a libevent.a libcurl.a libz.a libssl.a libcrypto.a libyaml-cpp.a libbz2.a libssh2.a libduktape.a libduktape_module.a -ldl -lpthread -O3
  44. cd base
  45. chmod +rx subconverter
  46. chmod +r *
  47. cd ..
  48. mv base subconverter
  49. set +xe