From f9af3a7269c2b8ec8c7b8238c73b871ce8b3d2dd Mon Sep 17 00:00:00 2001 From: Dennis Klein Date: Mon, 22 Mar 2021 06:07:26 +0100 Subject: [PATCH] CMake: Do not unconditionally override settings without good reason relates FairRootGroup/FairMQ#342 --- cmake/FairLoggerLib.cmake | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/cmake/FairLoggerLib.cmake b/cmake/FairLoggerLib.cmake index 11edab9..5b57d83 100644 --- a/cmake/FairLoggerLib.cmake +++ b/cmake/FairLoggerLib.cmake @@ -100,14 +100,16 @@ macro(set_fairlogger_defaults) endif() # Generate compile_commands.json file (https://clang.llvm.org/docs/JSONCompilationDatabase.html) - set(CMAKE_EXPORT_COMPILE_COMMANDS ON) + if(NOT DEFINED CMAKE_EXPORT_COMPILE_COMMANDS) + set(CMAKE_EXPORT_COMPILE_COMMANDS ON) + endif() - if(NOT BUILD_SHARED_LIBS) + if(NOT DEFINED BUILD_SHARED_LIBS) set(BUILD_SHARED_LIBS ON CACHE BOOL "Whether to build shared libraries or static archives") endif() # Set -fPIC as default for all library types - if(NOT CMAKE_POSITION_INDEPENDENT_CODE) + if(NOT DEFINED CMAKE_POSITION_INDEPENDENT_CODE) set(CMAKE_POSITION_INDEPENDENT_CODE ON) endif() @@ -126,13 +128,13 @@ macro(set_fairlogger_defaults) list(FIND CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES "${CMAKE_INSTALL_PREFIX}/${PROJECT_INSTALL_LIBDIR}" isSystemDir) if("${isSystemDir}" STREQUAL "-1") if(CMAKE_SYSTEM_NAME STREQUAL "Linux") - set(CMAKE_EXE_LINKER_FLAGS ${CMAKE_EXE_LINKER_FLAGS} "-Wl,--enable-new-dtags") - set(CMAKE_SHARED_LINKER_FLAGS ${CMAKE_SHARED_LINKER_FLAGS} "-Wl,--enable-new-dtags") - set(CMAKE_INSTALL_RPATH "$ORIGIN/../${PROJECT_INSTALL_LIBDIR}") + list(APPEND CMAKE_EXE_LINKER_FLAGS "-Wl,--enable-new-dtags") + list(APPEND CMAKE_SHARED_LINKER_FLAGS "-Wl,--enable-new-dtags") + list(APPEND CMAKE_INSTALL_RPATH "$ORIGIN/../${PROJECT_INSTALL_LIBDIR}") elseif(CMAKE_SYSTEM_NAME STREQUAL "Darwin") - set(CMAKE_INSTALL_RPATH "@loader_path/../${PROJECT_INSTALL_LIBDIR}") + list(APPEND CMAKE_INSTALL_RPATH "@loader_path/../${PROJECT_INSTALL_LIBDIR}") else() - set(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/${PROJECT_INSTALL_LIBDIR}") + list(APPEND CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/${PROJECT_INSTALL_LIBDIR}") endif() endif()