https://github.com/taskflow/taskflow/pull/280 Author: David Seifert --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -29,6 +29,9 @@ set(CMAKE_VERBOSE_MAKEFILE ON) # Include additional language check include(CheckLanguage) +# Adhere to GNU conventions +include(GNUInstallDirs) + # Compiler vendors ## g++ if (CMAKE_CXX_COMPILER_ID STREQUAL "GNU") @@ -244,6 +247,8 @@ message(STATUS "CMAKE_CURRENT_BINARY_DIR: " ${CMAKE_CURRENT_BINARY_DIR}) message(STATUS "CMAKE_CURRENT_LIST_DIR: " ${CMAKE_CURRENT_LIST_DIR}) message(STATUS "CMAKE_EXE_LINKER_FLAGS: " ${CMAKE_EXE_LINKER_FLAGS}) message(STATUS "CMAKE_INSTALL_PREFIX: " ${CMAKE_INSTALL_PREFIX}) +message(STATUS "CMAKE_INSTALL_FULL_INCLUDEDIR: " ${CMAKE_INSTALL_FULL_INCLUDEDIR}) +message(STATUS "CMAKE_INSTALL_FULL_LIBDIR: " ${CMAKE_INSTALL_FULL_LIBDIR}) message(STATUS "CMAKE_MODULE_PATH: " ${CMAKE_MODULE_PATH}) message(STATUS "CMAKE_PREFIX_PATH: " ${CMAKE_PREFIX_PATH}) message(STATUS "TF_BUILD_BENCHMARKS: " ${TF_BUILD_BENCHMARKS}) @@ -252,8 +257,6 @@ message(STATUS "TF_BUILD_SYCL: " ${TF_BUILD_SYCL}) message(STATUS "TF_BUILD_TESTS: " ${TF_BUILD_TESTS}) message(STATUS "TF_BUILD_EXAMPLES: " ${TF_BUILD_EXAMPLES}) message(STATUS "TF_BUILD_PROFILER: " ${TF_BUILD_PROFILER}) -message(STATUS "TF_INC_INSTALL_DIR: " ${TF_INC_INSTALL_DIR}) -message(STATUS "TF_LIB_INSTALL_DIR: " ${TF_LIB_INSTALL_DIR}) message(STATUS "TF_UTEST_DIR: " ${TF_UTEST_DIR}) message(STATUS "TF_EXAMPLE_DIR: " ${TF_EXAMPLE_DIR}) message(STATUS "TF_BENCHMARK_DIR: " ${TF_BENCHMARK_DIR}) @@ -334,7 +337,7 @@ endif(TF_BUILD_BENCHMARKS) # ----------------------------------------------------------------------------- # install header -install(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/taskflow DESTINATION ${TF_INC_INSTALL_DIR}) +install(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/taskflow DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) # export target set_target_properties(${PROJECT_NAME} PROPERTIES EXPORT_NAME ${PROJECT_NAME}) @@ -350,7 +353,7 @@ install(TARGETS ${PROJECT_NAME} EXPORT ${PROJECT_NAME}Targets) install( EXPORT ${PROJECT_NAME}Targets NAMESPACE ${PROJECT_NAME}:: - DESTINATION ${TF_LIB_INSTALL_DIR}/cmake/${PROJECT_NAME} + DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME} ) # set up config @@ -359,8 +362,8 @@ include(CMakePackageConfigHelpers) configure_package_config_file( ${PROJECT_NAME}Config.cmake.in ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}Config.cmake - INSTALL_DESTINATION ${TF_LIB_INSTALL_DIR}/cmake/${PROJECT_NAME} - PATH_VARS TF_INC_INSTALL_DIR + INSTALL_DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME} + PATH_VARS CMAKE_INSTALL_FULL_INCLUDEDIR ) write_basic_package_version_file( @@ -371,6 +374,6 @@ write_basic_package_version_file( install( FILES ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}Config.cmake ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}ConfigVersion.cmake - DESTINATION ${TF_LIB_INSTALL_DIR}/cmake/${PROJECT_NAME} + DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME} ) --- a/TaskflowConfig.cmake.in +++ b/TaskflowConfig.cmake.in @@ -1,6 +1,6 @@ @PACKAGE_INIT@ -set_and_check(@PROJECT_NAME@_INCLUDE_DIR "@PACKAGE_TF_INC_INSTALL_DIR@") +set_and_check(@PROJECT_NAME@_INCLUDE_DIR "@CMAKE_INSTALL_FULL_INCLUDEDIR@") include(CMakeFindDependencyMacro) find_dependency(Threads)