summaryrefslogtreecommitdiff
path: root/.gitlab/ci/cxx_modules_rules_clang.cmake
blob: 9d75880c68568e75be01272220351101d9c53c73 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
set(CMake_TEST_CXXModules_UUID "a246741c-d067-4019-a8fb-3d16b0c9d1d3")

set(CMAKE_EXPERIMENTAL_CXX_MODULE_DYNDEP 1)
string(CONCAT CMAKE_EXPERIMENTAL_CXX_SCANDEP_SOURCE
  "${CMAKE_CXX_COMPILER_CLANG_SCAN_DEPS}"
  " -format=p1689 --p1689-targeted-file-name=<SOURCE> --p1689-targeted-output=<OBJECT> --"
  " <DEFINES> <INCLUDES> <FLAGS> -x c++ <SOURCE>"
  " > <DYNDEP_FILE>")
# No support for `-MF` discovered dependencies in `clang-scan-deps`.
set(CMAKE_EXPERIMENTAL_CXX_SCANDEP_DEPFILE_FORMAT "none")
set(CMAKE_EXPERIMENTAL_CXX_MODULE_MAP_FORMAT "clang")
set(CMAKE_EXPERIMENTAL_CXX_MODULE_MAP_FLAG "@<MODULE_MAP_FILE>")

# Default to C++ extensions being off. Clang's modules support have trouble
# with extensions right now.
set(CMAKE_CXX_EXTENSIONS OFF)