1
0
Эх сурвалжийг харах

Tests/CXXModules: mask C++23 std module targets

These tests mess with the availability of C++ module support. Hide
generation of the utility targets from any compiler detection.
Ben Boeckel 1 жил өмнө
parent
commit
d7e65b6178

+ 3 - 0
Tests/RunCMake/CXXModules/CMP0155-NEW.cmake

@@ -1,3 +1,6 @@
+# Block making C++ `import std` targets.
+add_library(__CMAKE::CXX23 IMPORTED INTERFACE)
+
 enable_language(CXX)
 unset(CMAKE_CXX_SCANDEP_SOURCE)
 

+ 3 - 0
Tests/RunCMake/CXXModules/CMP0155-OLD.cmake

@@ -1,3 +1,6 @@
+# Block making C++ `import std` targets.
+add_library(__CMAKE::CXX23 IMPORTED INTERFACE)
+
 enable_language(CXX)
 unset(CMAKE_CXX_SCANDEP_SOURCE)
 

+ 3 - 0
Tests/RunCMake/CXXModules/ImplicitCXX20.cmake

@@ -1,6 +1,9 @@
 # Enable scanning by default for targets that explicitly use C++ 20.
 cmake_policy(SET CMP0155 NEW)
 
+# Block making C++ `import std` targets.
+add_library(__CMAKE::CXX23 IMPORTED INTERFACE)
+
 # Force CMAKE_CXX_STANDARD_DEFAULT to be C++ 20.
 set(ENV{CXXFLAGS} "$ENV{CXXFLAGS} ${CMAKE_CXX20_STANDARD_COMPILE_OPTION}")
 enable_language(CXX)

+ 3 - 0
Tests/RunCMake/CXXModules/NoCXX20.cmake

@@ -1,3 +1,6 @@
+# Block making C++ `import std` targets.
+add_library(__CMAKE::CXX23 IMPORTED INTERFACE)
+
 enable_language(CXX)
 
 add_library(nocxx20)

+ 3 - 0
Tests/RunCMake/CXXModules/NoScanningVariable.cmake

@@ -1,6 +1,9 @@
 # Enable scanning by default for targets that explicitly use C++ 20.
 cmake_policy(SET CMP0155 NEW)
 
+# Block making C++ `import std` targets.
+add_library(__CMAKE::CXX23 IMPORTED INTERFACE)
+
 enable_language(CXX)
 
 # Hide any real scanning rule that may be available.