diff --git a/CMakeLists.txt b/CMakeLists.txt index de88807..587459f 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -112,10 +112,13 @@ if(NOT TARGET uninstall) COMMAND ${CMAKE_COMMAND} -P ${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake) endif() -file(WRITE - ${CMAKE_BINARY_DIR}/${CMAKE_PROJECT_NAME}Config.cmake - "include(\${CMAKE_CURRENT_LIST_DIR}/${CMAKE_PROJECT_NAME}Targets.cmake)\n") - +include(CMakePackageConfigHelpers) +set(TARGETS_EXPORT_NAME "${PROJECT_NAME}Targets") +configure_package_config_file( + "Config.cmake.in" + "${CMAKE_BINARY_DIR}/${CMAKE_PROJECT_NAME}Config.cmake" + INSTALL_DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/${CMAKE_PROJECT_NAME}" +) install(FILES ${CMAKE_BINARY_DIR}/${CMAKE_PROJECT_NAME}Config.cmake DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${CMAKE_PROJECT_NAME}) diff --git a/Config.cmake.in b/Config.cmake.in new file mode 100644 index 0000000..38bbde7 --- /dev/null +++ b/Config.cmake.in @@ -0,0 +1,4 @@ +@PACKAGE_INIT@ + +include("${CMAKE_CURRENT_LIST_DIR}/@TARGETS_EXPORT_NAME@.cmake") +check_required_components("@PROJECT_NAME@")