@@ -16,6 +16,7 @@ find_package(PkgConfig REQUIRED)
include(CheckSymbolExists)
include(CheckIncludeFiles)
include(CheckCCompilerFlag)
+include(CheckLinkerFlag)
include(CheckTypeSize)
include(CheckStructHasMember)
include(CTest)
@@ -560,18 +561,20 @@ if (BUILD_TESTING)
)
endif ()
- if (NOT MSVC)
- # MSVC does not support --wrap
+ # MSVC and Apple's LLVM ld do not support --wrap
+ check_linker_flag(C -Wl,--wrap=parse_line LD_SUPPORTS_WRAP)
+
+ if (${LD_SUPPORTS_WRAP})
list(APPEND unit_tests
"test_argv"
+ "test_tls_crypt"
)
endif ()
- # These tests work on only on Linux since they depend on special linker features
+ # These tests work on only on Linux since they depend on special Linux features
if (${CMAKE_SYSTEM_NAME} STREQUAL "Linux")
list(APPEND unit_tests
"test_networking"
- "test_tls_crypt"
)
endif ()
This avoids build errors on macOS. Also the test_tls_crypt command works just fine on FreeBSD with its linkers, so do not make that test Linux only. Change-Id: Id26676bdc576c7d3d6726afa43fe6c7a397c579b Signed-off-by: Arne Schwabe <arne@rfc2549.org> --- CMakeLists.txt | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-)