diff --git a/CMakeLists.txt b/CMakeLists.txt index 7505f95e3..a6d779601 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -102,19 +102,10 @@ target_compile_features(EnTT INTERFACE cxx_std_17) include(CMakePackageConfigHelpers) -if(${CMAKE_SYSTEM_NAME} STREQUAL "Windows") - set(CUSTOM_INSTALL_CONFIGDIR cmake) -else() - set(CUSTOM_INSTALL_CONFIGDIR ${CMAKE_INSTALL_LIBDIR}/cmake/entt) -endif() - -install(TARGETS EnTT EXPORT EnTTTargets) - -configure_package_config_file( - ${EnTT_SOURCE_DIR}/cmake/in/EnTTConfig.cmake.in - EnTTConfig.cmake - INSTALL_DESTINATION ${CUSTOM_INSTALL_CONFIGDIR} - PATH_VARS CMAKE_INSTALL_INCLUDEDIR +install( + TARGETS EnTT + EXPORT EnTTTargets + ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} ) write_basic_package_version_file( @@ -123,10 +114,17 @@ write_basic_package_version_file( COMPATIBILITY AnyNewerVersion ) +configure_package_config_file( + ${EnTT_SOURCE_DIR}/cmake/in/EnTTConfig.cmake.in + EnTTConfig.cmake + INSTALL_DESTINATION ${CMAKE_INSTALL_LIBDIR}/EnTT/cmake + PATH_VARS CMAKE_INSTALL_INCLUDEDIR +) + install( EXPORT EnTTTargets FILE EnTTTargets.cmake - DESTINATION ${CUSTOM_INSTALL_CONFIGDIR} + DESTINATION ${CMAKE_INSTALL_LIBDIR}/EnTT/cmake NAMESPACE EnTT:: ) @@ -134,7 +132,7 @@ install( FILES ${PROJECT_BINARY_DIR}/EnTTConfig.cmake ${PROJECT_BINARY_DIR}/EnTTConfigVersion.cmake - DESTINATION ${CUSTOM_INSTALL_CONFIGDIR} + DESTINATION ${CMAKE_INSTALL_LIBDIR}/EnTT/cmake ) install(DIRECTORY src/ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) diff --git a/cmake/in/EnTTConfig.cmake.in b/cmake/in/EnTTConfig.cmake.in index 069242b77..6c968aaff 100644 --- a/cmake/in/EnTTConfig.cmake.in +++ b/cmake/in/EnTTConfig.cmake.in @@ -1,11 +1,6 @@ -set(ENTT_VERSION "@PROJECT_VERSION@") - @PACKAGE_INIT@ -set_and_check(ENTT_INCLUDE_DIRS "@PACKAGE_CMAKE_INSTALL_INCLUDEDIR@") - -if(NOT CMAKE_VERSION VERSION_LESS "3.0") - include("${CMAKE_CURRENT_LIST_DIR}/EnTTTargets.cmake") -endif() - +set(EnTT_VERSION "@PROJECT_VERSION@") +set_and_check(EnTT_INCLUDE_DIRS "@PACKAGE_CMAKE_INSTALL_INCLUDEDIR@") +include("${CMAKE_CURRENT_LIST_DIR}/EnTTTargets.cmake") check_required_components("@PROJECT_NAME@")