build.windows.release.sh 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. #!/bin/bash
  2. set -xe
  3. git clone https://github.com/curl/curl --depth=1
  4. cd curl
  5. cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_USE_LIBSSH2=OFF -DHTTP_ONLY=ON -DCMAKE_USE_SCHANNEL=ON -DBUILD_SHARED_LIBS=OFF -DBUILD_CURL_EXE=OFF -DCMAKE_INSTALL_PREFIX="$MINGW_PREFIX" -G "Unix Makefiles" .
  6. make install -j4
  7. cd ..
  8. git clone https://github.com/jbeder/yaml-cpp --depth=1
  9. cd yaml-cpp
  10. cmake -DCMAKE_BUILD_TYPE=Release -DYAML_CPP_BUILD_TESTS=OFF -DYAML_CPP_BUILD_TOOLS=OFF -DCMAKE_INSTALL_PREFIX="$MINGW_PREFIX" -G "Unix Makefiles" .
  11. make install -j4
  12. cd ..
  13. git clone https://github.com/svaarala/duktape --depth=1
  14. cd duktape
  15. make -C src-tools
  16. node src-tools/index.js dist --output-directory dist
  17. cd dist/src
  18. gcc -c -O3 -o duktape.o duktape.c
  19. gcc -c -O3 -o duk_module_node.o -I. ../extras/module-node/duk_module_node.c
  20. ar cr libduktape.a duktape.o
  21. ar cr libduktape_module.a duk_module_node.o
  22. install -m0644 ./*.a "$MINGW_PREFIX/lib"
  23. install -m0644 ./duk*.h "$MINGW_PREFIX/include"
  24. install -m0644 ../extras/module-node/duk_module_node.h "$MINGW_PREFIX/include"
  25. cd ../../..
  26. git clone https://github.com/Tencent/rapidjson --depth=1
  27. cd rapidjson
  28. cmake -DRAPIDJSON_BUILD_DOC=OFF -DRAPIDJSON_BUILD_EXAMPLES=OFF -DRAPIDJSON_BUILD_TESTS=OFF -DCMAKE_INSTALL_PREFIX="$MINGW_PREFIX" -G "Unix Makefiles" .
  29. make install -j4
  30. cd ..
  31. cmake -DCMAKE_BUILD_TYPE=Release -G "Unix Makefiles" .
  32. make -j4
  33. rm subconverter.exe
  34. g++ $(find CMakeFiles/subconverter.dir/src -name "*.obj") curl/lib/libcurl.a -o base/subconverter.exe -static -levent -lpcre2-8 -lduktape -lduktape_module -lyaml-cpp -lcrypt32 -lws2_32 -lwsock32 -lz -s
  35. mv base subconverter