@@ -10,7 +10,8 @@ cmake_minimum_required(VERSION 3.25...3.31)
1010project(
1111 beman_inplace_vector
1212 VERSION 1.0.0
13- DESCRIPTION "A dynamically-resizable vector with fixed capacity and embedded storage"
13+ DESCRIPTION
14+ "A dynamically-resizable vector with fixed capacity and embedded storage"
1415 LANGUAGES CXX
1516)
1617
@@ -25,62 +26,70 @@ add_library(beman::beman_inplace_vector ALIAS beman_inplace_vector)
2526
2627target_sources(
2728 beman_inplace_vector
28- PUBLIC FILE_SET
29- inplace_vector_public_headers
30- TYPE
31- HEADERS
32- BASE_DIRS
33- ${CMAKE_CURRENT_SOURCE_DIR}/include
34- FILES
35- "${CMAKE_CURRENT_SOURCE_DIR}/include/beman/inplace_vector/inplace_vector.hpp"
29+ PUBLIC
30+ FILE_SET inplace_vector_public_headers
31+ TYPE HEADERS
32+ BASE_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/include
33+ FILES
34+ "${CMAKE_CURRENT_SOURCE_DIR}/include/beman/inplace_vector/inplace_vector.hpp"
35+ )
36+ set_target_properties(
37+ beman_inplace_vector
38+ PROPERTIES VERIFY_INTERFACE_HEADER_SETS ON
3639)
37- set_target_properties(beman_inplace_vector PROPERTIES VERIFY_INTERFACE_HEADER_SETS ON)
3840
3941include (GNUInstallDirs)
4042include (CMakePackageConfigHelpers)
4143
4244block()
43- # copied from execution26:
44- set(TARGET_NAME beman_inplace_vector)
45- set(TARGET_NAMESPACE beman)
46- # set(TARGET_PREFIX ${TARGET_NAMESPACE}.${TARGET_NAME}) # FIXME: not used yet? CK
47- # set(TARGET_LIBRARY ${PROJECT_NAME})
48- # set(TARGET_ALIAS ${TARGET_LIBRARY}::${TARGET_LIBRARY})
49- set(TARGET_PACKAGE_NAME ${PROJECT_NAME}-config)
50- set(TARGETS_EXPORT_NAME ${PROJECT_NAME}-targets)
51- set(INSTALL_CONFIGDIR ${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME})
52-
53- # Install the InplaceVector library to the appropriate destination
54- install(
55- TARGETS beman_inplace_vector
56- EXPORT ${TARGETS_EXPORT_NAME}
57- FILE_SET inplace_vector_public_headers
58- # DESTINATION ${CMAKE_INSTALL_LIBDIR}
59- )
60-
61- if(EXISTS cmake/Config.cmake.in)
62- write_basic_package_version_file(
63- ${CMAKE_CURRENT_BINARY_DIR}/${TARGET_PACKAGE_NAME}-version.cmake VERSION ${CMAKE_PROJECT_VERSION}
64- COMPATIBILITY AnyNewerVersion
65- )
66-
67- configure_package_config_file(
68- cmake/Config.cmake.in ${CMAKE_CURRENT_BINARY_DIR}/${TARGET_PACKAGE_NAME}.cmake
69- INSTALL_DESTINATION ${INSTALL_CONFIGDIR}
45+ # copied from execution26:
46+ set(TARGET_NAME beman_inplace_vector)
47+ set(TARGET_NAMESPACE beman)
48+ # set(TARGET_PREFIX ${TARGET_NAMESPACE}.${TARGET_NAME}) # FIXME: not used yet? CK
49+ # set(TARGET_LIBRARY ${PROJECT_NAME})
50+ # set(TARGET_ALIAS ${TARGET_LIBRARY}::${TARGET_LIBRARY})
51+ set(TARGET_PACKAGE_NAME ${PROJECT_NAME}-config)
52+ set(TARGETS_EXPORT_NAME ${PROJECT_NAME}-targets)
53+ set(INSTALL_CONFIGDIR ${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME})
54+
55+ # Install the InplaceVector library to the appropriate destination
56+ install(
57+ TARGETS beman_inplace_vector
58+ EXPORT ${TARGETS_EXPORT_NAME}
59+ FILE_SET inplace_vector_public_headers
60+ # DESTINATION ${CMAKE_INSTALL_LIBDIR}
7061 )
7162
72- install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${TARGET_PACKAGE_NAME}.cmake
73- ${CMAKE_CURRENT_BINARY_DIR}/${TARGET_PACKAGE_NAME}-version.cmake DESTINATION ${INSTALL_CONFIGDIR}
74- )
75-
76- install(EXPORT ${TARGETS_EXPORT_NAME} FILE ${TARGETS_EXPORT_NAME}.cmake DESTINATION "${INSTALL_CONFIGDIR}"
63+ if(EXISTS cmake/Config.cmake.in)
64+ write_basic_package_version_file(
65+ ${CMAKE_CURRENT_BINARY_DIR}/${TARGET_PACKAGE_NAME}-version.cmake
66+ VERSION ${CMAKE_PROJECT_VERSION}
67+ COMPATIBILITY AnyNewerVersion
68+ )
69+
70+ configure_package_config_file(
71+ cmake/Config.cmake.in
72+ ${CMAKE_CURRENT_BINARY_DIR}/${TARGET_PACKAGE_NAME}.cmake
73+ INSTALL_DESTINATION ${INSTALL_CONFIGDIR}
74+ )
75+
76+ install(
77+ FILES
78+ ${CMAKE_CURRENT_BINARY_DIR}/${TARGET_PACKAGE_NAME}.cmake
79+ ${CMAKE_CURRENT_BINARY_DIR}/${TARGET_PACKAGE_NAME}-version.cmake
80+ DESTINATION ${INSTALL_CONFIGDIR}
81+ )
82+
83+ install(
84+ EXPORT ${TARGETS_EXPORT_NAME}
85+ FILE ${TARGETS_EXPORT_NAME}.cmake
86+ DESTINATION "${INSTALL_CONFIGDIR}"
7787 NAMESPACE beman ::
78- )
88+ )
7989
80- set(CPACK_GENERATOR TGZ)
81- include (CPack)
82-
83- endif()
90+ set(CPACK_GENERATOR TGZ)
91+ include (CPack)
92+ endif()
8493endblock()
8594
8695if(INPLACE_VECTOR_BUILD_TESTING)
0 commit comments