build: refactor static build process
Refactored static build process to use static-build/CMakeLists.txt
instead of Dockerfile.staticbuild (this allows to support static
build on macOS). Following third-party dependencies for static build
are installed via cmake `ExternalProject_Add`:
- OpenSSL
- Zlib
- Ncurses
- Readline
- Unwind
- ICU
* Added support static build for macOS
* Fixed `CONFIGURE_COMMAND` while building bundled libcurl for static
build at file cmake/BuildLibCURL.cmake:
- disable building shared libcurl libraries (by setting
`--disable-shared` option)
- disable hiding libcurl symbols (by setting
`--disable-symbol-hiding` option)
- prevent linking libcurl with system libz (by setting
`--with-zlib=${FOUND_ZLIB_ROOT_DIR}` option)
* Removed Dockerfile.staticbuild
* Added new gitlab.ci jobs to test new style static build:
- static_build_cmake_linux
- static_build_cmake_osx_15
* Removed static_docker_build gitlab.ci job
Closes #5095
Co-authored-by:
Yaroslav Dynnikov <yaroslav.dynnikov@gmail.com>
Showing
- .gitignore 8 additions, 0 deletions.gitignore
- .gitlab-ci.yml 8 additions, 3 deletions.gitlab-ci.yml
- .travis.mk 43 additions, 13 deletions.travis.mk
- Dockerfile.staticbuild 0 additions, 98 deletionsDockerfile.staticbuild
- cmake/BuildLibCURL.cmake 10 additions, 3 deletionscmake/BuildLibCURL.cmake
- cmake/compiler.cmake 18 additions, 6 deletionscmake/compiler.cmake
- cmake/os.cmake 4 additions, 1 deletioncmake/os.cmake
- static-build/CMakeLists.txt 311 additions, 0 deletionsstatic-build/CMakeLists.txt
- static-build/README.md 90 additions, 0 deletionsstatic-build/README.md
- static-build/test/CheckDependencies.cmake 43 additions, 0 deletionsstatic-build/test/CheckDependencies.cmake
- static-build/test/static-build/exports.test.lua 142 additions, 0 deletionsstatic-build/test/static-build/exports.test.lua
- static-build/test/static-build/traceback.test.lua 15 additions, 0 deletionsstatic-build/test/static-build/traceback.test.lua
Loading
Please register or sign in to comment