From 77570ff214182224122b65306bf73853293ef7a1 Mon Sep 17 00:00:00 2001 From: Thomas Juerges <thomas.juerges@skao.int> Date: Mon, 17 Jun 2024 16:39:18 +0900 Subject: [PATCH] Clang does not support -Wl,--no-undefined --- CMakeLists.txt | 12 ++++++++++-- test/testdevice/CMakeLists.txt | 14 ++++++++++++++ 2 files changed, 24 insertions(+), 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 3b1253b..7be92e6 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -103,11 +103,19 @@ target_include_directories(alarm_handler "${PROJECT_BINARY_DIR}" ${Boost_INCLUDE_DIRS}) -set_target_properties(alarm_handler - PROPERTIES +if(NOT (CMAKE_CXX_COMPILER_ID STREQUAL "AppleClang" OR CMAKE_CXX_COMPILER_ID STREQUAL "Clang")) + set_target_properties(alarm_handler + PROPERTIES OUTPUT_NAME ${AH_NAME} LINK_FLAGS "-Wl,--no-undefined" CXX_STANDARD 17) +else() + set_target_properties(alarm_handler + PROPERTIES + OUTPUT_NAME ${AH_NAME} + LINK_FLAGS "" + CXX_STANDARD 17) +endif() if(DO_CLANG_TIDY) set_target_properties(alarm_handler diff --git a/test/testdevice/CMakeLists.txt b/test/testdevice/CMakeLists.txt index bfba52a..c27f30f 100644 --- a/test/testdevice/CMakeLists.txt +++ b/test/testdevice/CMakeLists.txt @@ -82,6 +82,20 @@ set_target_properties(testdevice LINK_FLAGS "-Wl,--no-undefined" CXX_STANDARD 17) +if(NOT (CMAKE_CXX_COMPILER_ID STREQUAL "AppleClang" OR CMAKE_CXX_COMPILER_ID STREQUAL "Clang")) + set_target_properties(alarm_handler + PROPERTIES + OUTPUT_NAME ${DEV_NAME} + LINK_FLAGS "-Wl,--no-undefined" + CXX_STANDARD 17) +else() + set_target_properties(alarm_handler + PROPERTIES + OUTPUT_NAME ${DEV_NAME} + LINK_FLAGS "" + CXX_STANDARD 17) +endif() + target_compile_options(testdevice PRIVATE "$<$<CONFIG:DEBUG>:-g>") -- GitLab