summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAustin S. Hemmelgarn <austin@netdata.cloud>2024-03-26 07:05:33 -0400
committerAustin S. Hemmelgarn <ahferroin7@gmail.com>2024-03-27 09:30:48 -0400
commite526d03f756a4251ac6ed267a77e942a4dfc62a6 (patch)
treeacce460a552c396d0d2e6760ccc2513f5d80680b
parent2ef91a877c5c9ee449c7be684e35a27a54f46d25 (diff)
Try finding OpenSSL using pkg-config first on macOS. (#17250)
This is required to work correctly in Homebrew, as building within Homebrew does not allow using Homebrew commands, but does generally provide a properly working pkg-config setup. (cherry picked from commit 67549f462669d7e9dfdd85a1e0fdd99e3799e72e)
-rw-r--r--CMakeLists.txt40
1 files changed, 15 insertions, 25 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 026f248a9e..9b8b938382 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -479,40 +479,30 @@ endif()
# openssl/crypto
set(ENABLE_OPENSSL True)
-if(NOT MACOS)
- pkg_check_modules(CRYPTO libcrypto)
- pkg_check_modules(OPENSSL REQUIRED openssl)
-else()
- # I think this is moot because we can only use openssl 3.x
- execute_process(COMMAND
- brew --prefix --installed openssl
- RESULT_VARIABLE BREW_OPENSSL
- OUTPUT_VARIABLE BREW_OPENSSL_PREFIX
- OUTPUT_STRIP_TRAILING_WHITESPACE)
-
- if((BREW_OPENSSL NOT EQUAL 0) OR (NOT EXISTS "${BREW_OPENSSL_PREFIX}"))
+pkg_check_modules(OPENSSL openssl)
+
+if(NOT OPENSSL_FOUND)
+ if(MACOS)
execute_process(COMMAND
- brew --prefix --installed openssl@3
+ brew --prefix --installed openssl
RESULT_VARIABLE BREW_OPENSSL
OUTPUT_VARIABLE BREW_OPENSSL_PREFIX
OUTPUT_STRIP_TRAILING_WHITESPACE)
if((BREW_OPENSSL NOT EQUAL 0) OR (NOT EXISTS "${BREW_OPENSSL_PREFIX}"))
- execute_process(COMMAND
- brew --prefix --installed openssl@1.1
- RESULT_VARIABLE BREW_OPENSSL
- OUTPUT_VARIABLE BREW_OPENSSL_PREFIX
- OUTPUT_STRIP_TRAILING_WHITESPACE)
-
- if((BREW_OPENSSL NOT EQUAL 0) OR (NOT EXISTS "${BREW_OPENSSL_PREFIX}"))
- message(FATAL_ERROR "Could not find openssl prefix with brew")
- endif()
+ message(FATAL_ERROR "OpenSSL (or LibreSSL) is required for building Netdata, but could not be found.")
endif()
+
+ set(OPENSSL_INCLUDE_DIRS "${BREW_OPENSSL_PREFIX}/include")
+ set(OPENSSL_CFLAGS_OTHER "")
+ set(OPENSSL_LDFLAGS "-L${BREW_OPENSSL_PREFIX}/lib;-lssl;-lcrypto")
+ else()
+ message(FATAL_ERROR "OpenSSL (or LibreSSL) is required for building Netdata, but could not be found.")
endif()
+endif()
- set(OPENSSL_INCLUDE_DIRS "${BREW_OPENSSL_PREFIX}/include")
- set(OPENSSL_CFLAGS_OTHER "")
- set(OPENSSL_LDFLAGS "-L${BREW_OPENSSL_PREFIX}/lib;-lssl;-lcrypto")
+if(NOT MACOS)
+ pkg_check_modules(CRYPTO libcrypto)
endif()
#