From 81efe61048c2f6a81e24ce53b6fb4489f42aad16 Mon Sep 17 00:00:00 2001 From: Dennis Klein Date: Sun, 7 Mar 2021 11:09:45 +0100 Subject: [PATCH] Export relocatable include dirs --- CMakeLists.txt | 10 +++------- cmake/FairLoggerConfig.cmake.in | 6 +++--- cmake/FairLoggerLib.cmake | 10 +++++++++- 3 files changed, 15 insertions(+), 11 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 497dad5..5d4f40f 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,5 +1,5 @@ ################################################################################ -# Copyright (C) 2018-2019 GSI Helmholtzzentrum fuer Schwerionenforschung GmbH # +# Copyright (C) 2018-2021 GSI Helmholtzzentrum fuer Schwerionenforschung GmbH # # # # This software is distributed under the terms of the # # GNU Lesser General Public Licence (LGPL) version 3, # @@ -7,7 +7,7 @@ ################################################################################ cmake_minimum_required(VERSION 3.9.4 FATAL_ERROR) -cmake_policy(VERSION 3.9...3.15) +cmake_policy(VERSION 3.9...3.19) # Project ###################################################################### set(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake) @@ -59,20 +59,16 @@ if(USE_BOOST_PRETTY_FUNCTION) target_compile_definitions(FairLogger PUBLIC FAIRLOGGER_USE_BOOST_PRETTY_FUNCTION) endif() -# legacy paths -list(APPEND FAIRLOGGER_INSTALL_INCLUDE_DIRS ${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_INCLUDEDIR}) - if(USE_EXTERNAL_FMT) target_link_libraries(FairLogger PUBLIC fmt::fmt) else() add_library(fmt INTERFACE) target_include_directories(fmt INTERFACE $ - $ + $ ) target_compile_definitions(fmt INTERFACE FMT_HEADER_ONLY) target_link_libraries(FairLogger PUBLIC fmt) - list(APPEND FAIRLOGGER_INSTALL_INCLUDE_DIRS ${CMAKE_INSTALL_PREFIX}/${PROJECT_INSTALL_INCDIR}/bundled) endif() if(DEFINED FAIR_MIN_SEVERITY) diff --git a/cmake/FairLoggerConfig.cmake.in b/cmake/FairLoggerConfig.cmake.in index b147eea..454889b 100644 --- a/cmake/FairLoggerConfig.cmake.in +++ b/cmake/FairLoggerConfig.cmake.in @@ -1,5 +1,5 @@ ################################################################################ -# Copyright (C) 2018-2019 GSI Helmholtzzentrum fuer Schwerionenforschung GmbH # +# Copyright (C) 2018-2021 GSI Helmholtzzentrum fuer Schwerionenforschung GmbH # # # # This software is distributed under the terms of the # # GNU Lesser General Public Licence (LGPL) version 3, # @@ -15,8 +15,8 @@ set(@PROJECT_NAME@_GIT_DATE @PROJECT_GIT_DATE@) set_and_check(@PROJECT_NAME@_PREFIX @PACKAGE_CMAKE_INSTALL_PREFIX@) set(@PROJECT_NAME@_BINDIR @PACKAGE_CMAKE_INSTALL_PREFIX@/@PROJECT_INSTALL_BINDIR@) -set(@PROJECT_NAME@_INCDIR @FAIRLOGGER_INSTALL_INCLUDE_DIRS@) -set(@PROJECT_NAME@_INCDIRS @FAIRLOGGER_INSTALL_INCLUDE_DIRS@) +set(@PROJECT_NAME@_INCDIR @PACKAGE_INSTALL_INCDIRS@) +set(@PROJECT_NAME@_INCDIRS @PACKAGE_INSTALL_INCDIRS@) set_and_check(@PROJECT_NAME@_LIBDIR @PACKAGE_CMAKE_INSTALL_PREFIX@/@PROJECT_INSTALL_LIBDIR@) set(@PROJECT_NAME@_CXX_STANDARD_REQUIRED @CMAKE_CXX_STANDARD_REQUIRED@) diff --git a/cmake/FairLoggerLib.cmake b/cmake/FairLoggerLib.cmake index b038058..09c84f4 100644 --- a/cmake/FairLoggerLib.cmake +++ b/cmake/FairLoggerLib.cmake @@ -1,5 +1,5 @@ ################################################################################ -# Copyright (C) 2018-2019 GSI Helmholtzzentrum fuer Schwerionenforschung GmbH # +# Copyright (C) 2018-2021 GSI Helmholtzzentrum fuer Schwerionenforschung GmbH # # # # This software is distributed under the terms of the # # GNU Lesser General Public Licence (LGPL) version 3, # @@ -122,6 +122,7 @@ macro(set_fairlogger_defaults) set(PROJECT_INSTALL_BINDIR ${CMAKE_INSTALL_BINDIR}) set(PROJECT_INSTALL_LIBDIR ${CMAKE_INSTALL_LIBDIR}) set(PROJECT_INSTALL_INCDIR ${CMAKE_INSTALL_INCLUDEDIR}/${PROJECT_NAME_LOWER}) + set(PROJECT_INSTALL_BUNDLEDINCDIR ${PROJECT_INSTALL_INCDIR}/bundled) set(PROJECT_INSTALL_DATADIR ${CMAKE_INSTALL_DATADIR}/${PROJECT_NAME_LOWER}) # https://cmake.org/Wiki/CMake_RPATH_handling @@ -227,6 +228,13 @@ macro(install_cmake_package) VERSION ${PROJECT_VERSION} COMPATIBILITY AnyNewerVersion ) + unset(PACKAGE_INSTALL_INCDIRS) + list(APPEND PACKAGE_INSTALL_INCDIRS + \$\{PACKAGE_PREFIX_DIR\}/${CMAKE_INSTALL_INCLUDEDIR}) + if(NOT USE_EXTERNAL_FMT) + list(APPEND PACKAGE_INSTALL_INCDIRS + \$\{PACKAGE_PREFIX_DIR\}/${PROJECT_INSTALL_BUNDLEDINCDIR}) + endif() generate_package_dependencies() # fills ${PACKAGE_DEPENDENCIES} string(TOUPPER ${CMAKE_BUILD_TYPE} PROJECT_BUILD_TYPE_UPPER) set(PROJECT_CXX_FLAGS ${CMAKE_CXX_FLAGS} ${CMAKE_CXX_FLAGS_${PROJECT_BUILD_TYPE_UPPER}})