66cmake_minimum_required(VERSION 3.25...3.31)
77
88project(beman_execution26 VERSION 0.0.1 LANGUAGES CXX)
9- set(TARGET_NAME execution26)
10- set(TARGET_PREFIX beman.${TARGET_NAME})
11- set(TARGET_LIBRARY beman_${TARGET_NAME})
12- set(TARGET_ALIAS beman ::${TARGET_NAME})
13- set(TARGETS_EXPORT_NAME ${CMAKE_PROJECT_NAME}Targets)
149
15- set(CMAKE_CXX_STANDARD 26)
10+ set(TARGET_NAME execution26)
11+ set(TARGET_NAMESPACE beman) # FIXME : not used in install(EXPORT ...) CK?
12+ set(TARGET_PREFIX ${TARGET_NAMESPACE}.${TARGET_NAME})
13+ set(TARGET_LIBRARY ${PROJECT_NAME})
14+ set(TARGET_ALIAS ${TARGET_LIBRARY} ::${TARGET_LIBRARY})
15+ set(TARGET_PACKAGE_NAME ${PROJECT_NAME}-config)
16+ set(TARGETS_EXPORT_NAME ${PROJECT_NAME}-targets)
1617
1718include (GNUInstallDirs)
18- set(INSTALL_CONFIGDIR ${CMAKE_INSTALL_LIBDIR}/cmake)
19+ set(INSTALL_CONFIGDIR ${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME})
20+
21+ if(NOT DEFINED CMAKE_CXX_STANDARD)
22+ set(CMAKE_CXX_STANDARD 23)
23+ endif()
24+
25+ if(NOT DEFINED CMAKE_PREFIX_PATH)
26+ set(CMAKE_PREFIX_PATH ${CMAKE_INSTALL_PREFIX})
27+ endif()
1928
2029add_subdirectory(src/beman/execution26)
2130
@@ -29,16 +38,18 @@ endif()
2938include (CMakePackageConfigHelpers)
3039
3140write_basic_package_version_file(
32- ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_PROJECT_NAME}ConfigVersion.cmake
33- VERSION ${PROJECT_VERSION}
34- COMPATIBILITY AnyNewerVersion)
41+ ${CMAKE_CURRENT_BINARY_DIR}/${TARGET_PACKAGE_NAME}-version.cmake
42+ VERSION ${CMAKE_PROJECT_VERSION}
43+ COMPATIBILITY AnyNewerVersion
44+ )
3545
3646configure_package_config_file(
37- "cmake/Config.cmake.in"
38- ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_PROJECT_NAME}Config.cmake
39- INSTALL_DESTINATION ${INSTALL_CONFIGDIR} )
47+ "cmake/Config.cmake.in" ${CMAKE_CURRENT_BINARY_DIR}/${TARGET_PACKAGE_NAME}.cmake
48+ INSTALL_DESTINATION ${INSTALL_CONFIGDIR}
49+ )
4050
4151install(
42- FILES ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_PROJECT_NAME}Config.cmake
43- ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_PROJECT_NAME}ConfigVersion.cmake
44- DESTINATION ${INSTALL_CONFIGDIR})
52+ FILES ${CMAKE_CURRENT_BINARY_DIR}/${TARGET_PACKAGE_NAME}.cmake
53+ ${CMAKE_CURRENT_BINARY_DIR}/${TARGET_PACKAGE_NAME}-version.cmake
54+ DESTINATION ${INSTALL_CONFIGDIR}
55+ )
0 commit comments