diff options
author | Austin S. Hemmelgarn <austin@netdata.cloud> | 2020-04-17 07:44:37 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-04-17 07:44:37 -0400 |
commit | 10a8fd9e8eeac6946c35e830ee6bd5cd029bcadb (patch) | |
tree | 18f7ced8924ede4cba567aafc67dd2ae2c6b2019 /netdata-installer.sh | |
parent | f1045ebccf7b8fa5031aaf72932d516aa6453aa0 (diff) |
Added support for building libmosquitto on FreeBSD/macOS. (#8254)
* Add support for building libmosquitto on BSD/macOS.
This takes advantage fo the fact that cmake is now a required buil
ddependency to allow building libmosquitto on BSD and macOS systems.
* Fix builds on macOS without brew sh
Co-authored-by: James Mills <prologic@shortcircuit.net.au>
Diffstat (limited to 'netdata-installer.sh')
-rwxr-xr-x | netdata-installer.sh | 72 |
1 files changed, 43 insertions, 29 deletions
diff --git a/netdata-installer.sh b/netdata-installer.sh index 95fb807cf9..4f53045acb 100755 --- a/netdata-installer.sh +++ b/netdata-installer.sh @@ -471,7 +471,23 @@ trap build_error EXIT # ----------------------------------------------------------------------------- build_libmosquitto() { - run env CFLAGS= CXXFLAGS= LDFLAGS= make -C "${1}/lib" + if [ "$(uname -s)" = Linux ]; then + run env CFLAGS= CXXFLAGS= LDFLAGS= 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 \ + -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 . + fi + run env CFLAGS= CXXFLAGS= LDFLAGS= make -C lib + run mv lib/libmosquitto_static.a lib/libmosquitto.a + popd || return 1 + fi } copy_libmosquitto() { @@ -489,12 +505,6 @@ bundle_libmosquitto() { return 0 fi - if [ "$(uname)" != "Linux" ]; then - echo >&2 " Sorry NetData with custom libmosquitto is unsupported on $(uname) at this time!" - echo >&2 " Please contact NetData suppoort! https://github.com/netdata/netdata/issues/new" - return 0 - fi - progress "Prepare custom libmosquitto version" MOSQUITTO_PACKAGE_VERSION="$(cat packaging/mosquitto.version)" @@ -503,16 +513,14 @@ bundle_libmosquitto() { MOSQUITTO_PACKAGE_BASENAME="${MOSQUITTO_PACKAGE_VERSION}.tar.gz" if fetch_and_verify "mosquitto" \ - "https://github.com/netdata/mosquitto/archive/${MOSQUITTO_PACKAGE_BASENAME}" \ - "${MOSQUITTO_PACKAGE_BASENAME}" \ - "${tmp}" \ - "${NETDATA_LOCAL_TARBALL_OVERRIDE_MOSQUITTO}" - then - if run tar -xf "${tmp}/${MOSQUITTO_PACKAGE_BASENAME}" -C "${tmp}" && \ - build_libmosquitto "${tmp}/mosquitto-${MOSQUITTO_PACKAGE_VERSION}" && \ - copy_libmosquitto "${tmp}/mosquitto-${MOSQUITTO_PACKAGE_VERSION}" && \ - rm -rf "${tmp}" - then + "https://github.com/netdata/mosquitto/archive/${MOSQUITTO_PACKAGE_BASENAME}" \ + "${MOSQUITTO_PACKAGE_BASENAME}" \ + "${tmp}" \ + "${NETDATA_LOCAL_TARBALL_OVERRIDE_MOSQUITTO}"; then + if run tar -xf "${tmp}/${MOSQUITTO_PACKAGE_BASENAME}" -C "${tmp}" && + build_libmosquitto "${tmp}/mosquitto-${MOSQUITTO_PACKAGE_VERSION}" && + copy_libmosquitto "${tmp}/mosquitto-${MOSQUITTO_PACKAGE_VERSION}" && + rm -rf "${tmp}"; then run_ok "libmosquitto built and prepared." else run_failed "Failed to build libmosquitto." @@ -538,7 +546,15 @@ bundle_libmosquitto build_libwebsockets() { pushd "${1}" > /dev/null || exit 1 - run env CFLAGS= CXXFLAGS= LDFLAGS= cmake -D LWS_WITH_SOCKS5:bool=ON . + if [ "$(uname)" = "Darwin" ] && [ -d /usr/local/opt/openssl ]; then + run env CFLAGS= CXXFLAGS= LDFLAGS= cmake \ + -D OPENSSL_ROOT_DIR=/usr/local/opt/openssl \ + -D OPENSSL_LIBRARIES=/usr/local/opt/openssl/lib \ + -D LWS_WITH_SOCKS5:bool=ON \ + . + else + run env CFLAGS= CXXFLAGS= LDFLAGS= cmake -D LWS_WITH_SOCKS5:bool=ON . + fi run env CFLAGS= CXXFLAGS= LDFLAGS= make popd > /dev/null || exit 1 } @@ -553,7 +569,7 @@ copy_libwebsockets() { } bundle_libwebsockets() { - if [ -n "${NETDATA_DISABLE_CLOUD}" ] ; then + if [ -n "${NETDATA_DISABLE_CLOUD}" ]; then return 0 fi @@ -571,16 +587,14 @@ bundle_libwebsockets() { LIBWEBSOCKETS_PACKAGE_BASENAME="v${LIBWEBSOCKETS_PACKAGE_VERSION}.tar.gz" if fetch_and_verify "libwebsockets" \ - "https://github.com/warmcat/libwebsockets/archive/${LIBWEBSOCKETS_PACKAGE_BASENAME}" \ - "${LIBWEBSOCKETS_PACKAGE_BASENAME}" \ - "${tmp}" \ - "${NETDATA_LOCAL_TARBALL_OVERRIDE_LIBWEBSOCKETS}" - then - if run tar -xf "${tmp}/${LIBWEBSOCKETS_PACKAGE_BASENAME}" -C "${tmp}" && \ - build_libwebsockets "${tmp}/libwebsockets-${LIBWEBSOCKETS_PACKAGE_VERSION}" && \ - copy_libwebsockets "${tmp}/libwebsockets-${LIBWEBSOCKETS_PACKAGE_VERSION}" && \ - rm -rf "${tmp}" - then + "https://github.com/warmcat/libwebsockets/archive/${LIBWEBSOCKETS_PACKAGE_BASENAME}" \ + "${LIBWEBSOCKETS_PACKAGE_BASENAME}" \ + "${tmp}" \ + "${NETDATA_LOCAL_TARBALL_OVERRIDE_LIBWEBSOCKETS}"; then + if run tar -xf "${tmp}/${LIBWEBSOCKETS_PACKAGE_BASENAME}" -C "${tmp}" && + build_libwebsockets "${tmp}/libwebsockets-${LIBWEBSOCKETS_PACKAGE_VERSION}" && + copy_libwebsockets "${tmp}/libwebsockets-${LIBWEBSOCKETS_PACKAGE_VERSION}" && + rm -rf "${tmp}"; then run_ok "libwebsockets built and prepared." else run_failed "Failed to build libwebsockets." |