mirror of
https://github.com/Kitware/CMake.git
synced 2026-02-11 17:49:38 -06:00
Since it can be set in the environment when running the test suite, guard tests which are sensitive to intermediate directory strategy changes with explicit settings.
57 lines
1.6 KiB
CMake
57 lines
1.6 KiB
CMake
set(CMAKE_INTERMEDIATE_DIR_STRATEGY FULL CACHE STRING "" FORCE)
|
|
|
|
# Fake out that we have dyndep; we only need to generate, not actually build
|
|
# here.
|
|
set(CMAKE_CXX_SCANDEP_SOURCE "")
|
|
|
|
set(CMAKE_EXPERIMENTAL_EXPORT_BUILD_DATABASE "73194a1d-c0b5-41b9-9190-a4512925e192")
|
|
|
|
enable_language(CXX)
|
|
|
|
if (NOT CMAKE_GENERATOR MATCHES "Ninja")
|
|
message(FATAL_ERROR
|
|
"This test requires a 'Ninja' generator to be used.")
|
|
endif ()
|
|
|
|
add_library(ninja-compiledb-public)
|
|
target_sources(ninja-compiledb-public
|
|
PRIVATE
|
|
sources/module-impl.cxx
|
|
sources/module-internal-part-impl.cxx
|
|
sources/module-part-impl.cxx
|
|
PUBLIC
|
|
FILE_SET modules TYPE CXX_MODULES
|
|
BASE_DIRS
|
|
"${CMAKE_CURRENT_SOURCE_DIR}/sources"
|
|
FILES
|
|
sources/module.cxx
|
|
sources/module-part.cxx
|
|
FILE_SET internal_partitions TYPE CXX_MODULES FILES
|
|
sources/module-internal-part.cxx)
|
|
target_compile_features(ninja-compiledb-public
|
|
PRIVATE
|
|
cxx_std_20)
|
|
set_property(TARGET ninja-compiledb-public
|
|
PROPERTY EXPORT_BUILD_DATABASE 1)
|
|
|
|
add_library(ninja-compiledb-private)
|
|
target_sources(ninja-compiledb-private
|
|
PRIVATE
|
|
sources/module-impl.cxx
|
|
sources/module-internal-part-impl.cxx
|
|
sources/module-part-impl.cxx
|
|
PRIVATE
|
|
FILE_SET modules TYPE CXX_MODULES
|
|
BASE_DIRS
|
|
"${CMAKE_CURRENT_SOURCE_DIR}/sources"
|
|
FILES
|
|
sources/module.cxx
|
|
sources/module-part.cxx
|
|
FILE_SET internal_partitions TYPE CXX_MODULES FILES
|
|
sources/module-internal-part.cxx)
|
|
target_compile_features(ninja-compiledb-private
|
|
PRIVATE
|
|
cxx_std_20)
|
|
set_property(TARGET ninja-compiledb-private
|
|
PROPERTY EXPORT_BUILD_DATABASE 1)
|