summaryrefslogtreecommitdiffstats
path: root/Tests/RunCMake/CXXModules/ExportBuildCxxModules.cmake
blob: 850f8dcdd537b951b67fef3bb44e6a3ddb154366 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
enable_language(CXX)
set(CMAKE_EXPERIMENTAL_CXX_MODULE_DYNDEP 1)
set(CMAKE_EXPERIMENTAL_CXX_SCANDEP_SOURCE "")

add_library(export-modules)
target_sources(export-modules
  PUBLIC
    FILE_SET fs TYPE CXX_MODULES FILES
      sources/module.cxx)
target_compile_features(export-modules
  PRIVATE
    cxx_std_20)
set_property(TARGET export-modules
  PROPERTY EXPORT_NAME export-name)

install(TARGETS export-modules
  EXPORT exp
  FILE_SET fs DESTINATION "include/cxx/export-modules")

export(EXPORT exp
  FILE "${CMAKE_BINARY_DIR}/lib/cmake/export-modules/export-modules-targets.cmake"
  CXX_MODULES_DIRECTORY "cxx-modules")