From 82dbfafe3a08517ad1c80f92a39c8558750b3534 Mon Sep 17 00:00:00 2001 From: jmcarcell Date: Sun, 8 Sep 2024 16:20:52 +0200 Subject: [PATCH] Use the Key4hepConfig flag to set the standard, compiler flags and rpath magic. --- CMakeLists.txt | 42 ++---------------------------------------- 1 file changed, 2 insertions(+), 40 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index dec57922..ce736d80 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -29,6 +29,8 @@ find_package(Gaudi REQUIRED) endif() find_package(EDM4HEP REQUIRED) +include(cmake/Key4hepConfig.cmake) + include(GNUInstallDirs) include(CTest) @@ -37,44 +39,6 @@ if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT) "Install path prefix, prepended onto install directories." FORCE ) endif() -# Set up C++ Standard -# ``-DCMAKE_CXX_STANDARD=`` when invoking CMake -set(CMAKE_CXX_STANDARD 20 CACHE STRING "") - -if(NOT CMAKE_CXX_STANDARD MATCHES "20") - message(FATAL_ERROR "Unsupported C++ standard: ${CMAKE_CXX_STANDARD}") -endif() - -#---RPATH options------------------------------------------------------------------------------- -option(K4FWCORE_SET_RPATH "Link libraries with built-in RPATH (run-time search path)" ON) - -# When building, don't use the install RPATH already (but later on when installing) -set(CMAKE_SKIP_BUILD_RPATH FALSE) # don't skip the full RPATH for the build tree -set(CMAKE_BUILD_WITH_INSTALL_RPATH FALSE) # use always the build RPATH for the build tree -set(CMAKE_MACOSX_RPATH TRUE) # use RPATH for MacOSX -set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE) # point to directories outside the build tree to the install RPATH - -# Check whether to add RPATH to the installation (the build tree always has the RPATH enabled) -if(APPLE) - set(CMAKE_INSTALL_NAME_DIR "@rpath") - set(CMAKE_INSTALL_RPATH "@loader_path/../lib") # self relative LIBDIR - # the RPATH to be used when installing, but only if it's not a system directory - list(FIND CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES "${CMAKE_INSTALL_PREFIX}/lib" isSystemDir) - if("${isSystemDir}" STREQUAL "-1") - set(CMAKE_INSTALL_RPATH "@loader_path/../lib") - endif("${isSystemDir}" STREQUAL "-1") -elseif(K4FWCORE_SET_RPATH) - set(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/lib") # install LIBDIR - # the RPATH to be used when installing, but only if it's not a system directory - list(FIND CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES "${CMAKE_INSTALL_PREFIX}/lib" isSystemDir) - if("${isSystemDir}" STREQUAL "-1") - set(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/lib") - endif("${isSystemDir}" STREQUAL "-1") -else() - set(CMAKE_SKIP_INSTALL_RPATH TRUE) # skip the full RPATH for the install tree -endif() - - add_subdirectory(k4FWCore) add_subdirectory(k4Interface) add_subdirectory(python) @@ -89,8 +53,6 @@ if(ENABLE_CPACK) endif() - - install(EXPORT ${PROJECT_NAME}Targets NAMESPACE ${PROJECT_NAME}:: FILE "${PROJECT_NAME}Targets.cmake"