@@ -19,13 +19,19 @@ write_basic_package_version_file(
1919 COMPATIBILITY AnyNewerVersion
2020)
2121
22+ # CXX_MODULES_DIRECTORY was added in CMake 3.28
23+ set (_cxx_modules_directory_arg)
24+ if (CMAKE_VERSION VERSION_GREATER_EQUAL "3.28" )
25+ set (_cxx_modules_directory_arg CXX_MODULES_DIRECTORY cxx-modules)
26+ endif ()
27+
2228# Export HPXInternalTargets in the build directory. Use the EXPORT
2329# signature so CMake also generates the per-target C++ module metadata files.
2430export (
2531 EXPORT HPXInternalTargets
2632 NAMESPACE HPXInternal::
2733 FILE "${CMAKE_CURRENT_BINARY_DIR} /lib/cmake/${HPX_PACKAGE_NAME} /HPXInternalTargets.cmake"
28- CXX_MODULES_DIRECTORY cxx-modules
34+ ${_cxx_modules_directory_arg}
2935)
3036
3137# Export HPXInternalTargets in the install directory
@@ -34,7 +40,7 @@ install(
3440 NAMESPACE HPXInternal::
3541 FILE HPXInternalTargets.cmake
3642 DESTINATION ${CMAKE_INSTALL_LIBDIR} /cmake/${HPX_PACKAGE_NAME}
37- CXX_MODULES_DIRECTORY cxx-modules
43+ ${_cxx_modules_directory_arg}
3844 COMPONENT cmake
3945)
4046
@@ -44,7 +50,7 @@ export(
4450 EXPORT HPXTargets
4551 NAMESPACE HPX::
4652 FILE "${CMAKE_CURRENT_BINARY_DIR} /lib/cmake/${HPX_PACKAGE_NAME} /HPXTargets.cmake"
47- CXX_MODULES_DIRECTORY cxx-modules
53+ ${_cxx_modules_directory_arg}
4854)
4955
5056# Add aliases with the namespace for use within HPX
@@ -62,7 +68,7 @@ install(
6268 NAMESPACE HPX::
6369 FILE HPXTargets.cmake
6470 DESTINATION ${CMAKE_INSTALL_LIBDIR} /cmake/${HPX_PACKAGE_NAME}
65- CXX_MODULES_DIRECTORY cxx-modules
71+ ${_cxx_modules_directory_arg}
6672 COMPONENT cmake
6773)
6874
@@ -86,7 +92,7 @@ endif()
8692set (HPX_CONFIG_IS_INSTALL OFF )
8793configure_file (
8894 ${CMAKE_CURRENT_LIST_DIR} /templates/${HPX_PACKAGE_NAME}Config.cmake.in
89- "${CMAKE_CURRENT_BINARY_DIR} /lib/cmake/${HPX_PACKAGE_NAME} /${HPX_PACKAGE_NAME} Config .cmake"
95+ "${CMAKE_CURRENT_BINARY_DIR} /lib/cmake/${HPX_PACKAGE_NAME} /${HPX_PACKAGE_NAME} ConfigVersion .cmake"
9096 ESCAPE_QUOTES
9197 @ONLY
9298)
0 commit comments