diff options
author | James Mills <prologic@shortcircuit.net.au> | 2020-08-06 13:09:29 +1000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-08-06 13:09:29 +1000 |
commit | 79c56b71c4567ce947e755b5fbe6d0b4eeffd046 (patch) | |
tree | a0e2d365569b05020f076bd0d3549eb4b477acf7 /netdata-installer.sh | |
parent | 921f9f040c717912330099bf826be1ac0626e9bd (diff) |
Fix Static Netdata to correctly build with Netdata Cloud support. (#9381)
* Revert "Revert "Override linker and include paths for static builds. (#9311)" (#9343)"
This reverts commit 36d5e40dca91a93963e4d96f07af3e38803615d0.
* Run git clean before building anything
* Fix checking out openssl and skip if bind-mounted sources already exist at the given path
* Add --require-cloud flag to the static build scripts
* Add CMAKEFLAGS support to the installer to customize how to build libwebsockets for static builds
* Update packaging/makeself/jobs/50-bash-4.4.18.install.sh
Co-authored-by: Andrew Moss <1043609+amoss@users.noreply.github.com>
* Fix remaining other two tyos
Co-authored-by: Andrew Moss <1043609+amoss@users.noreply.github.com>
Diffstat (limited to 'netdata-installer.sh')
-rwxr-xr-x | netdata-installer.sh | 38 |
1 files changed, 29 insertions, 9 deletions
diff --git a/netdata-installer.sh b/netdata-installer.sh index 007018835d..15bd96b258 100755 --- a/netdata-installer.sh +++ b/netdata-installer.sh @@ -235,6 +235,7 @@ while [ -n "${1}" ]; do case "${1}" in "--zlib-is-really-here") LIBS_ARE_HERE=1 ;; "--libs-are-really-here") LIBS_ARE_HERE=1 ;; + "--dont-scrub-cflags-even-though-it-may-break-things") DONT_SCRUB_CFLAGS_EVEN_THOUGH_IT_MAY_BREAK_THINGS=1 ;; "--dont-start-it") DONOTSTART=1 ;; "--dont-wait") DONOTWAIT=1 ;; "--auto-update" | "-u") AUTOUPDATE=1 ;; @@ -467,20 +468,26 @@ trap build_error EXIT # ----------------------------------------------------------------------------- build_libmosquitto() { + local env_cmd='' + + if [ -z "${DONT_SCRUB_CFLAGS_EVEN_THOUGH_IT_MAY_BREAK_THINGS}" ]; then + env_cmd="env CFLAGS= CXXFLAGS= LDFLAGS=" + fi + if [ "$(uname -s)" = Linux ]; then - run env CFLAGS= CXXFLAGS= LDFLAGS= make -C "${1}/lib" + run ${env_cmd} make -C "${1}/lib" else pushd ${1} > /dev/null || return 1 if [ "$(uname)" = "Darwin" ] && [ -d /usr/local/opt/openssl ]; then - run env CFLAGS= CXXFLAGS= LDFLAGS= cmake \ + run ${env_cmd} cmake \ -D OPENSSL_ROOT_DIR=/usr/local/opt/openssl \ -D OPENSSL_LIBRARIES=/usr/local/opt/openssl/lib \ -D WITH_STATIC_LIBRARIES:boolean=YES \ . else - run env CFLAGS= CXXFLAGS= LDFLAGS= cmake -D WITH_STATIC_LIBRARIES:boolean=YES . + run ${env_cmd} cmake -D WITH_STATIC_LIBRARIES:boolean=YES . fi - run env CFLAGS= CXXFLAGS= LDFLAGS= make -C lib + run ${env_cmd} make -C lib run mv lib/libmosquitto_static.a lib/libmosquitto.a popd || return 1 fi @@ -541,17 +548,24 @@ bundle_libmosquitto # ----------------------------------------------------------------------------- build_libwebsockets() { + local env_cmd='' + + if [ -z "${DONT_SCRUB_CFLAGS_EVEN_THOUGH_IT_MAY_BREAK_THINGS}" ]; then + env_cmd="env CFLAGS= CXXFLAGS= LDFLAGS=" + fi + pushd "${1}" > /dev/null || exit 1 if [ "$(uname)" = "Darwin" ] && [ -d /usr/local/opt/openssl ]; then - run env CFLAGS= CXXFLAGS= LDFLAGS= cmake \ + run ${env_cmd} cmake \ -D OPENSSL_ROOT_DIR=/usr/local/opt/openssl \ -D OPENSSL_LIBRARIES=/usr/local/opt/openssl/lib \ -D LWS_WITH_SOCKS5:bool=ON \ + $CMAKE_FLAGS \ . else - run env CFLAGS= CXXFLAGS= LDFLAGS= cmake -D LWS_WITH_SOCKS5:bool=ON . + run ${env_cmd} cmake -D LWS_WITH_SOCKS5:bool=ON $CMAKE_FLAGS . fi - run env CFLAGS= CXXFLAGS= LDFLAGS= make + run ${env_cmd} make popd > /dev/null || exit 1 } @@ -615,9 +629,15 @@ bundle_libwebsockets # ----------------------------------------------------------------------------- build_jsonc() { + local env_cmd='' + + if [ -z "${DONT_SCRUB_CFLAGS_EVEN_THOUGH_IT_MAY_BREAK_THINGS}" ]; then + env_cmd="env CFLAGS= CXXFLAGS= LDFLAGS=" + fi + pushd "${1}" > /dev/null || exit 1 - run env CFLAGS= CXXFLAGS= LDFLAGS= cmake -DBUILD_SHARED_LIBS=OFF . - run env CFLAGS= CXXFLAGS= LDFLAGS= make + run ${env_cmd} cmake -DBUILD_SHARED_LIBS=OFF . + run ${env_cmd} make popd > /dev/null || exit 1 } |