From 9a8700296cb26b34ef6cb14d6b86b463ffb15cf6 Mon Sep 17 00:00:00 2001 From: Ben Boeckel Date: Fri, 10 Oct 2025 13:11:12 -0400 Subject: [PATCH] Tests/CXXModules: split out compilation tests The test is getting fairly large and timing out more and more often. Split out actual compilation tests. --- .gitlab/ci/ctest_exclusions.cmake | 1 + Tests/RunCMake/CMakeLists.txt | 5 +- Tests/RunCMake/CXXModules/RunCMakeTest.cmake | 327 --------------- .../public-req-private-build-stdout.txt | 1 - .../RunCMake/CXXModulesCompile/CMakeLists.txt | 4 + .../RunCMake/CXXModulesCompile/Inspect.cmake | 23 ++ .../CXXModulesCompile/RunCMakeTest.cmake | 372 ++++++++++++++++++ .../CXXModulesCompile/check-json.cmake | 227 +++++++++++ .../examples/build-database-check.cmake | 0 .../examples/circular-build-result.txt | 0 .../examples/circular-build-stdout.txt | 0 .../examples/circular/CMakeLists.txt | 0 .../examples/circular/circular-a.cppm | 0 .../examples/circular/circular-b.cppm | 0 .../cxx-modules-find-bmi-and-interfaces.cmake | 0 .../examples/cxx-modules-find-bmi.cmake | 0 .../examples/cxx-modules-rules.cmake | 0 .../examples/deep-chain/CMakeLists.txt | 0 .../examples/deep-chain/a.cxx | 0 .../examples/deep-chain/b.cxx | 0 .../examples/deep-chain/c.cxx | 0 .../examples/deep-chain/d.cxx | 0 .../examples/deep-chain/e.cxx | 0 .../examples/deep-chain/main.cxx | 0 ...chain-collation-restat-rebuild-check.cmake | 0 .../depchain-collation-restat/CMakeLists.txt | 0 .../depchain-collation-restat/importable.cxx | 0 .../depchain-collation-restat/main.cxx | 0 .../pre-rebuild.cmake | 0 .../depchain-modmap-rebuild-check.cmake | 0 .../examples/depchain-modmap/CMakeLists.txt | 0 .../examples/depchain-modmap/importable.cxx | 0 .../examples/depchain-modmap/main.cxx | 0 .../depchain-modmap/pre-rebuild.cmake | 0 ...hain-modules-json-file-rebuild-check.cmake | 0 .../depchain-modules-json-file/CMakeLists.txt | 0 .../depchain-modules-json-file/importable.cxx | 0 .../depchain-modules-json-file/main.cxx | 0 .../pre-rebuild.cmake | 0 .../examples/duplicate-sources-stderr.txt | 2 +- .../examples/duplicate-sources/CMakeLists.txt | 0 .../examples/duplicate-sources/duplicate.cxx | 0 .../examples/duplicate-sources/main.cxx | 0 .../examples/duplicate/CMakeLists.txt | 0 .../examples/duplicate/duplicate.cxx | 0 .../examples/duplicate/main.cxx | 0 .../export-build-database-all-multi.json | 0 .../expect/export-build-database-all.json | 0 .../expect/export-build-database-config.json | 0 .../export-build-database-cxx-config.json | 0 .../export-build-database-cxx-multi.json | 0 .../expect/export-build-database-cxx.json | 0 ...ort-build-database-imported-all-multi.json | 0 .../export-build-database-imported-all.json | 0 ...export-build-database-imported-config.json | 0 ...rt-build-database-imported-cxx-config.json | 0 ...ort-build-database-imported-cxx-multi.json | 0 .../export-build-database-imported-cxx.json | 0 ...export-build-database-imported-target.json | 0 .../expect/export-build-database-target.json | 0 .../CMakeLists.txt | 0 .../forward.cxx | 0 .../importable.cxx | 0 .../no_modules.cxx | 0 .../private.cxx | 0 .../subdir/importable.cxx | 0 .../test/CMakeLists.txt | 0 .../CMakeLists.txt | 0 .../forward.cxx | 0 .../importable.cxx | 0 .../no_modules.cxx | 0 .../private.cxx | 0 .../subdir/importable.cxx | 0 .../test/CMakeLists.txt | 0 .../export-build-database-build-check.cmake | 0 .../export-build-database-check.cmake | 0 .../export-build-database-setup.cmake | 0 .../examples/export-build-database-stderr.txt | 0 ...se-target-cmake_build_database-check.cmake | 0 .../CXX-check.cmake | 0 .../CXX/Debug-check.cmake | 0 .../CXX/Release-Release-check.cmake | 0 .../Debug-check.cmake | 0 .../Release-Release-check.cmake | 0 .../export-build-database/CMakeLists.txt | 0 .../dep_interface_include/anchor | 0 .../export-build-database/importable.cxx | 0 .../examples/export-build-database/lib.cxx | 0 .../target_interface_include/anchor | 0 .../target_public_include/anchor | 0 .../CMakeLists.txt | 0 .../subdir/CMakeLists.txt | 0 .../subdir/importable.cxx | 0 .../test/CMakeLists.txt | 0 .../CMakeLists.txt | 0 .../subdir/CMakeLists.txt | 0 .../subdir/importable.cxx | 0 .../test/CMakeLists.txt | 0 .../export-compile-commands-check.cmake | 0 .../export-compile-commands/CMakeLists.txt | 0 .../export-compile-commands/importable.cxx | 0 .../examples/export-compile-commands/main.cxx | 0 .../CMakeLists.txt | 0 .../forward.cxx | 0 .../importable.cxx | 0 .../include/include.h | 0 .../includes/includes.h | 0 .../no_modules.cxx | 0 .../private.cxx | 0 .../subdir/importable.cxx | 0 .../test/CMakeLists.txt | 0 .../CMakeLists.txt | 0 .../forward.cxx | 0 .../importable.cxx | 0 .../include/include.h | 0 .../includes/includes.h | 0 .../no_modules.cxx | 0 .../private.cxx | 0 .../subdir/importable.cxx | 0 .../test/CMakeLists.txt | 0 .../CMakeLists.txt | 0 .../importable.cxx | 0 .../test/CMakeLists.txt | 0 .../CMakeLists.txt | 0 .../importable.cxx | 0 .../test/CMakeLists.txt | 0 .../export-interface-build/CMakeLists.txt | 0 .../export-interface-build/forward.cxx | 0 .../export-interface-build/importable.cxx | 0 .../export-interface-build/no_modules.cxx | 0 .../export-interface-build/private.cxx | 0 .../subdir/importable.cxx | 0 .../test/CMakeLists.txt | 0 .../export-interface-install/CMakeLists.txt | 0 .../export-interface-install/forward.cxx | 0 .../export-interface-install/importable.cxx | 0 .../export-interface-install/no_modules.cxx | 0 .../export-interface-install/private.cxx | 0 .../subdir/importable.cxx | 0 .../test/CMakeLists.txt | 0 .../CMakeLists.txt | 0 .../forward.cxx | 0 .../importable.cxx | 0 .../no_modules.cxx | 0 .../private.cxx | 0 .../subdir/importable.cxx | 0 .../test/CMakeLists.txt | 0 .../CMakeLists.txt | 0 .../forward.cxx | 0 .../importable.cxx | 0 .../no_modules.cxx | 0 .../private.cxx | 0 .../subdir/importable.cxx | 0 .../test/CMakeLists.txt | 0 .../export-modules-from-ninja/CMakeLists.txt | 0 .../export-modules-from-ninja/forward.cxx | 0 .../export-modules-from-ninja/importable.cxx | 0 .../export-modules-from-ninja/no_modules.cxx | 0 .../export-modules-from-ninja/private.cxx | 0 .../subdir/importable.cxx | 0 .../CMakeLists.txt | 0 .../importable.cxx | 0 .../test/CMakeLists.txt | 0 .../CMakeLists.txt | 0 .../importable.cxx | 0 .../test/CMakeLists.txt | 0 .../CMakeLists.txt | 0 .../importable.cxx | 0 .../test/CMakeLists.txt | 0 .../CMakeLists.txt | 0 .../importable.cxx | 0 .../test/CMakeLists.txt | 0 .../CMakeLists.txt | 0 .../forward.cxx | 0 .../importable.cxx | 0 .../include/include.h | 0 .../includes/includes.h | 0 .../no_modules.cxx | 0 .../private.cxx | 0 .../subdir/importable.cxx | 0 .../test/CMakeLists.txt | 0 .../CMakeLists.txt | 0 .../forward.cxx | 0 .../importable.cxx | 0 .../include/include.h | 0 .../includes/includes.h | 0 .../no_modules.cxx | 0 .../private.cxx | 0 .../subdir/importable.cxx | 0 .../test/CMakeLists.txt | 0 .../export-usage-build/CMakeLists.txt | 0 .../examples/export-usage-build/forward.cxx | 0 .../export-usage-build/importable.cxx | 0 .../examples/export-usage-build/private.cxx | 0 .../export-usage-build/test/CMakeLists.txt | 0 .../export-usage-install/CMakeLists.txt | 0 .../examples/export-usage-install/forward.cxx | 0 .../export-usage-install/importable.cxx | 0 .../examples/export-usage-install/private.cxx | 0 .../export-usage-install/test/CMakeLists.txt | 0 .../export-with-headers-build/CMakeLists.txt | 0 .../export-with-headers-build/importable.cxx | 0 .../include/subdir/header.h | 0 .../test/CMakeLists.txt | 0 .../CMakeLists.txt | 0 .../importable.cxx | 0 .../include/subdir/header.h | 0 .../test/CMakeLists.txt | 0 .../file-sets-with-dot/CMakeLists.txt | 0 .../file-sets-with-dot/importable.cxx | 0 .../examples/file-sets-with-dot/main.cxx | 0 .../examples/generated/CMakeLists.txt | 0 .../examples/generated/importable.cxx.in | 0 .../examples/generated/main.cxx | 0 .../import-from-object/CMakeLists.txt | 0 .../examples/import-from-object/object-a.cxx | 0 .../examples/import-from-object/object-b.cxx | 0 ...es-export-build-database-build-check.cmake | 0 ...-modules-export-build-database-check.cmake | 0 ...t-modules-export-build-database-stderr.txt | 0 ...se-target-cmake_build_database-check.cmake | 0 .../CXX-check.cmake | 0 .../CXX/Debug-check.cmake | 0 .../CXX/Release-Release-check.cmake | 0 .../Debug-check.cmake | 0 .../Release-check.cmake | 0 .../examples/import-modules/CMakeLists.txt | 0 .../examples/import-modules/use.cxx | 0 .../import-std-export-no-std-build-stderr.txt | 0 .../CMakeLists.txt | 0 .../impl-uses-std.cxx | 0 .../import-std-export-no-std-build/main.cxx | 0 .../test/CMakeLists.txt | 0 .../uses-std.cxx | 0 ...mport-std-export-no-std-install-stderr.txt | 0 .../CMakeLists.txt | 0 .../impl-uses-std.cxx | 0 .../import-std-export-no-std-install/main.cxx | 0 .../test/CMakeLists.txt | 0 .../uses-std.cxx | 0 ...mport-std-no-std-property-build-result.txt | 0 ...mport-std-no-std-property-build-stdout.txt | 0 .../import-std-no-std-property-stderr.txt | 0 .../import-std-no-std-property/CMakeLists.txt | 0 .../import-std-no-std-property/main.cxx | 0 .../import-std-not-in-export-build-stderr.txt | 0 .../CMakeLists.txt | 0 .../import-std-not-in-export-build/main.cxx | 0 .../test/CMakeLists.txt | 0 .../uses-std.cxx | 0 ...mport-std-not-in-export-install-stderr.txt | 0 .../CMakeLists.txt | 0 .../import-std-not-in-export-install/main.cxx | 0 .../test/CMakeLists.txt | 0 .../uses-std.cxx | 0 .../examples/import-std-stderr.txt | 0 ...-transitive-not-in-export-build-stderr.txt | 0 ...ransitive-not-in-export-install-stderr.txt | 0 .../import-std-transitive/CMakeLists.txt | 0 .../examples/import-std-transitive/main.cxx | 0 .../examples/import-std/CMakeLists.txt | 0 .../examples/import-std/main.cxx | 0 .../install-bmi-and-interfaces/CMakeLists.txt | 0 .../check-for-bmi.cmake | 0 .../install-bmi-and-interfaces/importable.cxx | 0 .../examples/install-bmi/CMakeLists.txt | 0 .../examples/install-bmi/check-for-bmi.cmake | 0 .../examples/install-bmi/importable.cxx | 0 .../internal-partitions/CMakeLists.txt | 0 .../internal-partitions/importable.cxx | 0 .../examples/internal-partitions/internal.cxx | 0 .../examples/internal-partitions/main.cxx | 0 .../internal-partitions/partition.cxx | 0 .../examples/library/CMakeLists.txt | 0 .../examples/library/importable.cxx | 0 .../examples/library/main.cxx | 0 .../examples/ninja-cmp0154-build-check.cmake | 0 .../examples/ninja-cmp0154/CMakeLists.txt | 0 .../examples/ninja-cmp0154/importable.cxx.in | 0 .../examples/ninja-cmp0154/main.cxx | 0 .../examples/ninja-cmp0154/unrelated.cxx | 0 .../CMakeLists.txt | 0 .../CMakeLists.txt | 0 .../non-trivial-collation-order/main.cxx | 0 .../module_level/mod1.cxx | 0 .../module_level/mod2.cxx | 0 .../module_level/mod3.cxx | 0 .../module_level/mod4.cxx | 0 .../module_level/mod5.cxx | 0 .../module_level/mod6.cxx | 0 .../module_level/mod7.cxx | 0 .../partition_level/impl-non-partition.cxx | 0 .../partition_level/impl1.cxx | 0 .../partition_level/impl2.cxx | 0 .../partition_level/impl3.cxx | 0 .../partition_level/impl4.cxx | 0 .../partition_level/impl5.cxx | 0 .../partition_level/impl6.cxx | 0 .../partition_level/impl7.cxx | 0 .../partition_level/intf1.cxx | 0 .../partition_level/intf2.cxx | 0 .../partition_level/intf3.cxx | 0 .../partition_level/intf4.cxx | 0 .../partition_level/intf5.cxx | 0 .../partition_level/intf6.cxx | 0 .../partition_level/intf7.cxx | 0 .../partition_level/partition_level.cxx | 0 .../target_level/target1.cxx | 0 .../target_level/target2.cxx | 0 .../target_level/target3.cxx | 0 .../target_level/target4.cxx | 0 .../target_level/target5.cxx | 0 .../target_level/target6.cxx | 0 .../target_level/target7.cxx | 0 .../examples/object-library/CMakeLists.txt | 0 .../examples/object-library/importable.cxx | 0 .../examples/object-library/main.cxx | 0 .../examples/partitions/CMakeLists.txt | 0 .../examples/partitions/importable.cxx | 0 .../examples/partitions/main.cxx | 0 .../examples/partitions/partition.cxx | 0 .../public-req-private-build-result.txt | 0 .../public-req-private-build-stdout.txt | 1 + .../public-req-private/CMakeLists.txt | 0 .../examples/public-req-private/priv.cxx | 0 .../examples/public-req-private/pub.cxx | 0 .../req-private-other-target-build-result.txt | 0 .../req-private-other-target-build-stdout.txt | 0 .../req-private-other-target/CMakeLists.txt | 0 .../examples/req-private-other-target/lib.cxx | 0 .../req-private-other-target/main.cxx | 0 .../req-private-other-target/priv.cxx | 0 .../examples/same-src-name/CMakeLists.txt | 0 .../examples/same-src-name/a/same.cxx | 0 .../examples/same-src-name/b/same.cxx | 0 .../examples/same-src-name/main.cxx | 0 .../examples/scan-with-pch/CMakeLists.txt | 0 .../examples/scan-with-pch/main.cxx | 0 .../examples/scan-with-pch/pch.h | 0 .../examples/scan_properties/CMakeLists.txt | 0 .../examples/scan_properties/always_scan.cxx | 0 .../examples/scan_properties/join.cxx | 0 .../examples/scan_properties/main.cxx | 0 .../examples/scan_properties/module.cxx | 0 .../examples/scan_properties/never_scan.ixx | 0 .../examples/simple/CMakeLists.txt | 0 .../examples/simple/importable.cxx | 0 .../examples/simple/main.cxx | 0 .../examples/target-objects/CMakeLists.txt | 0 .../examples/target-objects/importable.cxx | 0 .../examples/target-objects/main.cxx | 0 .../examples/try-compile/CMakeLists.txt | 0 .../examples/try-compile/importable.cxx | 0 .../examples/try-compile/use_importable.cxx | 0 .../examples/try-run/CMakeLists.txt | 0 .../examples/try-run/importable.cxx | 0 .../examples/try-run/main.cxx | 0 .../examples/unity-build/CMakeLists.txt | 0 .../examples/unity-build/importable.cxx | 0 .../examples/unity-build/main.cxx | 0 .../examples/unity-build/unity.h | 0 .../examples/unity-build/unity1.cxx | 0 .../examples/unity-build/unity2.cxx | 0 .../examples/vs-without-flags/CMakeLists.txt | 0 .../examples/vs-without-flags/main.cxx | 0 .../examples/vs-without-flags/module.cxx | 0 366 files changed, 633 insertions(+), 330 deletions(-) delete mode 100644 Tests/RunCMake/CXXModules/examples/public-req-private-build-stdout.txt create mode 100644 Tests/RunCMake/CXXModulesCompile/CMakeLists.txt create mode 100644 Tests/RunCMake/CXXModulesCompile/Inspect.cmake create mode 100644 Tests/RunCMake/CXXModulesCompile/RunCMakeTest.cmake create mode 100644 Tests/RunCMake/CXXModulesCompile/check-json.cmake rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/build-database-check.cmake (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/circular-build-result.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/circular-build-stdout.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/circular/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/circular/circular-a.cppm (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/circular/circular-b.cppm (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/cxx-modules-find-bmi-and-interfaces.cmake (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/cxx-modules-find-bmi.cmake (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/cxx-modules-rules.cmake (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/deep-chain/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/deep-chain/a.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/deep-chain/b.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/deep-chain/c.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/deep-chain/d.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/deep-chain/e.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/deep-chain/main.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/depchain-collation-restat-rebuild-check.cmake (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/depchain-collation-restat/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/depchain-collation-restat/importable.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/depchain-collation-restat/main.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/depchain-collation-restat/pre-rebuild.cmake (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/depchain-modmap-rebuild-check.cmake (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/depchain-modmap/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/depchain-modmap/importable.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/depchain-modmap/main.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/depchain-modmap/pre-rebuild.cmake (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/depchain-modules-json-file-rebuild-check.cmake (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/depchain-modules-json-file/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/depchain-modules-json-file/importable.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/depchain-modules-json-file/main.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/depchain-modules-json-file/pre-rebuild.cmake (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/duplicate-sources-stderr.txt (73%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/duplicate-sources/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/duplicate-sources/duplicate.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/duplicate-sources/main.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/duplicate/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/duplicate/duplicate.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/duplicate/main.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/expect/export-build-database-all-multi.json (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/expect/export-build-database-all.json (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/expect/export-build-database-config.json (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/expect/export-build-database-cxx-config.json (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/expect/export-build-database-cxx-multi.json (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/expect/export-build-database-cxx.json (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/expect/export-build-database-imported-all-multi.json (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/expect/export-build-database-imported-all.json (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/expect/export-build-database-imported-config.json (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/expect/export-build-database-imported-cxx-config.json (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/expect/export-build-database-imported-cxx-multi.json (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/expect/export-build-database-imported-cxx.json (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/expect/export-build-database-imported-target.json (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/expect/export-build-database-target.json (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-bmi-and-interface-build/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-bmi-and-interface-build/forward.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-bmi-and-interface-build/importable.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-bmi-and-interface-build/no_modules.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-bmi-and-interface-build/private.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-bmi-and-interface-build/subdir/importable.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-bmi-and-interface-build/test/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-bmi-and-interface-install/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-bmi-and-interface-install/forward.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-bmi-and-interface-install/importable.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-bmi-and-interface-install/no_modules.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-bmi-and-interface-install/private.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-bmi-and-interface-install/subdir/importable.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-bmi-and-interface-install/test/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-build-database-build-check.cmake (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-build-database-check.cmake (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-build-database-setup.cmake (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-build-database-stderr.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-build-database-target-cmake_build_database-check.cmake (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-build-database-target-cmake_build_database/CXX-check.cmake (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-build-database-target-cmake_build_database/CXX/Debug-check.cmake (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-build-database-target-cmake_build_database/CXX/Release-Release-check.cmake (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-build-database-target-cmake_build_database/Debug-check.cmake (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-build-database-target-cmake_build_database/Release-Release-check.cmake (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-build-database/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-build-database/dep_interface_include/anchor (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-build-database/importable.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-build-database/lib.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-build-database/target_interface_include/anchor (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-build-database/target_public_include/anchor (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-command-sepdir-build/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-command-sepdir-build/subdir/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-command-sepdir-build/subdir/importable.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-command-sepdir-build/test/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-command-sepdir-install/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-command-sepdir-install/subdir/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-command-sepdir-install/subdir/importable.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-command-sepdir-install/test/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-compile-commands-check.cmake (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-compile-commands/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-compile-commands/importable.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-compile-commands/main.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-include-directories-build/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-include-directories-build/forward.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-include-directories-build/importable.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-include-directories-build/include/include.h (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-include-directories-build/includes/includes.h (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-include-directories-build/no_modules.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-include-directories-build/private.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-include-directories-build/subdir/importable.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-include-directories-build/test/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-include-directories-install/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-include-directories-install/forward.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-include-directories-install/importable.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-include-directories-install/include/include.h (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-include-directories-install/includes/includes.h (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-include-directories-install/no_modules.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-include-directories-install/private.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-include-directories-install/subdir/importable.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-include-directories-install/test/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-include-directories-old-cmake-build/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-include-directories-old-cmake-build/importable.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-include-directories-old-cmake-build/test/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-include-directories-old-cmake-install/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-include-directories-old-cmake-install/importable.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-include-directories-old-cmake-install/test/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-interface-build/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-interface-build/forward.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-interface-build/importable.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-interface-build/no_modules.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-interface-build/private.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-interface-build/subdir/importable.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-interface-build/test/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-interface-install/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-interface-install/forward.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-interface-install/importable.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-interface-install/no_modules.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-interface-install/private.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-interface-install/subdir/importable.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-interface-install/test/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-interface-no-properties-build/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-interface-no-properties-build/forward.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-interface-no-properties-build/importable.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-interface-no-properties-build/no_modules.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-interface-no-properties-build/private.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-interface-no-properties-build/subdir/importable.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-interface-no-properties-build/test/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-interface-no-properties-install/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-interface-no-properties-install/forward.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-interface-no-properties-install/importable.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-interface-no-properties-install/no_modules.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-interface-no-properties-install/private.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-interface-no-properties-install/subdir/importable.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-interface-no-properties-install/test/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-modules-from-ninja/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-modules-from-ninja/forward.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-modules-from-ninja/importable.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-modules-from-ninja/no_modules.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-modules-from-ninja/private.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-modules-from-ninja/subdir/importable.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-transitive-modules-build/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-transitive-modules-build/importable.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-transitive-modules-build/test/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-transitive-modules-install/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-transitive-modules-install/importable.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-transitive-modules-install/test/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-transitive-modules1-build/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-transitive-modules1-build/importable.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-transitive-modules1-build/test/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-transitive-modules1-install/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-transitive-modules1-install/importable.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-transitive-modules1-install/test/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-transitive-targets-build/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-transitive-targets-build/forward.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-transitive-targets-build/importable.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-transitive-targets-build/include/include.h (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-transitive-targets-build/includes/includes.h (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-transitive-targets-build/no_modules.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-transitive-targets-build/private.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-transitive-targets-build/subdir/importable.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-transitive-targets-build/test/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-transitive-targets-install/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-transitive-targets-install/forward.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-transitive-targets-install/importable.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-transitive-targets-install/include/include.h (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-transitive-targets-install/includes/includes.h (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-transitive-targets-install/no_modules.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-transitive-targets-install/private.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-transitive-targets-install/subdir/importable.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-transitive-targets-install/test/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-usage-build/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-usage-build/forward.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-usage-build/importable.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-usage-build/private.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-usage-build/test/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-usage-install/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-usage-install/forward.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-usage-install/importable.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-usage-install/private.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-usage-install/test/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-with-headers-build/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-with-headers-build/importable.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-with-headers-build/include/subdir/header.h (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-with-headers-build/test/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-with-headers-install/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-with-headers-install/importable.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-with-headers-install/include/subdir/header.h (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/export-with-headers-install/test/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/file-sets-with-dot/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/file-sets-with-dot/importable.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/file-sets-with-dot/main.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/generated/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/generated/importable.cxx.in (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/generated/main.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/import-from-object/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/import-from-object/object-a.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/import-from-object/object-b.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/import-modules-export-build-database-build-check.cmake (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/import-modules-export-build-database-check.cmake (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/import-modules-export-build-database-stderr.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/import-modules-export-build-database-target-cmake_build_database-check.cmake (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/import-modules-export-build-database-target-cmake_build_database/CXX-check.cmake (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/import-modules-export-build-database-target-cmake_build_database/CXX/Debug-check.cmake (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/import-modules-export-build-database-target-cmake_build_database/CXX/Release-Release-check.cmake (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/import-modules-export-build-database-target-cmake_build_database/Debug-check.cmake (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/import-modules-export-build-database-target-cmake_build_database/Release-check.cmake (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/import-modules/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/import-modules/use.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/import-std-export-no-std-build-stderr.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/import-std-export-no-std-build/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/import-std-export-no-std-build/impl-uses-std.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/import-std-export-no-std-build/main.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/import-std-export-no-std-build/test/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/import-std-export-no-std-build/uses-std.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/import-std-export-no-std-install-stderr.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/import-std-export-no-std-install/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/import-std-export-no-std-install/impl-uses-std.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/import-std-export-no-std-install/main.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/import-std-export-no-std-install/test/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/import-std-export-no-std-install/uses-std.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/import-std-no-std-property-build-result.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/import-std-no-std-property-build-stdout.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/import-std-no-std-property-stderr.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/import-std-no-std-property/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/import-std-no-std-property/main.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/import-std-not-in-export-build-stderr.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/import-std-not-in-export-build/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/import-std-not-in-export-build/main.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/import-std-not-in-export-build/test/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/import-std-not-in-export-build/uses-std.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/import-std-not-in-export-install-stderr.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/import-std-not-in-export-install/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/import-std-not-in-export-install/main.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/import-std-not-in-export-install/test/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/import-std-not-in-export-install/uses-std.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/import-std-stderr.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/import-std-transitive-not-in-export-build-stderr.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/import-std-transitive-not-in-export-install-stderr.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/import-std-transitive/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/import-std-transitive/main.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/import-std/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/import-std/main.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/install-bmi-and-interfaces/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/install-bmi-and-interfaces/check-for-bmi.cmake (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/install-bmi-and-interfaces/importable.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/install-bmi/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/install-bmi/check-for-bmi.cmake (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/install-bmi/importable.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/internal-partitions/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/internal-partitions/importable.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/internal-partitions/internal.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/internal-partitions/main.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/internal-partitions/partition.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/library/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/library/importable.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/library/main.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/ninja-cmp0154-build-check.cmake (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/ninja-cmp0154/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/ninja-cmp0154/importable.cxx.in (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/ninja-cmp0154/main.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/ninja-cmp0154/unrelated.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/non-trivial-collation-order-randomized/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/non-trivial-collation-order/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/non-trivial-collation-order/main.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/non-trivial-collation-order/module_level/mod1.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/non-trivial-collation-order/module_level/mod2.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/non-trivial-collation-order/module_level/mod3.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/non-trivial-collation-order/module_level/mod4.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/non-trivial-collation-order/module_level/mod5.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/non-trivial-collation-order/module_level/mod6.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/non-trivial-collation-order/module_level/mod7.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/non-trivial-collation-order/partition_level/impl-non-partition.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/non-trivial-collation-order/partition_level/impl1.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/non-trivial-collation-order/partition_level/impl2.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/non-trivial-collation-order/partition_level/impl3.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/non-trivial-collation-order/partition_level/impl4.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/non-trivial-collation-order/partition_level/impl5.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/non-trivial-collation-order/partition_level/impl6.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/non-trivial-collation-order/partition_level/impl7.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/non-trivial-collation-order/partition_level/intf1.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/non-trivial-collation-order/partition_level/intf2.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/non-trivial-collation-order/partition_level/intf3.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/non-trivial-collation-order/partition_level/intf4.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/non-trivial-collation-order/partition_level/intf5.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/non-trivial-collation-order/partition_level/intf6.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/non-trivial-collation-order/partition_level/intf7.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/non-trivial-collation-order/partition_level/partition_level.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/non-trivial-collation-order/target_level/target1.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/non-trivial-collation-order/target_level/target2.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/non-trivial-collation-order/target_level/target3.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/non-trivial-collation-order/target_level/target4.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/non-trivial-collation-order/target_level/target5.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/non-trivial-collation-order/target_level/target6.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/non-trivial-collation-order/target_level/target7.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/object-library/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/object-library/importable.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/object-library/main.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/partitions/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/partitions/importable.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/partitions/main.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/partitions/partition.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/public-req-private-build-result.txt (100%) create mode 100644 Tests/RunCMake/CXXModulesCompile/examples/public-req-private-build-stdout.txt rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/public-req-private/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/public-req-private/priv.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/public-req-private/pub.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/req-private-other-target-build-result.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/req-private-other-target-build-stdout.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/req-private-other-target/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/req-private-other-target/lib.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/req-private-other-target/main.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/req-private-other-target/priv.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/same-src-name/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/same-src-name/a/same.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/same-src-name/b/same.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/same-src-name/main.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/scan-with-pch/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/scan-with-pch/main.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/scan-with-pch/pch.h (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/scan_properties/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/scan_properties/always_scan.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/scan_properties/join.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/scan_properties/main.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/scan_properties/module.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/scan_properties/never_scan.ixx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/simple/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/simple/importable.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/simple/main.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/target-objects/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/target-objects/importable.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/target-objects/main.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/try-compile/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/try-compile/importable.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/try-compile/use_importable.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/try-run/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/try-run/importable.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/try-run/main.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/unity-build/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/unity-build/importable.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/unity-build/main.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/unity-build/unity.h (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/unity-build/unity1.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/unity-build/unity2.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/vs-without-flags/CMakeLists.txt (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/vs-without-flags/main.cxx (100%) rename Tests/RunCMake/{CXXModules => CXXModulesCompile}/examples/vs-without-flags/module.cxx (100%) diff --git a/.gitlab/ci/ctest_exclusions.cmake b/.gitlab/ci/ctest_exclusions.cmake index 7cd048ffe1..6d29323a5c 100644 --- a/.gitlab/ci/ctest_exclusions.cmake +++ b/.gitlab/ci/ctest_exclusions.cmake @@ -34,6 +34,7 @@ if ("$ENV{CMAKE_CONFIGURATION}" MATCHES "_valgrind") "^RunCMake.Autogen_Qt6_1$" "^RunCMake.GoogleTest$" "^RunCMake.CXXModules$" + "^RunCMake.CXXModulesCompile$" "^RunCMake.CommandLine$" # Too spurious under Valgrind. diff --git a/Tests/RunCMake/CMakeLists.txt b/Tests/RunCMake/CMakeLists.txt index 880776be0d..faf2e06011 100644 --- a/Tests/RunCMake/CMakeLists.txt +++ b/Tests/RunCMake/CMakeLists.txt @@ -833,11 +833,14 @@ set_property(TEST RunCMake.DependencyGraph APPEND PROPERTY LABELS "Fortran") # Add C++ Module tests. add_RunCMake_test(CXXModules + -DCMake_TEST_CXX_STDLIB_MODULES_JSON=${CMake_TEST_CXX_STDLIB_MODULES_JSON} +) +add_RunCMake_test(CXXModulesCompile -DCMake_TEST_MODULE_COMPILATION=${CMake_TEST_MODULE_COMPILATION} -DCMake_TEST_MODULE_COMPILATION_RULES=${CMake_TEST_MODULE_COMPILATION_RULES} -DCMake_TEST_CXX_STDLIB_MODULES_JSON=${CMake_TEST_CXX_STDLIB_MODULES_JSON} ) -set_property(TEST RunCMake.CXXModules APPEND +set_property(TEST RunCMake.CXXModules RunCMake.CXXModulesCompile APPEND PROPERTY LABELS "CXXModules") # ctresalloc links against CMakeLib and CTestLib, which means it can't be built diff --git a/Tests/RunCMake/CXXModules/RunCMakeTest.cmake b/Tests/RunCMake/CXXModules/RunCMakeTest.cmake index 9a8e6987b5..31c5e3e144 100644 --- a/Tests/RunCMake/CXXModules/RunCMakeTest.cmake +++ b/Tests/RunCMake/CXXModules/RunCMakeTest.cmake @@ -135,330 +135,3 @@ else () message(FATAL_ERROR "Please add 'DependInfo' tests for the '${RunCMake_GENERATOR}' generator.") endif () - -# Actual compilation tests. -if (NOT CMake_TEST_MODULE_COMPILATION) - return () -endif () - -function (run_cxx_module_test directory) - set(test_name "${directory}") - if (NOT ARGN STREQUAL "") - list(POP_FRONT ARGN test_name) - endif () - - set(RunCMake_TEST_SOURCE_DIR "${CMAKE_CURRENT_LIST_DIR}/examples/${directory}") - set(RunCMake_TEST_BINARY_DIR "${RunCMake_BINARY_DIR}/examples/${test_name}-build") - - if (RunCMake_GENERATOR_IS_MULTI_CONFIG) - set(RunCMake_TEST_OPTIONS -DCMAKE_CONFIGURATION_TYPES=Debug) - else () - set(RunCMake_TEST_OPTIONS -DCMAKE_BUILD_TYPE=Debug) - endif () - if (directory MATCHES "import-std") - list(APPEND RunCMake_TEST_OPTIONS - ${stdlib_custom_json}) - endif () - - if (RunCMake_CXXModules_INSTALL) - set(prefix "${RunCMake_BINARY_DIR}/examples/${test_name}-install") - file(REMOVE_RECURSE "${prefix}") - list(APPEND RunCMake_TEST_OPTIONS - "-DCMAKE_INSTALL_PREFIX=${prefix}") - endif () - - list(APPEND RunCMake_TEST_OPTIONS - "-DCMake_TEST_MODULE_COMPILATION_RULES=${CMake_TEST_MODULE_COMPILATION_RULES}" - ${ARGN}) - run_cmake("examples/${test_name}") - set(RunCMake_TEST_NO_CLEAN 1) - if (RunCMake_CXXModules_TARGET) - run_cmake_command("examples/${test_name}-build" "${CMAKE_COMMAND}" --build . --config Debug --target "${RunCMake_CXXModules_TARGET}") - else () - run_cmake_command("examples/${test_name}-build" "${CMAKE_COMMAND}" --build . --config Debug) - foreach (RunCMake_CXXModules_TARGET IN LISTS RunCMake_CXXModules_TARGETS) - set(RunCMake_CXXModules_CONFIG "Debug") - set(RunCMake_CXXModules_NAME_SUFFIX "") - if (RunCMake_CXXModules_TARGET MATCHES "(.*)@(.*)") - set(RunCMake_CXXModules_TARGET "${CMAKE_MATCH_1}") - set(RunCMake_CXXModules_CONFIG "${CMAKE_MATCH_2}") - set(RunCMake_CXXModules_NAME_SUFFIX "-${RunCMake_CXXModules_CONFIG}") - endif () - run_cmake_command("examples/${test_name}-target-${RunCMake_CXXModules_TARGET}${RunCMake_CXXModules_NAME_SUFFIX}" "${CMAKE_COMMAND}" --build . --target "${RunCMake_CXXModules_TARGET}" --config "${RunCMake_CXXModules_CONFIG}") - endforeach () - endif () - if (RunCMake_CXXModules_INSTALL) - run_cmake_command("examples/${test_name}-install" "${CMAKE_COMMAND}" --build . --target install --config Debug) - endif () - if (NOT RunCMake_CXXModules_NO_TEST) - run_cmake_command("examples/${test_name}-test" "${CMAKE_CTEST_COMMAND}" -C Debug --output-on-failure) - endif () - if (RunCMake_CXXModules_REBUILD) - execute_process(COMMAND ${CMAKE_COMMAND} -E sleep 1.125) # handle 1s resolution - include("${RunCMake_TEST_SOURCE_DIR}/pre-rebuild.cmake") - execute_process(COMMAND ${CMAKE_COMMAND} -E sleep 1.125) # handle 1s resolution - run_cmake_command("examples/${test_name}-rebuild" "${CMAKE_COMMAND}" --build . --config Debug) - endif () -endfunction () - -function (run_cxx_module_test_target directory target) - set(RunCMake_CXXModules_TARGET "${target}") - set(RunCMake_CXXModules_NO_TEST 1) - run_cxx_module_test("${directory}" ${ARGN}) -endfunction () - -function (run_cxx_module_test_rebuild directory) - set(RunCMake_CXXModules_INSTALL 0) - set(RunCMake_CXXModules_NO_TEST 1) - set(RunCMake_CXXModules_REBUILD 1) - run_cxx_module_test("${directory}" ${ARGN}) -endfunction () - -# Module compilation features: -# Compiler-based: -# - `named`: basic support for named modules is available -# - `shared`: shared libraries are supported -# - `partitions`: module partitions are supported -# - `internal_partitions`: internal module partitions are supported -# - `bmionly`: the compiler supports BMI-only builds -# - `import_std23`: the compiler supports `import std` for C++23 -# -# Generator-based: -# - `compile_commands`: the generator supports `compile_commands.json` -# - `collation`: the generator supports module collation features -# - `export_bmi`: the generator supports exporting BMIs -# - `ninja`: a `ninja` binary is available to perform `Ninja`-only testing -# (assumed if the generator matches `Ninja`). -string(REPLACE "," ";" CMake_TEST_MODULE_COMPILATION "${CMake_TEST_MODULE_COMPILATION}") -if (RunCMake_GENERATOR MATCHES "Ninja") - list(APPEND CMake_TEST_MODULE_COMPILATION - "ninja") -endif () - -if (RunCMake_GENERATOR MATCHES "Ninja") - if (RunCMake_GENERATOR_IS_MULTI_CONFIG) - set(ninja_cmp0154_target "CMakeFiles/ninja_cmp0154.dir/Debug/unrelated.cxx${CMAKE_CXX_OUTPUT_EXTENSION}") - else () - set(ninja_cmp0154_target "CMakeFiles/ninja_cmp0154.dir/unrelated.cxx${CMAKE_CXX_OUTPUT_EXTENSION}") - endif () - run_cxx_module_test_target(ninja-cmp0154 "${ninja_cmp0154_target}") -endif () - -run_cxx_module_test(scan-with-pch) - -# Tests which use named modules. -if ("named" IN_LIST CMake_TEST_MODULE_COMPILATION) - run_cxx_module_test(simple) - run_cxx_module_test(file-sets-with-dot) - run_cxx_module_test(vs-without-flags) - run_cxx_module_test(library library-static -DBUILD_SHARED_LIBS=OFF) - run_cxx_module_test(unity-build) - run_cxx_module_test(object-library) - run_cxx_module_test(generated) - run_cxx_module_test(deep-chain) - run_cxx_module_test(non-trivial-collation-order) - run_cxx_module_test(non-trivial-collation-order-randomized) - run_cxx_module_test(duplicate) - set(RunCMake_CXXModules_NO_TEST 1) - run_cxx_module_test(import-from-object) - run_cxx_module_test(circular) - run_cxx_module_test(try-compile) - run_cxx_module_test(try-run) - unset(RunCMake_CXXModules_NO_TEST) - run_cxx_module_test(same-src-name) - run_cxx_module_test(scan_properties) - run_cxx_module_test(target-objects) - - if ("cxx_std_23" IN_LIST CMAKE_CXX_COMPILE_FEATURES AND - "import_std23" IN_LIST CMake_TEST_MODULE_COMPILATION) - run_cxx_module_test(import-std) - set(RunCMake_CXXModules_NO_TEST 1) - run_cxx_module_test(import-std-no-std-property) - unset(RunCMake_CXXModules_NO_TEST) - run_cxx_module_test(import-std-export-no-std-build) - set(RunCMake_CXXModules_INSTALL 1) - run_cxx_module_test(import-std-export-no-std-install) - unset(RunCMake_CXXModules_INSTALL) - - if ("collation" IN_LIST CMake_TEST_MODULE_COMPILATION) - run_cxx_module_test(import-std-not-in-export-build) - run_cxx_module_test(import-std-transitive import-std-transitive-not-in-export-build "-DCMAKE_PREFIX_PATH=${RunCMake_BINARY_DIR}/examples/import-std-not-in-export-build-build") - - set(RunCMake_CXXModules_INSTALL 1) - run_cxx_module_test(import-std-not-in-export-install) - unset(RunCMake_CXXModules_INSTALL) - run_cxx_module_test(import-std-transitive import-std-transitive-not-in-export-install "-DCMAKE_PREFIX_PATH=${RunCMake_BINARY_DIR}/examples/import-std-not-in-export-install-install") - - run_cxx_module_test(import-std-transitive import-std-transitive-export-no-std-build "-DCMAKE_PREFIX_PATH=${RunCMake_BINARY_DIR}/examples/import-std-export-no-std-build-build" -DEXPORT_NO_STD=1) - run_cxx_module_test(import-std-transitive import-std-transitive-export-no-std-install "-DCMAKE_PREFIX_PATH=${RunCMake_BINARY_DIR}/examples/import-std-export-no-std-install-install" -DEXPORT_NO_STD=1) - endif () - endif () -endif () - -# Tests which require compile commands support. -if ("compile_commands" IN_LIST CMake_TEST_MODULE_COMPILATION) - run_cxx_module_test(export-compile-commands) -endif () - -macro (setup_export_build_database_targets) - set(RunCMake_CXXModules_TARGETS - cmake_build_database-CXX - cmake_build_database) - - if (RunCMake_GENERATOR_IS_MULTI_CONFIG) - list(INSERT RunCMake_CXXModules_TARGETS 0 - cmake_build_database-CXX-Debug - cmake_build_database-Debug - # Other config targets. - cmake_build_database-CXX-Release@Release - cmake_build_database-Release@Release) - endif () -endmacro () - -# Tests which require build database support. -if ("build_database" IN_LIST CMake_TEST_MODULE_COMPILATION) - setup_export_build_database_targets() - set(RunCMake_CXXModules_NO_TEST 1) - - run_cxx_module_test(export-build-database) - - unset(RunCMake_CXXModules_NO_TEST) - unset(RunCMake_CXXModules_TARGETS) -endif () - -# Tests which require collation work. -if ("collation" IN_LIST CMake_TEST_MODULE_COMPILATION) - run_cxx_module_test(duplicate-sources) - run_cxx_module_test(public-req-private) - set(RunCMake_CXXModules_NO_TEST 1) - run_cxx_module_test(req-private-other-target) - unset(RunCMake_CXXModules_NO_TEST) - run_cxx_module_test_rebuild(depchain-modmap) - run_cxx_module_test_rebuild(depchain-modules-json-file) - if (RunCMake_GENERATOR MATCHES "Ninja") - run_cxx_module_test_rebuild(depchain-collation-restat) - endif () -endif () - -# Tests which use named modules in shared libraries. -if ("shared" IN_LIST CMake_TEST_MODULE_COMPILATION) - run_cxx_module_test(library library-shared -DBUILD_SHARED_LIBS=ON) -endif () - -# Tests which use partitions. -if ("partitions" IN_LIST CMake_TEST_MODULE_COMPILATION) - run_cxx_module_test(partitions) -endif () - -# Tests which use internal partitions. -if ("internal_partitions" IN_LIST CMake_TEST_MODULE_COMPILATION) - run_cxx_module_test(internal-partitions) -endif () - -function (run_cxx_module_import_test type name) - set(RunCMake_CXXModules_INSTALL 0) - - if ("EXPORT_BUILD_DATABASE" IN_LIST ARGN) - list(REMOVE_ITEM ARGN EXPORT_BUILD_DATABASE) - list(APPEND ARGN -DCMAKE_EXPORT_BUILD_DATABASE=1) - endif () - - run_cxx_module_test(import-modules "import-modules-${name}" "-DCMAKE_PREFIX_PATH=${RunCMake_BINARY_DIR}/examples/${name}-${type}" ${ARGN}) -endfunction () - -# Tests which install BMIs -if ("export_bmi" IN_LIST CMake_TEST_MODULE_COMPILATION) - run_cxx_module_test(export-interface-no-properties-build) - run_cxx_module_test(export-interface-build) - run_cxx_module_test(export-include-directories-build) - run_cxx_module_test(export-include-directories-old-cmake-build) - run_cxx_module_test(export-usage-build) - run_cxx_module_test(export-bmi-and-interface-build) - run_cxx_module_test(export-command-sepdir-build) - run_cxx_module_test(export-transitive-targets-build) - run_cxx_module_test(export-transitive-modules1-build) - run_cxx_module_test(export-transitive-modules-build export-transitive-modules-build "-DCMAKE_PREFIX_PATH=${RunCMake_BINARY_DIR}/examples/export-transitive-modules1-build-build" ) - run_cxx_module_test(export-with-headers-build) - - if ("collation" IN_LIST CMake_TEST_MODULE_COMPILATION AND - "bmionly" IN_LIST CMake_TEST_MODULE_COMPILATION) - run_cxx_module_import_test(build export-interface-build) - run_cxx_module_import_test(build export-interface-no-properties-build -DNO_PROPERTIES=1) - run_cxx_module_import_test(build export-include-directories-build -DINCLUDE_PROPERTIES=1) - run_cxx_module_import_test(build export-bmi-and-interface-build -DWITH_BMIS=1) - run_cxx_module_import_test(build export-command-sepdir-build -DEXPORT_COMMAND_SEPDIR=1) - run_cxx_module_import_test(build export-transitive-targets-build -DTRANSITIVE_TARGETS=1) - run_cxx_module_import_test(build export-transitive-modules-build -DTRANSITIVE_MODULES=1) - run_cxx_module_import_test(build export-with-headers-build -DWITH_HEADERS=1) - - if ("build_database" IN_LIST CMake_TEST_MODULE_COMPILATION) - setup_export_build_database_targets() - - run_cxx_module_import_test(build export-build-database -DBUILD_DATABASE=1 EXPORT_BUILD_DATABASE) - - unset(RunCMake_CXXModules_TARGETS) - endif () - endif () -endif () - -# All of the following tests perform installation. -set(RunCMake_CXXModules_INSTALL 1) - -# Tests which install BMIs -if ("install_bmi" IN_LIST CMake_TEST_MODULE_COMPILATION) - run_cxx_module_test(install-bmi) - run_cxx_module_test(install-bmi-and-interfaces) - - if ("export_bmi" IN_LIST CMake_TEST_MODULE_COMPILATION) - run_cxx_module_test(export-interface-no-properties-install) - run_cxx_module_test(export-interface-install) - run_cxx_module_test(export-include-directories-install) - run_cxx_module_test(export-include-directories-old-cmake-install) - run_cxx_module_test(export-usage-install) - run_cxx_module_test(export-bmi-and-interface-install) - run_cxx_module_test(export-command-sepdir-install) - run_cxx_module_test(export-transitive-targets-install) - run_cxx_module_test(export-transitive-modules1-install) - run_cxx_module_test(export-transitive-modules-install export-transitive-modules-install "-DCMAKE_PREFIX_PATH=${RunCMake_BINARY_DIR}/examples/export-transitive-modules1-install-install" ) - run_cxx_module_test(export-with-headers-install) - - if ("collation" IN_LIST CMake_TEST_MODULE_COMPILATION AND - "bmionly" IN_LIST CMake_TEST_MODULE_COMPILATION) - run_cxx_module_import_test(install export-interface-install) - run_cxx_module_import_test(install export-interface-no-properties-install -DNO_PROPERTIES=1) - run_cxx_module_import_test(install export-include-directories-install -DINCLUDE_PROPERTIES=1) - run_cxx_module_import_test(install export-bmi-and-interface-install -DWITH_BMIS=1) - run_cxx_module_import_test(install export-command-sepdir-install -DEXPORT_COMMAND_SEPDIR=1) - run_cxx_module_import_test(install export-transitive-targets-install -DTRANSITIVE_TARGETS=1) - run_cxx_module_import_test(install export-transitive-modules-install -DTRANSITIVE_MODULES=1) - run_cxx_module_import_test(install export-with-headers-install -DWITH_HEADERS=1) - endif () - endif () -endif () - -# All remaining tests require a working `Ninja` generator to set up a test case -# for the current generator. -if (NOT "ninja" IN_LIST CMake_TEST_MODULE_COMPILATION) - return () -endif () -# All remaining tests require `bmionly` in order to consume from the `ninja` -# build. -if (NOT "bmionly" IN_LIST CMake_TEST_MODULE_COMPILATION) - return () -endif () - -function (run_cxx_module_test_ninja directory) - set(RunCMake_GENERATOR "Ninja") - set(RunCMake_CXXModules_NO_TEST 1) - set(RunCMake_CXXModules_INSTALL 1) - # `Ninja` is not a multi-config generator. - set(RunCMake_GENERATOR_IS_MULTI_CONFIG 0) - run_cxx_module_test("${directory}" "${directory}-ninja" ${ARGN}) -endfunction () - -# Installation happens within `run_cxx_module_test_ninja`. -set(RunCMake_CXXModules_INSTALL 0) - -set(test_set modules-from-ninja) -run_cxx_module_test_ninja("export-${test_set}") -run_cxx_module_test(import-modules "import-${test_set}" "-DCMAKE_PREFIX_PATH=${RunCMake_BINARY_DIR}/examples/export-${test_set}-ninja-install" -DFROM_NINJA=1) diff --git a/Tests/RunCMake/CXXModules/examples/public-req-private-build-stdout.txt b/Tests/RunCMake/CXXModules/examples/public-req-private-build-stdout.txt deleted file mode 100644 index def33faa61..0000000000 --- a/Tests/RunCMake/CXXModules/examples/public-req-private-build-stdout.txt +++ /dev/null @@ -1 +0,0 @@ -CMake Error: Public C\+\+ module source `.*/Tests/RunCMake/CXXModules/examples/public-req-private/pub\.cxx` requires the `priv` C\+\+ module which is provided by a private source diff --git a/Tests/RunCMake/CXXModulesCompile/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/CMakeLists.txt new file mode 100644 index 0000000000..913371fc71 --- /dev/null +++ b/Tests/RunCMake/CXXModulesCompile/CMakeLists.txt @@ -0,0 +1,4 @@ +cmake_minimum_required(VERSION 3.23) +project(${RunCMake_TEST} NONE) + +include(${RunCMake_TEST}.cmake) diff --git a/Tests/RunCMake/CXXModulesCompile/Inspect.cmake b/Tests/RunCMake/CXXModulesCompile/Inspect.cmake new file mode 100644 index 0000000000..fb8b3e2a16 --- /dev/null +++ b/Tests/RunCMake/CXXModulesCompile/Inspect.cmake @@ -0,0 +1,23 @@ +enable_language(CXX) + +set(info "") + +# See `Modules/Compiler/MSVC-CXX.cmake` for this. If there is explicitly no +# default, the feature list is populated to be everything. +if (DEFINED CMAKE_CXX_STANDARD_DEFAULT AND + CMAKE_CXX_STANDARD_DEFAULT STREQUAL "") + set(CMAKE_CXX_COMPILE_FEATURES "") +endif () + +# Forward information about the C++ compile features. +string(APPEND info "\ +set(CMAKE_CXX_COMPILE_FEATURES \"${CMAKE_CXX_COMPILE_FEATURES}\") +set(CMAKE_MAKE_PROGRAM \"${CMAKE_MAKE_PROGRAM}\") +set(CMAKE_CXX_COMPILER_VERSION \"${CMAKE_CXX_COMPILER_VERSION}\") +set(CMAKE_CXX_OUTPUT_EXTENSION \"${CMAKE_CXX_OUTPUT_EXTENSION}\") +set(CMAKE_CXX20_STANDARD_COMPILE_OPTION \"${CMAKE_CXX20_STANDARD_COMPILE_OPTION}\") +set(CMAKE_CXX_COMPILER_FRONTEND_VARIANT \"${CMAKE_CXX_COMPILER_FRONTEND_VARIANT}\") +set(CMAKE_CXX_MODULE_MAP_FORMAT \"${CMAKE_CXX_MODULE_MAP_FORMAT}\") +") + +file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/info.cmake" "${info}") diff --git a/Tests/RunCMake/CXXModulesCompile/RunCMakeTest.cmake b/Tests/RunCMake/CXXModulesCompile/RunCMakeTest.cmake new file mode 100644 index 0000000000..b9e41a5af1 --- /dev/null +++ b/Tests/RunCMake/CXXModulesCompile/RunCMakeTest.cmake @@ -0,0 +1,372 @@ +include(RunCMake) + +set(stdlib_custom_json) +if (CMake_TEST_CXX_STDLIB_MODULES_JSON) + list(APPEND stdlib_custom_json + -DCMAKE_CXX_STDLIB_MODULES_JSON=${CMake_TEST_CXX_STDLIB_MODULES_JSON}) +endif () + +run_cmake(Inspect ${stdlib_custom_json}) +include("${RunCMake_BINARY_DIR}/Inspect-build/info.cmake") + +if (RunCMake_GENERATOR MATCHES "Ninja") + execute_process( + COMMAND "${CMAKE_MAKE_PROGRAM}" --version + RESULT_VARIABLE res + OUTPUT_VARIABLE ninja_version + ERROR_VARIABLE err + OUTPUT_STRIP_TRAILING_WHITESPACE + ERROR_STRIP_TRAILING_WHITESPACE) + + if (res) + message(WARNING + "Failed to determine `ninja` version: ${err}") + set(ninja_version "0") + endif () +endif () + +set(generator_supports_cxx_modules 0) +if (RunCMake_GENERATOR MATCHES "Ninja" AND + ninja_version VERSION_GREATER_EQUAL "1.11" AND + "cxx_std_20" IN_LIST CMAKE_CXX_COMPILE_FEATURES) + set(generator_supports_cxx_modules 1) +endif () + +if (RunCMake_GENERATOR MATCHES "Visual Studio" AND + CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL "19.34") + set(generator_supports_cxx_modules 1) +endif () + +# Test behavior when the generator does not support C++20 modules. +if (NOT generator_supports_cxx_modules) + # Bail; the remaining tests require the generator to successfully generate + # with C++20 modules in the source list. + return () +endif () + +# This performs actual compilation tests; avoid it when not requested. +if (NOT CMake_TEST_MODULE_COMPILATION) + return () +endif () + +# Module compilation features: +# Compiler-based: +# - `named`: basic support for named modules is available +# - `shared`: shared libraries are supported +# - `partitions`: module partitions are supported +# - `internal_partitions`: internal module partitions are supported +# - `bmionly`: the compiler supports BMI-only builds +# - `import_std23`: the compiler supports `import std` for C++23 +# +# Generator-based: +# - `compile_commands`: the generator supports `compile_commands.json` +# - `collation`: the generator supports module collation features +# - `export_bmi`: the generator supports exporting BMIs +# - `ninja`: a `ninja` binary is available to perform `Ninja`-only testing +# (assumed if the generator matches `Ninja`). +string(REPLACE "," ";" CMake_TEST_MODULE_COMPILATION "${CMake_TEST_MODULE_COMPILATION}") +if (RunCMake_GENERATOR MATCHES "Ninja") + list(APPEND CMake_TEST_MODULE_COMPILATION + "ninja") +endif () + +function (run_cxx_module_test directory) + set(test_name "${directory}") + if (NOT ARGN STREQUAL "") + list(POP_FRONT ARGN test_name) + endif () + + set(RunCMake_TEST_SOURCE_DIR "${CMAKE_CURRENT_LIST_DIR}/examples/${directory}") + set(RunCMake_TEST_BINARY_DIR "${RunCMake_BINARY_DIR}/examples/${test_name}-build") + + if (RunCMake_GENERATOR_IS_MULTI_CONFIG) + set(RunCMake_TEST_OPTIONS -DCMAKE_CONFIGURATION_TYPES=Debug) + else () + set(RunCMake_TEST_OPTIONS -DCMAKE_BUILD_TYPE=Debug) + endif () + if (directory MATCHES "import-std") + list(APPEND RunCMake_TEST_OPTIONS + ${stdlib_custom_json}) + endif () + + if (RunCMake_CXXModules_INSTALL) + set(prefix "${RunCMake_BINARY_DIR}/examples/${test_name}-install") + file(REMOVE_RECURSE "${prefix}") + list(APPEND RunCMake_TEST_OPTIONS + "-DCMAKE_INSTALL_PREFIX=${prefix}") + endif () + + list(APPEND RunCMake_TEST_OPTIONS + "-DCMake_TEST_MODULE_COMPILATION_RULES=${CMake_TEST_MODULE_COMPILATION_RULES}" + ${ARGN}) + run_cmake("examples/${test_name}") + set(RunCMake_TEST_NO_CLEAN 1) + if (RunCMake_CXXModules_TARGET) + run_cmake_command("examples/${test_name}-build" "${CMAKE_COMMAND}" --build . --config Debug --target "${RunCMake_CXXModules_TARGET}") + else () + run_cmake_command("examples/${test_name}-build" "${CMAKE_COMMAND}" --build . --config Debug) + foreach (RunCMake_CXXModules_TARGET IN LISTS RunCMake_CXXModules_TARGETS) + set(RunCMake_CXXModules_CONFIG "Debug") + set(RunCMake_CXXModules_NAME_SUFFIX "") + if (RunCMake_CXXModules_TARGET MATCHES "(.*)@(.*)") + set(RunCMake_CXXModules_TARGET "${CMAKE_MATCH_1}") + set(RunCMake_CXXModules_CONFIG "${CMAKE_MATCH_2}") + set(RunCMake_CXXModules_NAME_SUFFIX "-${RunCMake_CXXModules_CONFIG}") + endif () + run_cmake_command("examples/${test_name}-target-${RunCMake_CXXModules_TARGET}${RunCMake_CXXModules_NAME_SUFFIX}" "${CMAKE_COMMAND}" --build . --target "${RunCMake_CXXModules_TARGET}" --config "${RunCMake_CXXModules_CONFIG}") + endforeach () + endif () + if (RunCMake_CXXModules_INSTALL) + run_cmake_command("examples/${test_name}-install" "${CMAKE_COMMAND}" --build . --target install --config Debug) + endif () + if (NOT RunCMake_CXXModules_NO_TEST) + run_cmake_command("examples/${test_name}-test" "${CMAKE_CTEST_COMMAND}" -C Debug --output-on-failure) + endif () + if (RunCMake_CXXModules_REBUILD) + execute_process(COMMAND ${CMAKE_COMMAND} -E sleep 1.125) # handle 1s resolution + include("${RunCMake_TEST_SOURCE_DIR}/pre-rebuild.cmake") + execute_process(COMMAND ${CMAKE_COMMAND} -E sleep 1.125) # handle 1s resolution + run_cmake_command("examples/${test_name}-rebuild" "${CMAKE_COMMAND}" --build . --config Debug) + endif () +endfunction () + +function (run_cxx_module_test_target directory target) + set(RunCMake_CXXModules_TARGET "${target}") + set(RunCMake_CXXModules_NO_TEST 1) + run_cxx_module_test("${directory}" ${ARGN}) +endfunction () + +function (run_cxx_module_test_rebuild directory) + set(RunCMake_CXXModules_INSTALL 0) + set(RunCMake_CXXModules_NO_TEST 1) + set(RunCMake_CXXModules_REBUILD 1) + run_cxx_module_test("${directory}" ${ARGN}) +endfunction () + +if (RunCMake_GENERATOR MATCHES "Ninja") + if (RunCMake_GENERATOR_IS_MULTI_CONFIG) + set(ninja_cmp0154_target "CMakeFiles/ninja_cmp0154.dir/Debug/unrelated.cxx${CMAKE_CXX_OUTPUT_EXTENSION}") + else () + set(ninja_cmp0154_target "CMakeFiles/ninja_cmp0154.dir/unrelated.cxx${CMAKE_CXX_OUTPUT_EXTENSION}") + endif () + run_cxx_module_test_target(ninja-cmp0154 "${ninja_cmp0154_target}") +endif () + +run_cxx_module_test(scan-with-pch) + +# Tests which use named modules. +if ("named" IN_LIST CMake_TEST_MODULE_COMPILATION) + run_cxx_module_test(simple) + run_cxx_module_test(file-sets-with-dot) + run_cxx_module_test(vs-without-flags) + run_cxx_module_test(library library-static -DBUILD_SHARED_LIBS=OFF) + run_cxx_module_test(unity-build) + run_cxx_module_test(object-library) + run_cxx_module_test(generated) + run_cxx_module_test(deep-chain) + run_cxx_module_test(non-trivial-collation-order) + run_cxx_module_test(non-trivial-collation-order-randomized) + run_cxx_module_test(duplicate) + set(RunCMake_CXXModules_NO_TEST 1) + run_cxx_module_test(import-from-object) + run_cxx_module_test(circular) + run_cxx_module_test(try-compile) + run_cxx_module_test(try-run) + unset(RunCMake_CXXModules_NO_TEST) + run_cxx_module_test(same-src-name) + run_cxx_module_test(scan_properties) + run_cxx_module_test(target-objects) + + if ("cxx_std_23" IN_LIST CMAKE_CXX_COMPILE_FEATURES AND + "import_std23" IN_LIST CMake_TEST_MODULE_COMPILATION) + run_cxx_module_test(import-std) + set(RunCMake_CXXModules_NO_TEST 1) + run_cxx_module_test(import-std-no-std-property) + unset(RunCMake_CXXModules_NO_TEST) + run_cxx_module_test(import-std-export-no-std-build) + set(RunCMake_CXXModules_INSTALL 1) + run_cxx_module_test(import-std-export-no-std-install) + unset(RunCMake_CXXModules_INSTALL) + + if ("collation" IN_LIST CMake_TEST_MODULE_COMPILATION) + run_cxx_module_test(import-std-not-in-export-build) + run_cxx_module_test(import-std-transitive import-std-transitive-not-in-export-build "-DCMAKE_PREFIX_PATH=${RunCMake_BINARY_DIR}/examples/import-std-not-in-export-build-build") + + set(RunCMake_CXXModules_INSTALL 1) + run_cxx_module_test(import-std-not-in-export-install) + unset(RunCMake_CXXModules_INSTALL) + run_cxx_module_test(import-std-transitive import-std-transitive-not-in-export-install "-DCMAKE_PREFIX_PATH=${RunCMake_BINARY_DIR}/examples/import-std-not-in-export-install-install") + + run_cxx_module_test(import-std-transitive import-std-transitive-export-no-std-build "-DCMAKE_PREFIX_PATH=${RunCMake_BINARY_DIR}/examples/import-std-export-no-std-build-build" -DEXPORT_NO_STD=1) + run_cxx_module_test(import-std-transitive import-std-transitive-export-no-std-install "-DCMAKE_PREFIX_PATH=${RunCMake_BINARY_DIR}/examples/import-std-export-no-std-install-install" -DEXPORT_NO_STD=1) + endif () + endif () +endif () + +# Tests which require compile commands support. +if ("compile_commands" IN_LIST CMake_TEST_MODULE_COMPILATION) + run_cxx_module_test(export-compile-commands) +endif () + +macro (setup_export_build_database_targets) + set(RunCMake_CXXModules_TARGETS + cmake_build_database-CXX + cmake_build_database) + + if (RunCMake_GENERATOR_IS_MULTI_CONFIG) + list(INSERT RunCMake_CXXModules_TARGETS 0 + cmake_build_database-CXX-Debug + cmake_build_database-Debug + # Other config targets. + cmake_build_database-CXX-Release@Release + cmake_build_database-Release@Release) + endif () +endmacro () + +# Tests which require build database support. +if ("build_database" IN_LIST CMake_TEST_MODULE_COMPILATION) + setup_export_build_database_targets() + set(RunCMake_CXXModules_NO_TEST 1) + + run_cxx_module_test(export-build-database) + + unset(RunCMake_CXXModules_NO_TEST) + unset(RunCMake_CXXModules_TARGETS) +endif () + +# Tests which require collation work. +if ("collation" IN_LIST CMake_TEST_MODULE_COMPILATION) + run_cxx_module_test(duplicate-sources) + run_cxx_module_test(public-req-private) + set(RunCMake_CXXModules_NO_TEST 1) + run_cxx_module_test(req-private-other-target) + unset(RunCMake_CXXModules_NO_TEST) + run_cxx_module_test_rebuild(depchain-modmap) + run_cxx_module_test_rebuild(depchain-modules-json-file) + if (RunCMake_GENERATOR MATCHES "Ninja") + run_cxx_module_test_rebuild(depchain-collation-restat) + endif () +endif () + +# Tests which use named modules in shared libraries. +if ("shared" IN_LIST CMake_TEST_MODULE_COMPILATION) + run_cxx_module_test(library library-shared -DBUILD_SHARED_LIBS=ON) +endif () + +# Tests which use partitions. +if ("partitions" IN_LIST CMake_TEST_MODULE_COMPILATION) + run_cxx_module_test(partitions) +endif () + +# Tests which use internal partitions. +if ("internal_partitions" IN_LIST CMake_TEST_MODULE_COMPILATION) + run_cxx_module_test(internal-partitions) +endif () + +function (run_cxx_module_import_test type name) + set(RunCMake_CXXModules_INSTALL 0) + + if ("EXPORT_BUILD_DATABASE" IN_LIST ARGN) + list(REMOVE_ITEM ARGN EXPORT_BUILD_DATABASE) + list(APPEND ARGN -DCMAKE_EXPORT_BUILD_DATABASE=1) + endif () + + run_cxx_module_test(import-modules "import-modules-${name}" "-DCMAKE_PREFIX_PATH=${RunCMake_BINARY_DIR}/examples/${name}-${type}" ${ARGN}) +endfunction () + +# Tests which install BMIs +if ("export_bmi" IN_LIST CMake_TEST_MODULE_COMPILATION) + run_cxx_module_test(export-interface-no-properties-build) + run_cxx_module_test(export-interface-build) + run_cxx_module_test(export-include-directories-build) + run_cxx_module_test(export-include-directories-old-cmake-build) + run_cxx_module_test(export-usage-build) + run_cxx_module_test(export-bmi-and-interface-build) + run_cxx_module_test(export-command-sepdir-build) + run_cxx_module_test(export-transitive-targets-build) + run_cxx_module_test(export-transitive-modules1-build) + run_cxx_module_test(export-transitive-modules-build export-transitive-modules-build "-DCMAKE_PREFIX_PATH=${RunCMake_BINARY_DIR}/examples/export-transitive-modules1-build-build" ) + run_cxx_module_test(export-with-headers-build) + + if ("collation" IN_LIST CMake_TEST_MODULE_COMPILATION AND + "bmionly" IN_LIST CMake_TEST_MODULE_COMPILATION) + run_cxx_module_import_test(build export-interface-build) + run_cxx_module_import_test(build export-interface-no-properties-build -DNO_PROPERTIES=1) + run_cxx_module_import_test(build export-include-directories-build -DINCLUDE_PROPERTIES=1) + run_cxx_module_import_test(build export-bmi-and-interface-build -DWITH_BMIS=1) + run_cxx_module_import_test(build export-command-sepdir-build -DEXPORT_COMMAND_SEPDIR=1) + run_cxx_module_import_test(build export-transitive-targets-build -DTRANSITIVE_TARGETS=1) + run_cxx_module_import_test(build export-transitive-modules-build -DTRANSITIVE_MODULES=1) + run_cxx_module_import_test(build export-with-headers-build -DWITH_HEADERS=1) + + if ("build_database" IN_LIST CMake_TEST_MODULE_COMPILATION) + setup_export_build_database_targets() + + run_cxx_module_import_test(build export-build-database -DBUILD_DATABASE=1 EXPORT_BUILD_DATABASE) + + unset(RunCMake_CXXModules_TARGETS) + endif () + endif () +endif () + +# All of the following tests perform installation. +set(RunCMake_CXXModules_INSTALL 1) + +# Tests which install BMIs +if ("install_bmi" IN_LIST CMake_TEST_MODULE_COMPILATION) + run_cxx_module_test(install-bmi) + run_cxx_module_test(install-bmi-and-interfaces) + + if ("export_bmi" IN_LIST CMake_TEST_MODULE_COMPILATION) + run_cxx_module_test(export-interface-no-properties-install) + run_cxx_module_test(export-interface-install) + run_cxx_module_test(export-include-directories-install) + run_cxx_module_test(export-include-directories-old-cmake-install) + run_cxx_module_test(export-usage-install) + run_cxx_module_test(export-bmi-and-interface-install) + run_cxx_module_test(export-command-sepdir-install) + run_cxx_module_test(export-transitive-targets-install) + run_cxx_module_test(export-transitive-modules1-install) + run_cxx_module_test(export-transitive-modules-install export-transitive-modules-install "-DCMAKE_PREFIX_PATH=${RunCMake_BINARY_DIR}/examples/export-transitive-modules1-install-install" ) + run_cxx_module_test(export-with-headers-install) + + if ("collation" IN_LIST CMake_TEST_MODULE_COMPILATION AND + "bmionly" IN_LIST CMake_TEST_MODULE_COMPILATION) + run_cxx_module_import_test(install export-interface-install) + run_cxx_module_import_test(install export-interface-no-properties-install -DNO_PROPERTIES=1) + run_cxx_module_import_test(install export-include-directories-install -DINCLUDE_PROPERTIES=1) + run_cxx_module_import_test(install export-bmi-and-interface-install -DWITH_BMIS=1) + run_cxx_module_import_test(install export-command-sepdir-install -DEXPORT_COMMAND_SEPDIR=1) + run_cxx_module_import_test(install export-transitive-targets-install -DTRANSITIVE_TARGETS=1) + run_cxx_module_import_test(install export-transitive-modules-install -DTRANSITIVE_MODULES=1) + run_cxx_module_import_test(install export-with-headers-install -DWITH_HEADERS=1) + endif () + endif () +endif () + +# All remaining tests require a working `Ninja` generator to set up a test case +# for the current generator. +if (NOT "ninja" IN_LIST CMake_TEST_MODULE_COMPILATION) + return () +endif () +# All remaining tests require `bmionly` in order to consume from the `ninja` +# build. +if (NOT "bmionly" IN_LIST CMake_TEST_MODULE_COMPILATION) + return () +endif () + +function (run_cxx_module_test_ninja directory) + set(RunCMake_GENERATOR "Ninja") + set(RunCMake_CXXModules_NO_TEST 1) + set(RunCMake_CXXModules_INSTALL 1) + # `Ninja` is not a multi-config generator. + set(RunCMake_GENERATOR_IS_MULTI_CONFIG 0) + run_cxx_module_test("${directory}" "${directory}-ninja" ${ARGN}) +endfunction () + +# Installation happens within `run_cxx_module_test_ninja`. +set(RunCMake_CXXModules_INSTALL 0) + +set(test_set modules-from-ninja) +run_cxx_module_test_ninja("export-${test_set}") +run_cxx_module_test(import-modules "import-${test_set}" "-DCMAKE_PREFIX_PATH=${RunCMake_BINARY_DIR}/examples/export-${test_set}-ninja-install" -DFROM_NINJA=1) diff --git a/Tests/RunCMake/CXXModulesCompile/check-json.cmake b/Tests/RunCMake/CXXModulesCompile/check-json.cmake new file mode 100644 index 0000000000..09edc33e5b --- /dev/null +++ b/Tests/RunCMake/CXXModulesCompile/check-json.cmake @@ -0,0 +1,227 @@ +function (json_placeholders in out) + string(REPLACE "" "${CXXModules_config}" in "${in}") + string(TOLOWER "${CXXModules_config}" config_lower) + string(REPLACE "" "${config_lower}" in "${in}") + string(REPLACE "" "${CXXModules_config_other}" in "${in}") + string(TOLOWER "${CXXModules_config_other}" config_lower) + string(REPLACE "" "${config_lower}" in "${in}") + if (RunCMake_GENERATOR_IS_MULTI_CONFIG) + string(REPLACE "" "/${CXXModules_config}" in "${in}") + string(REPLACE "" "/${CXXModules_config_other}" in "${in}") + else () + string(REPLACE "" "" in "${in}") + string(REPLACE "" "" in "${in}") + endif () + if (CMAKE_BUILD_TYPE) + string(REPLACE "" "${CXXModules_config}" in "${in}") + string(REPLACE "" "${CXXModules_config_other}" in "${in}") + else () + string(REPLACE "" "noconfig" in "${in}") + endif () + string(REPLACE "" "${RunCMake_SOURCE_DIR}" in "${in}") + string(REPLACE "" "${RunCMake_TEST_BINARY_DIR}" in "${in}") + string(REPLACE "" "${CMAKE_CXX_OUTPUT_EXTENSION}" in "${in}") + if (CMAKE_CXX_MODULE_MAP_FORMAT STREQUAL "gcc") + set(bmiflag "-fmodule-only") + set(bmiext "gcm") + elseif (CMAKE_CXX_MODULE_MAP_FORMAT STREQUAL "clang") + set(bmiflag "--precompile") + set(bmiext "pcm") + elseif (CMAKE_CXX_MODULE_MAP_FORMAT STREQUAL "msvc") + set(bmiflag "-ifcOutput.*") + set(bmiext "ifc") + endif () + string(REPLACE "" "${bmiflag}" in "${in}") + string(REPLACE "" ".${bmiext}" in "${in}") + set(output_flag "-o") + if (CMAKE_CXX_COMPILER_FRONTEND_VARIANT STREQUAL "MSVC") + set(output_flag "-Fo") + endif () + string(REPLACE "" "${output_flag}" in "${in}") + string(REPLACE "" "${CMAKE_CXX20_STANDARD_COMPILE_OPTION}" in "${in}") + string(REPLACE "" "[0-9a-f]+" in "${in}") + string(REPLACE "REGEX:" "" in "${in}") + string(REPLACE "PATH:" "" in "${in}") + set("${out}" "${in}" PARENT_SCOPE) +endfunction () + +function (check_json_value path actual_type expect_type actual_value expect_value) + if (NOT actual_type STREQUAL expect_type) + string(APPEND RunCMake_TEST_FAILED + "Type mismatch at:\n ${path}\nexpected:\n ${expect_type}\nactual:\n ${actual_type}\n") + set(RunCMake_TEST_FAILED "${RunCMake_TEST_FAILED}" PARENT_SCOPE) + return () + endif () + + if (actual_type STREQUAL NULL) + # Nothing to check + elseif (actual_type STREQUAL BOOLEAN) + if (NOT actual_value STREQUAL expect_value) + string(APPEND RunCMake_TEST_FAILED + "Boolean mismatch at:\n ${path}\nexpected:\n ${expect_value}\nactual:\n ${actual_value}\n") + endif () + elseif (actual_type STREQUAL NUMBER) + if (NOT actual_value EQUAL expect_value) + string(APPEND RunCMake_TEST_FAILED + "Number mismatch at:\n ${path}\nexpected:\n ${expect_value}\nactual:\n ${actual_value}\n") + endif () + elseif (actual_type STREQUAL STRING) + # Allow some values to be ignored. + if (expect_value STREQUAL "") + return () + endif () + + json_placeholders("${expect_value}" expect_value_expanded) + if (expect_value MATCHES "^REGEX:PATH:") + string(REPLACE "\\" "/" actual_value_check "${actual_value}") + string(REGEX REPLACE "^\"(.*)\"$" "\\1" actual_value_check "${actual_value_check}") + if (NOT actual_value_check MATCHES "^${expect_value_expanded}$") + string(APPEND RunCMake_TEST_FAILED + "String mismatch (path regex) at:\n ${path}\nexpected:\n ^${expect_value_expanded}$\nactual:\n ${actual_value}\n") + endif () + elseif (expect_value MATCHES "^REGEX:") + if (NOT actual_value MATCHES "^${expect_value_expanded}$") + string(APPEND RunCMake_TEST_FAILED + "String mismatch (regex) at:\n ${path}\nexpected:\n ^${expect_value_expanded}$\nactual:\n ${actual_value}\n") + endif () + elseif (expect_value MATCHES "^PATH:") + string(REPLACE "\\" "/" actual_value_check "${actual_value}") + string(REGEX REPLACE "^\"(.*)\"$" "\\1" actual_value_check "${actual_value_check}") + if (NOT actual_value_check STREQUAL "${expect_value_expanded}") + string(APPEND RunCMake_TEST_FAILED + "String mismatch (path) at:\n ${path}\nexpected:\n ${expect_value_expanded}\nactual:\n ${actual_value}\n") + endif () + elseif (NOT actual_value STREQUAL expect_value_expanded) + string(APPEND RunCMake_TEST_FAILED + "String mismatch at:\n ${path}\nexpected:\n ${expect_value_expanded}\nactual:\n ${actual_value}\n") + endif () + elseif (actual_type STREQUAL ARRAY) + check_json_array("${path}" "${actual_value}" "${expect_value}") + elseif (actual_type STREQUAL OBJECT) + check_json_object("${path}" "${actual_value}" "${expect_value}") + endif () + + set(RunCMake_TEST_FAILED "${RunCMake_TEST_FAILED}" PARENT_SCOPE) +endfunction () + +# Check that two arrays are the same. +function (check_json_array path actual expect) + if (item_filter) + string(JSON iter_len LENGTH "${actual}") + set(idx 0) + while (idx LESS iter_len) + string(JSON type TYPE "${actual}" "${idx}") + string(JSON item GET "${actual}" "${idx}") + if (type STREQUAL "STRING" AND + item MATCHES "${item_filter}") + string(JSON actual REMOVE "${actual}" "${idx}") + math(EXPR iter_len "${iter_len} - 1") + else () + math(EXPR idx "${idx} + 1") + endif () + endwhile () + endif () + + string(JSON actual_len LENGTH "${actual}") + string(JSON expect_len LENGTH "${expect}") + + set(iter_len "${actual_len}") + if (actual_len LESS expect_len) + string(APPEND RunCMake_TEST_FAILED + "Missing array items at:\n ${path}\n") + elseif (expect_len LESS actual_len) + string(APPEND RunCMake_TEST_FAILED + "Extra array items at:\n ${path}\n") + set(iter_len "${expect_len}") + endif () + + foreach (idx RANGE "${iter_len}") + if (idx EQUAL iter_len) + break () + endif () + + set(new_path "${path}[${idx}]") + string(JSON actual_type TYPE "${actual}" "${idx}") + string(JSON expect_type TYPE "${expect}" "${idx}") + string(JSON actual_value GET "${actual}" "${idx}") + string(JSON expect_value GET "${expect}" "${idx}") + check_json_value("${new_path}" "${actual_type}" "${expect_type}" "${actual_value}" "${expect_value}") + endforeach () + + set(RunCMake_TEST_FAILED "${RunCMake_TEST_FAILED}" PARENT_SCOPE) +endfunction () + +# Check that two inner objects are the same. +function (check_json_object path actual expect) + string(JSON actual_len LENGTH "${actual}") + string(JSON expect_len LENGTH "${expect}") + + set(actual_keys "") + set(expect_keys "") + foreach (idx RANGE "${actual_len}") + if (idx EQUAL actual_len) + break () + endif () + + string(JSON actual_key MEMBER "${actual}" "${idx}") + list(APPEND actual_keys "${actual_key}") + endforeach () + foreach (idx RANGE "${expect_len}") + if (idx EQUAL expect_len) + break () + endif () + + string(JSON expect_key MEMBER "${expect}" "${idx}") + list(APPEND expect_keys "${expect_key}") + endforeach () + + json_placeholders("${expect_keys}" expect_keys_expanded) + + set(actual_keys_missed "${actual_keys}") + set(expect_keys_missed "${expect_keys}") + + set(common_keys "") + set(expect_keys_stack "${expect_keys}") + while (expect_keys_stack) + list(POP_BACK expect_keys_stack expect_key) + json_placeholders("${expect_key}" expect_key_expanded) + + if (expect_key_expanded IN_LIST actual_keys_missed AND + expect_key IN_LIST expect_keys_missed) + list(APPEND common_keys "${expect_key}") + endif () + + list(REMOVE_ITEM actual_keys_missed "${expect_key_expanded}") + list(REMOVE_ITEM expect_keys_missed "${expect_key}") + endwhile () + + if (actual_keys_missed) + string(REPLACE ";" ", " actual_keys_missed_text "${actual_keys_missed}") + string(APPEND RunCMake_TEST_FAILED + "Extra unexpected members at:\n ${path}\nactual:\n ${actual_keys_missed_text}\n") + endif () + if (expect_keys_missed) + string(REPLACE ";" ", " expect_keys_missed_text "${expect_keys_missed}") + string(APPEND RunCMake_TEST_FAILED + "Missing expected members at\n ${path}\nactual:\n ${expect_keys_missed_text}\n") + endif () + + foreach (key IN LISTS common_keys) + json_placeholders("${key}" key_expanded) + set(new_path "${path}.${key_expanded}") + string(JSON actual_type TYPE "${actual}" "${key_expanded}") + string(JSON expect_type TYPE "${expect}" "${key}") + string(JSON actual_value GET "${actual}" "${key_expanded}") + string(JSON expect_value GET "${expect}" "${key}") + check_json_value("${new_path}" "${actual_type}" "${expect_type}" "${actual_value}" "${expect_value}") + endforeach () + + set(RunCMake_TEST_FAILED "${RunCMake_TEST_FAILED}" PARENT_SCOPE) +endfunction () + +# Check that two JSON objects are the same. +function (check_json actual expect) + check_json_object("" "${actual}" "${expect}") + + set(RunCMake_TEST_FAILED "${RunCMake_TEST_FAILED}" PARENT_SCOPE) +endfunction () diff --git a/Tests/RunCMake/CXXModules/examples/build-database-check.cmake b/Tests/RunCMake/CXXModulesCompile/examples/build-database-check.cmake similarity index 100% rename from Tests/RunCMake/CXXModules/examples/build-database-check.cmake rename to Tests/RunCMake/CXXModulesCompile/examples/build-database-check.cmake diff --git a/Tests/RunCMake/CXXModules/examples/circular-build-result.txt b/Tests/RunCMake/CXXModulesCompile/examples/circular-build-result.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/circular-build-result.txt rename to Tests/RunCMake/CXXModulesCompile/examples/circular-build-result.txt diff --git a/Tests/RunCMake/CXXModules/examples/circular-build-stdout.txt b/Tests/RunCMake/CXXModulesCompile/examples/circular-build-stdout.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/circular-build-stdout.txt rename to Tests/RunCMake/CXXModulesCompile/examples/circular-build-stdout.txt diff --git a/Tests/RunCMake/CXXModules/examples/circular/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/circular/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/circular/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/circular/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/circular/circular-a.cppm b/Tests/RunCMake/CXXModulesCompile/examples/circular/circular-a.cppm similarity index 100% rename from Tests/RunCMake/CXXModules/examples/circular/circular-a.cppm rename to Tests/RunCMake/CXXModulesCompile/examples/circular/circular-a.cppm diff --git a/Tests/RunCMake/CXXModules/examples/circular/circular-b.cppm b/Tests/RunCMake/CXXModulesCompile/examples/circular/circular-b.cppm similarity index 100% rename from Tests/RunCMake/CXXModules/examples/circular/circular-b.cppm rename to Tests/RunCMake/CXXModulesCompile/examples/circular/circular-b.cppm diff --git a/Tests/RunCMake/CXXModules/examples/cxx-modules-find-bmi-and-interfaces.cmake b/Tests/RunCMake/CXXModulesCompile/examples/cxx-modules-find-bmi-and-interfaces.cmake similarity index 100% rename from Tests/RunCMake/CXXModules/examples/cxx-modules-find-bmi-and-interfaces.cmake rename to Tests/RunCMake/CXXModulesCompile/examples/cxx-modules-find-bmi-and-interfaces.cmake diff --git a/Tests/RunCMake/CXXModules/examples/cxx-modules-find-bmi.cmake b/Tests/RunCMake/CXXModulesCompile/examples/cxx-modules-find-bmi.cmake similarity index 100% rename from Tests/RunCMake/CXXModules/examples/cxx-modules-find-bmi.cmake rename to Tests/RunCMake/CXXModulesCompile/examples/cxx-modules-find-bmi.cmake diff --git a/Tests/RunCMake/CXXModules/examples/cxx-modules-rules.cmake b/Tests/RunCMake/CXXModulesCompile/examples/cxx-modules-rules.cmake similarity index 100% rename from Tests/RunCMake/CXXModules/examples/cxx-modules-rules.cmake rename to Tests/RunCMake/CXXModulesCompile/examples/cxx-modules-rules.cmake diff --git a/Tests/RunCMake/CXXModules/examples/deep-chain/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/deep-chain/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/deep-chain/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/deep-chain/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/deep-chain/a.cxx b/Tests/RunCMake/CXXModulesCompile/examples/deep-chain/a.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/deep-chain/a.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/deep-chain/a.cxx diff --git a/Tests/RunCMake/CXXModules/examples/deep-chain/b.cxx b/Tests/RunCMake/CXXModulesCompile/examples/deep-chain/b.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/deep-chain/b.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/deep-chain/b.cxx diff --git a/Tests/RunCMake/CXXModules/examples/deep-chain/c.cxx b/Tests/RunCMake/CXXModulesCompile/examples/deep-chain/c.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/deep-chain/c.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/deep-chain/c.cxx diff --git a/Tests/RunCMake/CXXModules/examples/deep-chain/d.cxx b/Tests/RunCMake/CXXModulesCompile/examples/deep-chain/d.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/deep-chain/d.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/deep-chain/d.cxx diff --git a/Tests/RunCMake/CXXModules/examples/deep-chain/e.cxx b/Tests/RunCMake/CXXModulesCompile/examples/deep-chain/e.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/deep-chain/e.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/deep-chain/e.cxx diff --git a/Tests/RunCMake/CXXModules/examples/deep-chain/main.cxx b/Tests/RunCMake/CXXModulesCompile/examples/deep-chain/main.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/deep-chain/main.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/deep-chain/main.cxx diff --git a/Tests/RunCMake/CXXModules/examples/depchain-collation-restat-rebuild-check.cmake b/Tests/RunCMake/CXXModulesCompile/examples/depchain-collation-restat-rebuild-check.cmake similarity index 100% rename from Tests/RunCMake/CXXModules/examples/depchain-collation-restat-rebuild-check.cmake rename to Tests/RunCMake/CXXModulesCompile/examples/depchain-collation-restat-rebuild-check.cmake diff --git a/Tests/RunCMake/CXXModules/examples/depchain-collation-restat/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/depchain-collation-restat/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/depchain-collation-restat/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/depchain-collation-restat/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/depchain-collation-restat/importable.cxx b/Tests/RunCMake/CXXModulesCompile/examples/depchain-collation-restat/importable.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/depchain-collation-restat/importable.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/depchain-collation-restat/importable.cxx diff --git a/Tests/RunCMake/CXXModules/examples/depchain-collation-restat/main.cxx b/Tests/RunCMake/CXXModulesCompile/examples/depchain-collation-restat/main.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/depchain-collation-restat/main.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/depchain-collation-restat/main.cxx diff --git a/Tests/RunCMake/CXXModules/examples/depchain-collation-restat/pre-rebuild.cmake b/Tests/RunCMake/CXXModulesCompile/examples/depchain-collation-restat/pre-rebuild.cmake similarity index 100% rename from Tests/RunCMake/CXXModules/examples/depchain-collation-restat/pre-rebuild.cmake rename to Tests/RunCMake/CXXModulesCompile/examples/depchain-collation-restat/pre-rebuild.cmake diff --git a/Tests/RunCMake/CXXModules/examples/depchain-modmap-rebuild-check.cmake b/Tests/RunCMake/CXXModulesCompile/examples/depchain-modmap-rebuild-check.cmake similarity index 100% rename from Tests/RunCMake/CXXModules/examples/depchain-modmap-rebuild-check.cmake rename to Tests/RunCMake/CXXModulesCompile/examples/depchain-modmap-rebuild-check.cmake diff --git a/Tests/RunCMake/CXXModules/examples/depchain-modmap/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/depchain-modmap/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/depchain-modmap/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/depchain-modmap/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/depchain-modmap/importable.cxx b/Tests/RunCMake/CXXModulesCompile/examples/depchain-modmap/importable.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/depchain-modmap/importable.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/depchain-modmap/importable.cxx diff --git a/Tests/RunCMake/CXXModules/examples/depchain-modmap/main.cxx b/Tests/RunCMake/CXXModulesCompile/examples/depchain-modmap/main.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/depchain-modmap/main.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/depchain-modmap/main.cxx diff --git a/Tests/RunCMake/CXXModules/examples/depchain-modmap/pre-rebuild.cmake b/Tests/RunCMake/CXXModulesCompile/examples/depchain-modmap/pre-rebuild.cmake similarity index 100% rename from Tests/RunCMake/CXXModules/examples/depchain-modmap/pre-rebuild.cmake rename to Tests/RunCMake/CXXModulesCompile/examples/depchain-modmap/pre-rebuild.cmake diff --git a/Tests/RunCMake/CXXModules/examples/depchain-modules-json-file-rebuild-check.cmake b/Tests/RunCMake/CXXModulesCompile/examples/depchain-modules-json-file-rebuild-check.cmake similarity index 100% rename from Tests/RunCMake/CXXModules/examples/depchain-modules-json-file-rebuild-check.cmake rename to Tests/RunCMake/CXXModulesCompile/examples/depchain-modules-json-file-rebuild-check.cmake diff --git a/Tests/RunCMake/CXXModules/examples/depchain-modules-json-file/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/depchain-modules-json-file/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/depchain-modules-json-file/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/depchain-modules-json-file/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/depchain-modules-json-file/importable.cxx b/Tests/RunCMake/CXXModulesCompile/examples/depchain-modules-json-file/importable.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/depchain-modules-json-file/importable.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/depchain-modules-json-file/importable.cxx diff --git a/Tests/RunCMake/CXXModules/examples/depchain-modules-json-file/main.cxx b/Tests/RunCMake/CXXModulesCompile/examples/depchain-modules-json-file/main.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/depchain-modules-json-file/main.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/depchain-modules-json-file/main.cxx diff --git a/Tests/RunCMake/CXXModules/examples/depchain-modules-json-file/pre-rebuild.cmake b/Tests/RunCMake/CXXModulesCompile/examples/depchain-modules-json-file/pre-rebuild.cmake similarity index 100% rename from Tests/RunCMake/CXXModules/examples/depchain-modules-json-file/pre-rebuild.cmake rename to Tests/RunCMake/CXXModulesCompile/examples/depchain-modules-json-file/pre-rebuild.cmake diff --git a/Tests/RunCMake/CXXModules/examples/duplicate-sources-stderr.txt b/Tests/RunCMake/CXXModulesCompile/examples/duplicate-sources-stderr.txt similarity index 73% rename from Tests/RunCMake/CXXModules/examples/duplicate-sources-stderr.txt rename to Tests/RunCMake/CXXModulesCompile/examples/duplicate-sources-stderr.txt index d3960f6d44..bae73a13b4 100644 --- a/Tests/RunCMake/CXXModules/examples/duplicate-sources-stderr.txt +++ b/Tests/RunCMake/CXXModulesCompile/examples/duplicate-sources-stderr.txt @@ -2,7 +2,7 @@ CMake Warning \(dev\) in CMakeLists\.txt: Target "duplicate_sources" has source file [^ -]*/Tests/RunCMake/CXXModules/examples/duplicate-sources/duplicate\.cxx +]*/Tests/RunCMake/CXXModulesCompile/examples/duplicate-sources/duplicate\.cxx in a "FILE_SET TYPE CXX_MODULES" multiple times\. This warning is for project developers\. Use -Wno-dev to suppress it\. diff --git a/Tests/RunCMake/CXXModules/examples/duplicate-sources/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/duplicate-sources/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/duplicate-sources/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/duplicate-sources/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/duplicate-sources/duplicate.cxx b/Tests/RunCMake/CXXModulesCompile/examples/duplicate-sources/duplicate.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/duplicate-sources/duplicate.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/duplicate-sources/duplicate.cxx diff --git a/Tests/RunCMake/CXXModules/examples/duplicate-sources/main.cxx b/Tests/RunCMake/CXXModulesCompile/examples/duplicate-sources/main.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/duplicate-sources/main.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/duplicate-sources/main.cxx diff --git a/Tests/RunCMake/CXXModules/examples/duplicate/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/duplicate/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/duplicate/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/duplicate/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/duplicate/duplicate.cxx b/Tests/RunCMake/CXXModulesCompile/examples/duplicate/duplicate.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/duplicate/duplicate.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/duplicate/duplicate.cxx diff --git a/Tests/RunCMake/CXXModules/examples/duplicate/main.cxx b/Tests/RunCMake/CXXModulesCompile/examples/duplicate/main.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/duplicate/main.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/duplicate/main.cxx diff --git a/Tests/RunCMake/CXXModules/examples/expect/export-build-database-all-multi.json b/Tests/RunCMake/CXXModulesCompile/examples/expect/export-build-database-all-multi.json similarity index 100% rename from Tests/RunCMake/CXXModules/examples/expect/export-build-database-all-multi.json rename to Tests/RunCMake/CXXModulesCompile/examples/expect/export-build-database-all-multi.json diff --git a/Tests/RunCMake/CXXModules/examples/expect/export-build-database-all.json b/Tests/RunCMake/CXXModulesCompile/examples/expect/export-build-database-all.json similarity index 100% rename from Tests/RunCMake/CXXModules/examples/expect/export-build-database-all.json rename to Tests/RunCMake/CXXModulesCompile/examples/expect/export-build-database-all.json diff --git a/Tests/RunCMake/CXXModules/examples/expect/export-build-database-config.json b/Tests/RunCMake/CXXModulesCompile/examples/expect/export-build-database-config.json similarity index 100% rename from Tests/RunCMake/CXXModules/examples/expect/export-build-database-config.json rename to Tests/RunCMake/CXXModulesCompile/examples/expect/export-build-database-config.json diff --git a/Tests/RunCMake/CXXModules/examples/expect/export-build-database-cxx-config.json b/Tests/RunCMake/CXXModulesCompile/examples/expect/export-build-database-cxx-config.json similarity index 100% rename from Tests/RunCMake/CXXModules/examples/expect/export-build-database-cxx-config.json rename to Tests/RunCMake/CXXModulesCompile/examples/expect/export-build-database-cxx-config.json diff --git a/Tests/RunCMake/CXXModules/examples/expect/export-build-database-cxx-multi.json b/Tests/RunCMake/CXXModulesCompile/examples/expect/export-build-database-cxx-multi.json similarity index 100% rename from Tests/RunCMake/CXXModules/examples/expect/export-build-database-cxx-multi.json rename to Tests/RunCMake/CXXModulesCompile/examples/expect/export-build-database-cxx-multi.json diff --git a/Tests/RunCMake/CXXModules/examples/expect/export-build-database-cxx.json b/Tests/RunCMake/CXXModulesCompile/examples/expect/export-build-database-cxx.json similarity index 100% rename from Tests/RunCMake/CXXModules/examples/expect/export-build-database-cxx.json rename to Tests/RunCMake/CXXModulesCompile/examples/expect/export-build-database-cxx.json diff --git a/Tests/RunCMake/CXXModules/examples/expect/export-build-database-imported-all-multi.json b/Tests/RunCMake/CXXModulesCompile/examples/expect/export-build-database-imported-all-multi.json similarity index 100% rename from Tests/RunCMake/CXXModules/examples/expect/export-build-database-imported-all-multi.json rename to Tests/RunCMake/CXXModulesCompile/examples/expect/export-build-database-imported-all-multi.json diff --git a/Tests/RunCMake/CXXModules/examples/expect/export-build-database-imported-all.json b/Tests/RunCMake/CXXModulesCompile/examples/expect/export-build-database-imported-all.json similarity index 100% rename from Tests/RunCMake/CXXModules/examples/expect/export-build-database-imported-all.json rename to Tests/RunCMake/CXXModulesCompile/examples/expect/export-build-database-imported-all.json diff --git a/Tests/RunCMake/CXXModules/examples/expect/export-build-database-imported-config.json b/Tests/RunCMake/CXXModulesCompile/examples/expect/export-build-database-imported-config.json similarity index 100% rename from Tests/RunCMake/CXXModules/examples/expect/export-build-database-imported-config.json rename to Tests/RunCMake/CXXModulesCompile/examples/expect/export-build-database-imported-config.json diff --git a/Tests/RunCMake/CXXModules/examples/expect/export-build-database-imported-cxx-config.json b/Tests/RunCMake/CXXModulesCompile/examples/expect/export-build-database-imported-cxx-config.json similarity index 100% rename from Tests/RunCMake/CXXModules/examples/expect/export-build-database-imported-cxx-config.json rename to Tests/RunCMake/CXXModulesCompile/examples/expect/export-build-database-imported-cxx-config.json diff --git a/Tests/RunCMake/CXXModules/examples/expect/export-build-database-imported-cxx-multi.json b/Tests/RunCMake/CXXModulesCompile/examples/expect/export-build-database-imported-cxx-multi.json similarity index 100% rename from Tests/RunCMake/CXXModules/examples/expect/export-build-database-imported-cxx-multi.json rename to Tests/RunCMake/CXXModulesCompile/examples/expect/export-build-database-imported-cxx-multi.json diff --git a/Tests/RunCMake/CXXModules/examples/expect/export-build-database-imported-cxx.json b/Tests/RunCMake/CXXModulesCompile/examples/expect/export-build-database-imported-cxx.json similarity index 100% rename from Tests/RunCMake/CXXModules/examples/expect/export-build-database-imported-cxx.json rename to Tests/RunCMake/CXXModulesCompile/examples/expect/export-build-database-imported-cxx.json diff --git a/Tests/RunCMake/CXXModules/examples/expect/export-build-database-imported-target.json b/Tests/RunCMake/CXXModulesCompile/examples/expect/export-build-database-imported-target.json similarity index 100% rename from Tests/RunCMake/CXXModules/examples/expect/export-build-database-imported-target.json rename to Tests/RunCMake/CXXModulesCompile/examples/expect/export-build-database-imported-target.json diff --git a/Tests/RunCMake/CXXModules/examples/expect/export-build-database-target.json b/Tests/RunCMake/CXXModulesCompile/examples/expect/export-build-database-target.json similarity index 100% rename from Tests/RunCMake/CXXModules/examples/expect/export-build-database-target.json rename to Tests/RunCMake/CXXModulesCompile/examples/expect/export-build-database-target.json diff --git a/Tests/RunCMake/CXXModules/examples/export-bmi-and-interface-build/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/export-bmi-and-interface-build/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-bmi-and-interface-build/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/export-bmi-and-interface-build/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/export-bmi-and-interface-build/forward.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-bmi-and-interface-build/forward.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-bmi-and-interface-build/forward.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-bmi-and-interface-build/forward.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-bmi-and-interface-build/importable.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-bmi-and-interface-build/importable.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-bmi-and-interface-build/importable.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-bmi-and-interface-build/importable.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-bmi-and-interface-build/no_modules.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-bmi-and-interface-build/no_modules.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-bmi-and-interface-build/no_modules.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-bmi-and-interface-build/no_modules.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-bmi-and-interface-build/private.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-bmi-and-interface-build/private.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-bmi-and-interface-build/private.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-bmi-and-interface-build/private.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-bmi-and-interface-build/subdir/importable.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-bmi-and-interface-build/subdir/importable.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-bmi-and-interface-build/subdir/importable.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-bmi-and-interface-build/subdir/importable.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-bmi-and-interface-build/test/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/export-bmi-and-interface-build/test/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-bmi-and-interface-build/test/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/export-bmi-and-interface-build/test/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/export-bmi-and-interface-install/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/export-bmi-and-interface-install/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-bmi-and-interface-install/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/export-bmi-and-interface-install/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/export-bmi-and-interface-install/forward.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-bmi-and-interface-install/forward.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-bmi-and-interface-install/forward.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-bmi-and-interface-install/forward.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-bmi-and-interface-install/importable.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-bmi-and-interface-install/importable.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-bmi-and-interface-install/importable.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-bmi-and-interface-install/importable.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-bmi-and-interface-install/no_modules.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-bmi-and-interface-install/no_modules.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-bmi-and-interface-install/no_modules.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-bmi-and-interface-install/no_modules.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-bmi-and-interface-install/private.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-bmi-and-interface-install/private.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-bmi-and-interface-install/private.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-bmi-and-interface-install/private.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-bmi-and-interface-install/subdir/importable.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-bmi-and-interface-install/subdir/importable.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-bmi-and-interface-install/subdir/importable.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-bmi-and-interface-install/subdir/importable.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-bmi-and-interface-install/test/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/export-bmi-and-interface-install/test/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-bmi-and-interface-install/test/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/export-bmi-and-interface-install/test/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/export-build-database-build-check.cmake b/Tests/RunCMake/CXXModulesCompile/examples/export-build-database-build-check.cmake similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-build-database-build-check.cmake rename to Tests/RunCMake/CXXModulesCompile/examples/export-build-database-build-check.cmake diff --git a/Tests/RunCMake/CXXModules/examples/export-build-database-check.cmake b/Tests/RunCMake/CXXModulesCompile/examples/export-build-database-check.cmake similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-build-database-check.cmake rename to Tests/RunCMake/CXXModulesCompile/examples/export-build-database-check.cmake diff --git a/Tests/RunCMake/CXXModules/examples/export-build-database-setup.cmake b/Tests/RunCMake/CXXModulesCompile/examples/export-build-database-setup.cmake similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-build-database-setup.cmake rename to Tests/RunCMake/CXXModulesCompile/examples/export-build-database-setup.cmake diff --git a/Tests/RunCMake/CXXModules/examples/export-build-database-stderr.txt b/Tests/RunCMake/CXXModulesCompile/examples/export-build-database-stderr.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-build-database-stderr.txt rename to Tests/RunCMake/CXXModulesCompile/examples/export-build-database-stderr.txt diff --git a/Tests/RunCMake/CXXModules/examples/export-build-database-target-cmake_build_database-check.cmake b/Tests/RunCMake/CXXModulesCompile/examples/export-build-database-target-cmake_build_database-check.cmake similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-build-database-target-cmake_build_database-check.cmake rename to Tests/RunCMake/CXXModulesCompile/examples/export-build-database-target-cmake_build_database-check.cmake diff --git a/Tests/RunCMake/CXXModules/examples/export-build-database-target-cmake_build_database/CXX-check.cmake b/Tests/RunCMake/CXXModulesCompile/examples/export-build-database-target-cmake_build_database/CXX-check.cmake similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-build-database-target-cmake_build_database/CXX-check.cmake rename to Tests/RunCMake/CXXModulesCompile/examples/export-build-database-target-cmake_build_database/CXX-check.cmake diff --git a/Tests/RunCMake/CXXModules/examples/export-build-database-target-cmake_build_database/CXX/Debug-check.cmake b/Tests/RunCMake/CXXModulesCompile/examples/export-build-database-target-cmake_build_database/CXX/Debug-check.cmake similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-build-database-target-cmake_build_database/CXX/Debug-check.cmake rename to Tests/RunCMake/CXXModulesCompile/examples/export-build-database-target-cmake_build_database/CXX/Debug-check.cmake diff --git a/Tests/RunCMake/CXXModules/examples/export-build-database-target-cmake_build_database/CXX/Release-Release-check.cmake b/Tests/RunCMake/CXXModulesCompile/examples/export-build-database-target-cmake_build_database/CXX/Release-Release-check.cmake similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-build-database-target-cmake_build_database/CXX/Release-Release-check.cmake rename to Tests/RunCMake/CXXModulesCompile/examples/export-build-database-target-cmake_build_database/CXX/Release-Release-check.cmake diff --git a/Tests/RunCMake/CXXModules/examples/export-build-database-target-cmake_build_database/Debug-check.cmake b/Tests/RunCMake/CXXModulesCompile/examples/export-build-database-target-cmake_build_database/Debug-check.cmake similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-build-database-target-cmake_build_database/Debug-check.cmake rename to Tests/RunCMake/CXXModulesCompile/examples/export-build-database-target-cmake_build_database/Debug-check.cmake diff --git a/Tests/RunCMake/CXXModules/examples/export-build-database-target-cmake_build_database/Release-Release-check.cmake b/Tests/RunCMake/CXXModulesCompile/examples/export-build-database-target-cmake_build_database/Release-Release-check.cmake similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-build-database-target-cmake_build_database/Release-Release-check.cmake rename to Tests/RunCMake/CXXModulesCompile/examples/export-build-database-target-cmake_build_database/Release-Release-check.cmake diff --git a/Tests/RunCMake/CXXModules/examples/export-build-database/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/export-build-database/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-build-database/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/export-build-database/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/export-build-database/dep_interface_include/anchor b/Tests/RunCMake/CXXModulesCompile/examples/export-build-database/dep_interface_include/anchor similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-build-database/dep_interface_include/anchor rename to Tests/RunCMake/CXXModulesCompile/examples/export-build-database/dep_interface_include/anchor diff --git a/Tests/RunCMake/CXXModules/examples/export-build-database/importable.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-build-database/importable.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-build-database/importable.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-build-database/importable.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-build-database/lib.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-build-database/lib.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-build-database/lib.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-build-database/lib.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-build-database/target_interface_include/anchor b/Tests/RunCMake/CXXModulesCompile/examples/export-build-database/target_interface_include/anchor similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-build-database/target_interface_include/anchor rename to Tests/RunCMake/CXXModulesCompile/examples/export-build-database/target_interface_include/anchor diff --git a/Tests/RunCMake/CXXModules/examples/export-build-database/target_public_include/anchor b/Tests/RunCMake/CXXModulesCompile/examples/export-build-database/target_public_include/anchor similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-build-database/target_public_include/anchor rename to Tests/RunCMake/CXXModulesCompile/examples/export-build-database/target_public_include/anchor diff --git a/Tests/RunCMake/CXXModules/examples/export-command-sepdir-build/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/export-command-sepdir-build/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-command-sepdir-build/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/export-command-sepdir-build/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/export-command-sepdir-build/subdir/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/export-command-sepdir-build/subdir/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-command-sepdir-build/subdir/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/export-command-sepdir-build/subdir/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/export-command-sepdir-build/subdir/importable.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-command-sepdir-build/subdir/importable.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-command-sepdir-build/subdir/importable.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-command-sepdir-build/subdir/importable.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-command-sepdir-build/test/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/export-command-sepdir-build/test/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-command-sepdir-build/test/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/export-command-sepdir-build/test/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/export-command-sepdir-install/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/export-command-sepdir-install/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-command-sepdir-install/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/export-command-sepdir-install/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/export-command-sepdir-install/subdir/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/export-command-sepdir-install/subdir/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-command-sepdir-install/subdir/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/export-command-sepdir-install/subdir/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/export-command-sepdir-install/subdir/importable.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-command-sepdir-install/subdir/importable.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-command-sepdir-install/subdir/importable.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-command-sepdir-install/subdir/importable.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-command-sepdir-install/test/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/export-command-sepdir-install/test/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-command-sepdir-install/test/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/export-command-sepdir-install/test/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/export-compile-commands-check.cmake b/Tests/RunCMake/CXXModulesCompile/examples/export-compile-commands-check.cmake similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-compile-commands-check.cmake rename to Tests/RunCMake/CXXModulesCompile/examples/export-compile-commands-check.cmake diff --git a/Tests/RunCMake/CXXModules/examples/export-compile-commands/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/export-compile-commands/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-compile-commands/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/export-compile-commands/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/export-compile-commands/importable.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-compile-commands/importable.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-compile-commands/importable.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-compile-commands/importable.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-compile-commands/main.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-compile-commands/main.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-compile-commands/main.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-compile-commands/main.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-include-directories-build/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/export-include-directories-build/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-include-directories-build/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/export-include-directories-build/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/export-include-directories-build/forward.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-include-directories-build/forward.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-include-directories-build/forward.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-include-directories-build/forward.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-include-directories-build/importable.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-include-directories-build/importable.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-include-directories-build/importable.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-include-directories-build/importable.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-include-directories-build/include/include.h b/Tests/RunCMake/CXXModulesCompile/examples/export-include-directories-build/include/include.h similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-include-directories-build/include/include.h rename to Tests/RunCMake/CXXModulesCompile/examples/export-include-directories-build/include/include.h diff --git a/Tests/RunCMake/CXXModules/examples/export-include-directories-build/includes/includes.h b/Tests/RunCMake/CXXModulesCompile/examples/export-include-directories-build/includes/includes.h similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-include-directories-build/includes/includes.h rename to Tests/RunCMake/CXXModulesCompile/examples/export-include-directories-build/includes/includes.h diff --git a/Tests/RunCMake/CXXModules/examples/export-include-directories-build/no_modules.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-include-directories-build/no_modules.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-include-directories-build/no_modules.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-include-directories-build/no_modules.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-include-directories-build/private.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-include-directories-build/private.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-include-directories-build/private.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-include-directories-build/private.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-include-directories-build/subdir/importable.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-include-directories-build/subdir/importable.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-include-directories-build/subdir/importable.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-include-directories-build/subdir/importable.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-include-directories-build/test/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/export-include-directories-build/test/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-include-directories-build/test/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/export-include-directories-build/test/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/export-include-directories-install/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/export-include-directories-install/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-include-directories-install/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/export-include-directories-install/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/export-include-directories-install/forward.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-include-directories-install/forward.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-include-directories-install/forward.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-include-directories-install/forward.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-include-directories-install/importable.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-include-directories-install/importable.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-include-directories-install/importable.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-include-directories-install/importable.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-include-directories-install/include/include.h b/Tests/RunCMake/CXXModulesCompile/examples/export-include-directories-install/include/include.h similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-include-directories-install/include/include.h rename to Tests/RunCMake/CXXModulesCompile/examples/export-include-directories-install/include/include.h diff --git a/Tests/RunCMake/CXXModules/examples/export-include-directories-install/includes/includes.h b/Tests/RunCMake/CXXModulesCompile/examples/export-include-directories-install/includes/includes.h similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-include-directories-install/includes/includes.h rename to Tests/RunCMake/CXXModulesCompile/examples/export-include-directories-install/includes/includes.h diff --git a/Tests/RunCMake/CXXModules/examples/export-include-directories-install/no_modules.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-include-directories-install/no_modules.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-include-directories-install/no_modules.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-include-directories-install/no_modules.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-include-directories-install/private.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-include-directories-install/private.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-include-directories-install/private.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-include-directories-install/private.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-include-directories-install/subdir/importable.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-include-directories-install/subdir/importable.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-include-directories-install/subdir/importable.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-include-directories-install/subdir/importable.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-include-directories-install/test/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/export-include-directories-install/test/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-include-directories-install/test/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/export-include-directories-install/test/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/export-include-directories-old-cmake-build/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/export-include-directories-old-cmake-build/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-include-directories-old-cmake-build/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/export-include-directories-old-cmake-build/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/export-include-directories-old-cmake-build/importable.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-include-directories-old-cmake-build/importable.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-include-directories-old-cmake-build/importable.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-include-directories-old-cmake-build/importable.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-include-directories-old-cmake-build/test/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/export-include-directories-old-cmake-build/test/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-include-directories-old-cmake-build/test/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/export-include-directories-old-cmake-build/test/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/export-include-directories-old-cmake-install/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/export-include-directories-old-cmake-install/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-include-directories-old-cmake-install/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/export-include-directories-old-cmake-install/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/export-include-directories-old-cmake-install/importable.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-include-directories-old-cmake-install/importable.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-include-directories-old-cmake-install/importable.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-include-directories-old-cmake-install/importable.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-include-directories-old-cmake-install/test/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/export-include-directories-old-cmake-install/test/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-include-directories-old-cmake-install/test/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/export-include-directories-old-cmake-install/test/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/export-interface-build/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/export-interface-build/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-interface-build/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/export-interface-build/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/export-interface-build/forward.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-interface-build/forward.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-interface-build/forward.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-interface-build/forward.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-interface-build/importable.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-interface-build/importable.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-interface-build/importable.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-interface-build/importable.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-interface-build/no_modules.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-interface-build/no_modules.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-interface-build/no_modules.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-interface-build/no_modules.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-interface-build/private.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-interface-build/private.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-interface-build/private.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-interface-build/private.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-interface-build/subdir/importable.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-interface-build/subdir/importable.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-interface-build/subdir/importable.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-interface-build/subdir/importable.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-interface-build/test/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/export-interface-build/test/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-interface-build/test/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/export-interface-build/test/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/export-interface-install/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/export-interface-install/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-interface-install/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/export-interface-install/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/export-interface-install/forward.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-interface-install/forward.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-interface-install/forward.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-interface-install/forward.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-interface-install/importable.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-interface-install/importable.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-interface-install/importable.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-interface-install/importable.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-interface-install/no_modules.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-interface-install/no_modules.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-interface-install/no_modules.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-interface-install/no_modules.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-interface-install/private.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-interface-install/private.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-interface-install/private.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-interface-install/private.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-interface-install/subdir/importable.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-interface-install/subdir/importable.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-interface-install/subdir/importable.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-interface-install/subdir/importable.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-interface-install/test/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/export-interface-install/test/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-interface-install/test/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/export-interface-install/test/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/export-interface-no-properties-build/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/export-interface-no-properties-build/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-interface-no-properties-build/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/export-interface-no-properties-build/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/export-interface-no-properties-build/forward.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-interface-no-properties-build/forward.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-interface-no-properties-build/forward.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-interface-no-properties-build/forward.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-interface-no-properties-build/importable.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-interface-no-properties-build/importable.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-interface-no-properties-build/importable.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-interface-no-properties-build/importable.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-interface-no-properties-build/no_modules.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-interface-no-properties-build/no_modules.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-interface-no-properties-build/no_modules.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-interface-no-properties-build/no_modules.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-interface-no-properties-build/private.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-interface-no-properties-build/private.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-interface-no-properties-build/private.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-interface-no-properties-build/private.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-interface-no-properties-build/subdir/importable.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-interface-no-properties-build/subdir/importable.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-interface-no-properties-build/subdir/importable.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-interface-no-properties-build/subdir/importable.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-interface-no-properties-build/test/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/export-interface-no-properties-build/test/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-interface-no-properties-build/test/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/export-interface-no-properties-build/test/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/export-interface-no-properties-install/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/export-interface-no-properties-install/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-interface-no-properties-install/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/export-interface-no-properties-install/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/export-interface-no-properties-install/forward.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-interface-no-properties-install/forward.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-interface-no-properties-install/forward.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-interface-no-properties-install/forward.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-interface-no-properties-install/importable.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-interface-no-properties-install/importable.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-interface-no-properties-install/importable.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-interface-no-properties-install/importable.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-interface-no-properties-install/no_modules.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-interface-no-properties-install/no_modules.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-interface-no-properties-install/no_modules.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-interface-no-properties-install/no_modules.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-interface-no-properties-install/private.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-interface-no-properties-install/private.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-interface-no-properties-install/private.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-interface-no-properties-install/private.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-interface-no-properties-install/subdir/importable.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-interface-no-properties-install/subdir/importable.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-interface-no-properties-install/subdir/importable.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-interface-no-properties-install/subdir/importable.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-interface-no-properties-install/test/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/export-interface-no-properties-install/test/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-interface-no-properties-install/test/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/export-interface-no-properties-install/test/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/export-modules-from-ninja/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/export-modules-from-ninja/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-modules-from-ninja/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/export-modules-from-ninja/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/export-modules-from-ninja/forward.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-modules-from-ninja/forward.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-modules-from-ninja/forward.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-modules-from-ninja/forward.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-modules-from-ninja/importable.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-modules-from-ninja/importable.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-modules-from-ninja/importable.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-modules-from-ninja/importable.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-modules-from-ninja/no_modules.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-modules-from-ninja/no_modules.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-modules-from-ninja/no_modules.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-modules-from-ninja/no_modules.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-modules-from-ninja/private.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-modules-from-ninja/private.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-modules-from-ninja/private.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-modules-from-ninja/private.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-modules-from-ninja/subdir/importable.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-modules-from-ninja/subdir/importable.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-modules-from-ninja/subdir/importable.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-modules-from-ninja/subdir/importable.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-transitive-modules-build/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/export-transitive-modules-build/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-transitive-modules-build/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/export-transitive-modules-build/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/export-transitive-modules-build/importable.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-transitive-modules-build/importable.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-transitive-modules-build/importable.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-transitive-modules-build/importable.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-transitive-modules-build/test/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/export-transitive-modules-build/test/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-transitive-modules-build/test/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/export-transitive-modules-build/test/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/export-transitive-modules-install/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/export-transitive-modules-install/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-transitive-modules-install/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/export-transitive-modules-install/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/export-transitive-modules-install/importable.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-transitive-modules-install/importable.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-transitive-modules-install/importable.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-transitive-modules-install/importable.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-transitive-modules-install/test/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/export-transitive-modules-install/test/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-transitive-modules-install/test/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/export-transitive-modules-install/test/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/export-transitive-modules1-build/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/export-transitive-modules1-build/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-transitive-modules1-build/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/export-transitive-modules1-build/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/export-transitive-modules1-build/importable.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-transitive-modules1-build/importable.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-transitive-modules1-build/importable.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-transitive-modules1-build/importable.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-transitive-modules1-build/test/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/export-transitive-modules1-build/test/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-transitive-modules1-build/test/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/export-transitive-modules1-build/test/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/export-transitive-modules1-install/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/export-transitive-modules1-install/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-transitive-modules1-install/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/export-transitive-modules1-install/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/export-transitive-modules1-install/importable.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-transitive-modules1-install/importable.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-transitive-modules1-install/importable.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-transitive-modules1-install/importable.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-transitive-modules1-install/test/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/export-transitive-modules1-install/test/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-transitive-modules1-install/test/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/export-transitive-modules1-install/test/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/export-transitive-targets-build/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/export-transitive-targets-build/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-transitive-targets-build/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/export-transitive-targets-build/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/export-transitive-targets-build/forward.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-transitive-targets-build/forward.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-transitive-targets-build/forward.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-transitive-targets-build/forward.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-transitive-targets-build/importable.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-transitive-targets-build/importable.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-transitive-targets-build/importable.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-transitive-targets-build/importable.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-transitive-targets-build/include/include.h b/Tests/RunCMake/CXXModulesCompile/examples/export-transitive-targets-build/include/include.h similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-transitive-targets-build/include/include.h rename to Tests/RunCMake/CXXModulesCompile/examples/export-transitive-targets-build/include/include.h diff --git a/Tests/RunCMake/CXXModules/examples/export-transitive-targets-build/includes/includes.h b/Tests/RunCMake/CXXModulesCompile/examples/export-transitive-targets-build/includes/includes.h similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-transitive-targets-build/includes/includes.h rename to Tests/RunCMake/CXXModulesCompile/examples/export-transitive-targets-build/includes/includes.h diff --git a/Tests/RunCMake/CXXModules/examples/export-transitive-targets-build/no_modules.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-transitive-targets-build/no_modules.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-transitive-targets-build/no_modules.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-transitive-targets-build/no_modules.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-transitive-targets-build/private.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-transitive-targets-build/private.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-transitive-targets-build/private.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-transitive-targets-build/private.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-transitive-targets-build/subdir/importable.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-transitive-targets-build/subdir/importable.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-transitive-targets-build/subdir/importable.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-transitive-targets-build/subdir/importable.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-transitive-targets-build/test/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/export-transitive-targets-build/test/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-transitive-targets-build/test/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/export-transitive-targets-build/test/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/export-transitive-targets-install/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/export-transitive-targets-install/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-transitive-targets-install/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/export-transitive-targets-install/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/export-transitive-targets-install/forward.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-transitive-targets-install/forward.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-transitive-targets-install/forward.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-transitive-targets-install/forward.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-transitive-targets-install/importable.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-transitive-targets-install/importable.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-transitive-targets-install/importable.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-transitive-targets-install/importable.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-transitive-targets-install/include/include.h b/Tests/RunCMake/CXXModulesCompile/examples/export-transitive-targets-install/include/include.h similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-transitive-targets-install/include/include.h rename to Tests/RunCMake/CXXModulesCompile/examples/export-transitive-targets-install/include/include.h diff --git a/Tests/RunCMake/CXXModules/examples/export-transitive-targets-install/includes/includes.h b/Tests/RunCMake/CXXModulesCompile/examples/export-transitive-targets-install/includes/includes.h similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-transitive-targets-install/includes/includes.h rename to Tests/RunCMake/CXXModulesCompile/examples/export-transitive-targets-install/includes/includes.h diff --git a/Tests/RunCMake/CXXModules/examples/export-transitive-targets-install/no_modules.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-transitive-targets-install/no_modules.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-transitive-targets-install/no_modules.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-transitive-targets-install/no_modules.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-transitive-targets-install/private.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-transitive-targets-install/private.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-transitive-targets-install/private.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-transitive-targets-install/private.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-transitive-targets-install/subdir/importable.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-transitive-targets-install/subdir/importable.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-transitive-targets-install/subdir/importable.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-transitive-targets-install/subdir/importable.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-transitive-targets-install/test/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/export-transitive-targets-install/test/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-transitive-targets-install/test/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/export-transitive-targets-install/test/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/export-usage-build/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/export-usage-build/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-usage-build/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/export-usage-build/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/export-usage-build/forward.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-usage-build/forward.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-usage-build/forward.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-usage-build/forward.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-usage-build/importable.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-usage-build/importable.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-usage-build/importable.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-usage-build/importable.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-usage-build/private.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-usage-build/private.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-usage-build/private.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-usage-build/private.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-usage-build/test/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/export-usage-build/test/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-usage-build/test/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/export-usage-build/test/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/export-usage-install/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/export-usage-install/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-usage-install/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/export-usage-install/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/export-usage-install/forward.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-usage-install/forward.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-usage-install/forward.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-usage-install/forward.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-usage-install/importable.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-usage-install/importable.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-usage-install/importable.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-usage-install/importable.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-usage-install/private.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-usage-install/private.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-usage-install/private.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-usage-install/private.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-usage-install/test/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/export-usage-install/test/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-usage-install/test/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/export-usage-install/test/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/export-with-headers-build/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/export-with-headers-build/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-with-headers-build/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/export-with-headers-build/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/export-with-headers-build/importable.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-with-headers-build/importable.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-with-headers-build/importable.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-with-headers-build/importable.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-with-headers-build/include/subdir/header.h b/Tests/RunCMake/CXXModulesCompile/examples/export-with-headers-build/include/subdir/header.h similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-with-headers-build/include/subdir/header.h rename to Tests/RunCMake/CXXModulesCompile/examples/export-with-headers-build/include/subdir/header.h diff --git a/Tests/RunCMake/CXXModules/examples/export-with-headers-build/test/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/export-with-headers-build/test/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-with-headers-build/test/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/export-with-headers-build/test/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/export-with-headers-install/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/export-with-headers-install/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-with-headers-install/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/export-with-headers-install/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/export-with-headers-install/importable.cxx b/Tests/RunCMake/CXXModulesCompile/examples/export-with-headers-install/importable.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-with-headers-install/importable.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/export-with-headers-install/importable.cxx diff --git a/Tests/RunCMake/CXXModules/examples/export-with-headers-install/include/subdir/header.h b/Tests/RunCMake/CXXModulesCompile/examples/export-with-headers-install/include/subdir/header.h similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-with-headers-install/include/subdir/header.h rename to Tests/RunCMake/CXXModulesCompile/examples/export-with-headers-install/include/subdir/header.h diff --git a/Tests/RunCMake/CXXModules/examples/export-with-headers-install/test/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/export-with-headers-install/test/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/export-with-headers-install/test/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/export-with-headers-install/test/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/file-sets-with-dot/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/file-sets-with-dot/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/file-sets-with-dot/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/file-sets-with-dot/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/file-sets-with-dot/importable.cxx b/Tests/RunCMake/CXXModulesCompile/examples/file-sets-with-dot/importable.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/file-sets-with-dot/importable.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/file-sets-with-dot/importable.cxx diff --git a/Tests/RunCMake/CXXModules/examples/file-sets-with-dot/main.cxx b/Tests/RunCMake/CXXModulesCompile/examples/file-sets-with-dot/main.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/file-sets-with-dot/main.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/file-sets-with-dot/main.cxx diff --git a/Tests/RunCMake/CXXModules/examples/generated/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/generated/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/generated/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/generated/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/generated/importable.cxx.in b/Tests/RunCMake/CXXModulesCompile/examples/generated/importable.cxx.in similarity index 100% rename from Tests/RunCMake/CXXModules/examples/generated/importable.cxx.in rename to Tests/RunCMake/CXXModulesCompile/examples/generated/importable.cxx.in diff --git a/Tests/RunCMake/CXXModules/examples/generated/main.cxx b/Tests/RunCMake/CXXModulesCompile/examples/generated/main.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/generated/main.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/generated/main.cxx diff --git a/Tests/RunCMake/CXXModules/examples/import-from-object/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/import-from-object/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/import-from-object/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/import-from-object/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/import-from-object/object-a.cxx b/Tests/RunCMake/CXXModulesCompile/examples/import-from-object/object-a.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/import-from-object/object-a.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/import-from-object/object-a.cxx diff --git a/Tests/RunCMake/CXXModules/examples/import-from-object/object-b.cxx b/Tests/RunCMake/CXXModulesCompile/examples/import-from-object/object-b.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/import-from-object/object-b.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/import-from-object/object-b.cxx diff --git a/Tests/RunCMake/CXXModules/examples/import-modules-export-build-database-build-check.cmake b/Tests/RunCMake/CXXModulesCompile/examples/import-modules-export-build-database-build-check.cmake similarity index 100% rename from Tests/RunCMake/CXXModules/examples/import-modules-export-build-database-build-check.cmake rename to Tests/RunCMake/CXXModulesCompile/examples/import-modules-export-build-database-build-check.cmake diff --git a/Tests/RunCMake/CXXModules/examples/import-modules-export-build-database-check.cmake b/Tests/RunCMake/CXXModulesCompile/examples/import-modules-export-build-database-check.cmake similarity index 100% rename from Tests/RunCMake/CXXModules/examples/import-modules-export-build-database-check.cmake rename to Tests/RunCMake/CXXModulesCompile/examples/import-modules-export-build-database-check.cmake diff --git a/Tests/RunCMake/CXXModules/examples/import-modules-export-build-database-stderr.txt b/Tests/RunCMake/CXXModulesCompile/examples/import-modules-export-build-database-stderr.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/import-modules-export-build-database-stderr.txt rename to Tests/RunCMake/CXXModulesCompile/examples/import-modules-export-build-database-stderr.txt diff --git a/Tests/RunCMake/CXXModules/examples/import-modules-export-build-database-target-cmake_build_database-check.cmake b/Tests/RunCMake/CXXModulesCompile/examples/import-modules-export-build-database-target-cmake_build_database-check.cmake similarity index 100% rename from Tests/RunCMake/CXXModules/examples/import-modules-export-build-database-target-cmake_build_database-check.cmake rename to Tests/RunCMake/CXXModulesCompile/examples/import-modules-export-build-database-target-cmake_build_database-check.cmake diff --git a/Tests/RunCMake/CXXModules/examples/import-modules-export-build-database-target-cmake_build_database/CXX-check.cmake b/Tests/RunCMake/CXXModulesCompile/examples/import-modules-export-build-database-target-cmake_build_database/CXX-check.cmake similarity index 100% rename from Tests/RunCMake/CXXModules/examples/import-modules-export-build-database-target-cmake_build_database/CXX-check.cmake rename to Tests/RunCMake/CXXModulesCompile/examples/import-modules-export-build-database-target-cmake_build_database/CXX-check.cmake diff --git a/Tests/RunCMake/CXXModules/examples/import-modules-export-build-database-target-cmake_build_database/CXX/Debug-check.cmake b/Tests/RunCMake/CXXModulesCompile/examples/import-modules-export-build-database-target-cmake_build_database/CXX/Debug-check.cmake similarity index 100% rename from Tests/RunCMake/CXXModules/examples/import-modules-export-build-database-target-cmake_build_database/CXX/Debug-check.cmake rename to Tests/RunCMake/CXXModulesCompile/examples/import-modules-export-build-database-target-cmake_build_database/CXX/Debug-check.cmake diff --git a/Tests/RunCMake/CXXModules/examples/import-modules-export-build-database-target-cmake_build_database/CXX/Release-Release-check.cmake b/Tests/RunCMake/CXXModulesCompile/examples/import-modules-export-build-database-target-cmake_build_database/CXX/Release-Release-check.cmake similarity index 100% rename from Tests/RunCMake/CXXModules/examples/import-modules-export-build-database-target-cmake_build_database/CXX/Release-Release-check.cmake rename to Tests/RunCMake/CXXModulesCompile/examples/import-modules-export-build-database-target-cmake_build_database/CXX/Release-Release-check.cmake diff --git a/Tests/RunCMake/CXXModules/examples/import-modules-export-build-database-target-cmake_build_database/Debug-check.cmake b/Tests/RunCMake/CXXModulesCompile/examples/import-modules-export-build-database-target-cmake_build_database/Debug-check.cmake similarity index 100% rename from Tests/RunCMake/CXXModules/examples/import-modules-export-build-database-target-cmake_build_database/Debug-check.cmake rename to Tests/RunCMake/CXXModulesCompile/examples/import-modules-export-build-database-target-cmake_build_database/Debug-check.cmake diff --git a/Tests/RunCMake/CXXModules/examples/import-modules-export-build-database-target-cmake_build_database/Release-check.cmake b/Tests/RunCMake/CXXModulesCompile/examples/import-modules-export-build-database-target-cmake_build_database/Release-check.cmake similarity index 100% rename from Tests/RunCMake/CXXModules/examples/import-modules-export-build-database-target-cmake_build_database/Release-check.cmake rename to Tests/RunCMake/CXXModulesCompile/examples/import-modules-export-build-database-target-cmake_build_database/Release-check.cmake diff --git a/Tests/RunCMake/CXXModules/examples/import-modules/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/import-modules/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/import-modules/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/import-modules/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/import-modules/use.cxx b/Tests/RunCMake/CXXModulesCompile/examples/import-modules/use.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/import-modules/use.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/import-modules/use.cxx diff --git a/Tests/RunCMake/CXXModules/examples/import-std-export-no-std-build-stderr.txt b/Tests/RunCMake/CXXModulesCompile/examples/import-std-export-no-std-build-stderr.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/import-std-export-no-std-build-stderr.txt rename to Tests/RunCMake/CXXModulesCompile/examples/import-std-export-no-std-build-stderr.txt diff --git a/Tests/RunCMake/CXXModules/examples/import-std-export-no-std-build/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/import-std-export-no-std-build/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/import-std-export-no-std-build/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/import-std-export-no-std-build/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/import-std-export-no-std-build/impl-uses-std.cxx b/Tests/RunCMake/CXXModulesCompile/examples/import-std-export-no-std-build/impl-uses-std.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/import-std-export-no-std-build/impl-uses-std.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/import-std-export-no-std-build/impl-uses-std.cxx diff --git a/Tests/RunCMake/CXXModules/examples/import-std-export-no-std-build/main.cxx b/Tests/RunCMake/CXXModulesCompile/examples/import-std-export-no-std-build/main.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/import-std-export-no-std-build/main.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/import-std-export-no-std-build/main.cxx diff --git a/Tests/RunCMake/CXXModules/examples/import-std-export-no-std-build/test/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/import-std-export-no-std-build/test/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/import-std-export-no-std-build/test/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/import-std-export-no-std-build/test/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/import-std-export-no-std-build/uses-std.cxx b/Tests/RunCMake/CXXModulesCompile/examples/import-std-export-no-std-build/uses-std.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/import-std-export-no-std-build/uses-std.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/import-std-export-no-std-build/uses-std.cxx diff --git a/Tests/RunCMake/CXXModules/examples/import-std-export-no-std-install-stderr.txt b/Tests/RunCMake/CXXModulesCompile/examples/import-std-export-no-std-install-stderr.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/import-std-export-no-std-install-stderr.txt rename to Tests/RunCMake/CXXModulesCompile/examples/import-std-export-no-std-install-stderr.txt diff --git a/Tests/RunCMake/CXXModules/examples/import-std-export-no-std-install/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/import-std-export-no-std-install/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/import-std-export-no-std-install/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/import-std-export-no-std-install/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/import-std-export-no-std-install/impl-uses-std.cxx b/Tests/RunCMake/CXXModulesCompile/examples/import-std-export-no-std-install/impl-uses-std.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/import-std-export-no-std-install/impl-uses-std.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/import-std-export-no-std-install/impl-uses-std.cxx diff --git a/Tests/RunCMake/CXXModules/examples/import-std-export-no-std-install/main.cxx b/Tests/RunCMake/CXXModulesCompile/examples/import-std-export-no-std-install/main.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/import-std-export-no-std-install/main.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/import-std-export-no-std-install/main.cxx diff --git a/Tests/RunCMake/CXXModules/examples/import-std-export-no-std-install/test/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/import-std-export-no-std-install/test/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/import-std-export-no-std-install/test/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/import-std-export-no-std-install/test/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/import-std-export-no-std-install/uses-std.cxx b/Tests/RunCMake/CXXModulesCompile/examples/import-std-export-no-std-install/uses-std.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/import-std-export-no-std-install/uses-std.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/import-std-export-no-std-install/uses-std.cxx diff --git a/Tests/RunCMake/CXXModules/examples/import-std-no-std-property-build-result.txt b/Tests/RunCMake/CXXModulesCompile/examples/import-std-no-std-property-build-result.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/import-std-no-std-property-build-result.txt rename to Tests/RunCMake/CXXModulesCompile/examples/import-std-no-std-property-build-result.txt diff --git a/Tests/RunCMake/CXXModules/examples/import-std-no-std-property-build-stdout.txt b/Tests/RunCMake/CXXModulesCompile/examples/import-std-no-std-property-build-stdout.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/import-std-no-std-property-build-stdout.txt rename to Tests/RunCMake/CXXModulesCompile/examples/import-std-no-std-property-build-stdout.txt diff --git a/Tests/RunCMake/CXXModules/examples/import-std-no-std-property-stderr.txt b/Tests/RunCMake/CXXModulesCompile/examples/import-std-no-std-property-stderr.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/import-std-no-std-property-stderr.txt rename to Tests/RunCMake/CXXModulesCompile/examples/import-std-no-std-property-stderr.txt diff --git a/Tests/RunCMake/CXXModules/examples/import-std-no-std-property/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/import-std-no-std-property/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/import-std-no-std-property/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/import-std-no-std-property/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/import-std-no-std-property/main.cxx b/Tests/RunCMake/CXXModulesCompile/examples/import-std-no-std-property/main.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/import-std-no-std-property/main.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/import-std-no-std-property/main.cxx diff --git a/Tests/RunCMake/CXXModules/examples/import-std-not-in-export-build-stderr.txt b/Tests/RunCMake/CXXModulesCompile/examples/import-std-not-in-export-build-stderr.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/import-std-not-in-export-build-stderr.txt rename to Tests/RunCMake/CXXModulesCompile/examples/import-std-not-in-export-build-stderr.txt diff --git a/Tests/RunCMake/CXXModules/examples/import-std-not-in-export-build/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/import-std-not-in-export-build/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/import-std-not-in-export-build/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/import-std-not-in-export-build/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/import-std-not-in-export-build/main.cxx b/Tests/RunCMake/CXXModulesCompile/examples/import-std-not-in-export-build/main.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/import-std-not-in-export-build/main.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/import-std-not-in-export-build/main.cxx diff --git a/Tests/RunCMake/CXXModules/examples/import-std-not-in-export-build/test/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/import-std-not-in-export-build/test/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/import-std-not-in-export-build/test/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/import-std-not-in-export-build/test/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/import-std-not-in-export-build/uses-std.cxx b/Tests/RunCMake/CXXModulesCompile/examples/import-std-not-in-export-build/uses-std.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/import-std-not-in-export-build/uses-std.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/import-std-not-in-export-build/uses-std.cxx diff --git a/Tests/RunCMake/CXXModules/examples/import-std-not-in-export-install-stderr.txt b/Tests/RunCMake/CXXModulesCompile/examples/import-std-not-in-export-install-stderr.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/import-std-not-in-export-install-stderr.txt rename to Tests/RunCMake/CXXModulesCompile/examples/import-std-not-in-export-install-stderr.txt diff --git a/Tests/RunCMake/CXXModules/examples/import-std-not-in-export-install/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/import-std-not-in-export-install/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/import-std-not-in-export-install/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/import-std-not-in-export-install/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/import-std-not-in-export-install/main.cxx b/Tests/RunCMake/CXXModulesCompile/examples/import-std-not-in-export-install/main.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/import-std-not-in-export-install/main.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/import-std-not-in-export-install/main.cxx diff --git a/Tests/RunCMake/CXXModules/examples/import-std-not-in-export-install/test/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/import-std-not-in-export-install/test/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/import-std-not-in-export-install/test/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/import-std-not-in-export-install/test/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/import-std-not-in-export-install/uses-std.cxx b/Tests/RunCMake/CXXModulesCompile/examples/import-std-not-in-export-install/uses-std.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/import-std-not-in-export-install/uses-std.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/import-std-not-in-export-install/uses-std.cxx diff --git a/Tests/RunCMake/CXXModules/examples/import-std-stderr.txt b/Tests/RunCMake/CXXModulesCompile/examples/import-std-stderr.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/import-std-stderr.txt rename to Tests/RunCMake/CXXModulesCompile/examples/import-std-stderr.txt diff --git a/Tests/RunCMake/CXXModules/examples/import-std-transitive-not-in-export-build-stderr.txt b/Tests/RunCMake/CXXModulesCompile/examples/import-std-transitive-not-in-export-build-stderr.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/import-std-transitive-not-in-export-build-stderr.txt rename to Tests/RunCMake/CXXModulesCompile/examples/import-std-transitive-not-in-export-build-stderr.txt diff --git a/Tests/RunCMake/CXXModules/examples/import-std-transitive-not-in-export-install-stderr.txt b/Tests/RunCMake/CXXModulesCompile/examples/import-std-transitive-not-in-export-install-stderr.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/import-std-transitive-not-in-export-install-stderr.txt rename to Tests/RunCMake/CXXModulesCompile/examples/import-std-transitive-not-in-export-install-stderr.txt diff --git a/Tests/RunCMake/CXXModules/examples/import-std-transitive/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/import-std-transitive/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/import-std-transitive/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/import-std-transitive/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/import-std-transitive/main.cxx b/Tests/RunCMake/CXXModulesCompile/examples/import-std-transitive/main.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/import-std-transitive/main.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/import-std-transitive/main.cxx diff --git a/Tests/RunCMake/CXXModules/examples/import-std/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/import-std/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/import-std/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/import-std/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/import-std/main.cxx b/Tests/RunCMake/CXXModulesCompile/examples/import-std/main.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/import-std/main.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/import-std/main.cxx diff --git a/Tests/RunCMake/CXXModules/examples/install-bmi-and-interfaces/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/install-bmi-and-interfaces/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/install-bmi-and-interfaces/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/install-bmi-and-interfaces/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/install-bmi-and-interfaces/check-for-bmi.cmake b/Tests/RunCMake/CXXModulesCompile/examples/install-bmi-and-interfaces/check-for-bmi.cmake similarity index 100% rename from Tests/RunCMake/CXXModules/examples/install-bmi-and-interfaces/check-for-bmi.cmake rename to Tests/RunCMake/CXXModulesCompile/examples/install-bmi-and-interfaces/check-for-bmi.cmake diff --git a/Tests/RunCMake/CXXModules/examples/install-bmi-and-interfaces/importable.cxx b/Tests/RunCMake/CXXModulesCompile/examples/install-bmi-and-interfaces/importable.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/install-bmi-and-interfaces/importable.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/install-bmi-and-interfaces/importable.cxx diff --git a/Tests/RunCMake/CXXModules/examples/install-bmi/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/install-bmi/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/install-bmi/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/install-bmi/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/install-bmi/check-for-bmi.cmake b/Tests/RunCMake/CXXModulesCompile/examples/install-bmi/check-for-bmi.cmake similarity index 100% rename from Tests/RunCMake/CXXModules/examples/install-bmi/check-for-bmi.cmake rename to Tests/RunCMake/CXXModulesCompile/examples/install-bmi/check-for-bmi.cmake diff --git a/Tests/RunCMake/CXXModules/examples/install-bmi/importable.cxx b/Tests/RunCMake/CXXModulesCompile/examples/install-bmi/importable.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/install-bmi/importable.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/install-bmi/importable.cxx diff --git a/Tests/RunCMake/CXXModules/examples/internal-partitions/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/internal-partitions/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/internal-partitions/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/internal-partitions/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/internal-partitions/importable.cxx b/Tests/RunCMake/CXXModulesCompile/examples/internal-partitions/importable.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/internal-partitions/importable.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/internal-partitions/importable.cxx diff --git a/Tests/RunCMake/CXXModules/examples/internal-partitions/internal.cxx b/Tests/RunCMake/CXXModulesCompile/examples/internal-partitions/internal.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/internal-partitions/internal.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/internal-partitions/internal.cxx diff --git a/Tests/RunCMake/CXXModules/examples/internal-partitions/main.cxx b/Tests/RunCMake/CXXModulesCompile/examples/internal-partitions/main.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/internal-partitions/main.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/internal-partitions/main.cxx diff --git a/Tests/RunCMake/CXXModules/examples/internal-partitions/partition.cxx b/Tests/RunCMake/CXXModulesCompile/examples/internal-partitions/partition.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/internal-partitions/partition.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/internal-partitions/partition.cxx diff --git a/Tests/RunCMake/CXXModules/examples/library/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/library/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/library/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/library/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/library/importable.cxx b/Tests/RunCMake/CXXModulesCompile/examples/library/importable.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/library/importable.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/library/importable.cxx diff --git a/Tests/RunCMake/CXXModules/examples/library/main.cxx b/Tests/RunCMake/CXXModulesCompile/examples/library/main.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/library/main.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/library/main.cxx diff --git a/Tests/RunCMake/CXXModules/examples/ninja-cmp0154-build-check.cmake b/Tests/RunCMake/CXXModulesCompile/examples/ninja-cmp0154-build-check.cmake similarity index 100% rename from Tests/RunCMake/CXXModules/examples/ninja-cmp0154-build-check.cmake rename to Tests/RunCMake/CXXModulesCompile/examples/ninja-cmp0154-build-check.cmake diff --git a/Tests/RunCMake/CXXModules/examples/ninja-cmp0154/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/ninja-cmp0154/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/ninja-cmp0154/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/ninja-cmp0154/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/ninja-cmp0154/importable.cxx.in b/Tests/RunCMake/CXXModulesCompile/examples/ninja-cmp0154/importable.cxx.in similarity index 100% rename from Tests/RunCMake/CXXModules/examples/ninja-cmp0154/importable.cxx.in rename to Tests/RunCMake/CXXModulesCompile/examples/ninja-cmp0154/importable.cxx.in diff --git a/Tests/RunCMake/CXXModules/examples/ninja-cmp0154/main.cxx b/Tests/RunCMake/CXXModulesCompile/examples/ninja-cmp0154/main.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/ninja-cmp0154/main.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/ninja-cmp0154/main.cxx diff --git a/Tests/RunCMake/CXXModules/examples/ninja-cmp0154/unrelated.cxx b/Tests/RunCMake/CXXModulesCompile/examples/ninja-cmp0154/unrelated.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/ninja-cmp0154/unrelated.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/ninja-cmp0154/unrelated.cxx diff --git a/Tests/RunCMake/CXXModules/examples/non-trivial-collation-order-randomized/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order-randomized/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/non-trivial-collation-order-randomized/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order-randomized/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/main.cxx b/Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/main.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/main.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/main.cxx diff --git a/Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/module_level/mod1.cxx b/Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/module_level/mod1.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/module_level/mod1.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/module_level/mod1.cxx diff --git a/Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/module_level/mod2.cxx b/Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/module_level/mod2.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/module_level/mod2.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/module_level/mod2.cxx diff --git a/Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/module_level/mod3.cxx b/Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/module_level/mod3.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/module_level/mod3.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/module_level/mod3.cxx diff --git a/Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/module_level/mod4.cxx b/Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/module_level/mod4.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/module_level/mod4.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/module_level/mod4.cxx diff --git a/Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/module_level/mod5.cxx b/Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/module_level/mod5.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/module_level/mod5.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/module_level/mod5.cxx diff --git a/Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/module_level/mod6.cxx b/Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/module_level/mod6.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/module_level/mod6.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/module_level/mod6.cxx diff --git a/Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/module_level/mod7.cxx b/Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/module_level/mod7.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/module_level/mod7.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/module_level/mod7.cxx diff --git a/Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/partition_level/impl-non-partition.cxx b/Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/partition_level/impl-non-partition.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/partition_level/impl-non-partition.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/partition_level/impl-non-partition.cxx diff --git a/Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/partition_level/impl1.cxx b/Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/partition_level/impl1.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/partition_level/impl1.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/partition_level/impl1.cxx diff --git a/Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/partition_level/impl2.cxx b/Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/partition_level/impl2.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/partition_level/impl2.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/partition_level/impl2.cxx diff --git a/Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/partition_level/impl3.cxx b/Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/partition_level/impl3.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/partition_level/impl3.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/partition_level/impl3.cxx diff --git a/Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/partition_level/impl4.cxx b/Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/partition_level/impl4.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/partition_level/impl4.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/partition_level/impl4.cxx diff --git a/Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/partition_level/impl5.cxx b/Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/partition_level/impl5.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/partition_level/impl5.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/partition_level/impl5.cxx diff --git a/Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/partition_level/impl6.cxx b/Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/partition_level/impl6.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/partition_level/impl6.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/partition_level/impl6.cxx diff --git a/Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/partition_level/impl7.cxx b/Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/partition_level/impl7.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/partition_level/impl7.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/partition_level/impl7.cxx diff --git a/Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/partition_level/intf1.cxx b/Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/partition_level/intf1.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/partition_level/intf1.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/partition_level/intf1.cxx diff --git a/Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/partition_level/intf2.cxx b/Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/partition_level/intf2.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/partition_level/intf2.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/partition_level/intf2.cxx diff --git a/Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/partition_level/intf3.cxx b/Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/partition_level/intf3.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/partition_level/intf3.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/partition_level/intf3.cxx diff --git a/Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/partition_level/intf4.cxx b/Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/partition_level/intf4.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/partition_level/intf4.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/partition_level/intf4.cxx diff --git a/Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/partition_level/intf5.cxx b/Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/partition_level/intf5.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/partition_level/intf5.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/partition_level/intf5.cxx diff --git a/Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/partition_level/intf6.cxx b/Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/partition_level/intf6.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/partition_level/intf6.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/partition_level/intf6.cxx diff --git a/Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/partition_level/intf7.cxx b/Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/partition_level/intf7.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/partition_level/intf7.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/partition_level/intf7.cxx diff --git a/Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/partition_level/partition_level.cxx b/Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/partition_level/partition_level.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/partition_level/partition_level.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/partition_level/partition_level.cxx diff --git a/Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/target_level/target1.cxx b/Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/target_level/target1.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/target_level/target1.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/target_level/target1.cxx diff --git a/Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/target_level/target2.cxx b/Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/target_level/target2.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/target_level/target2.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/target_level/target2.cxx diff --git a/Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/target_level/target3.cxx b/Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/target_level/target3.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/target_level/target3.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/target_level/target3.cxx diff --git a/Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/target_level/target4.cxx b/Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/target_level/target4.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/target_level/target4.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/target_level/target4.cxx diff --git a/Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/target_level/target5.cxx b/Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/target_level/target5.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/target_level/target5.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/target_level/target5.cxx diff --git a/Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/target_level/target6.cxx b/Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/target_level/target6.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/target_level/target6.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/target_level/target6.cxx diff --git a/Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/target_level/target7.cxx b/Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/target_level/target7.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/non-trivial-collation-order/target_level/target7.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/non-trivial-collation-order/target_level/target7.cxx diff --git a/Tests/RunCMake/CXXModules/examples/object-library/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/object-library/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/object-library/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/object-library/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/object-library/importable.cxx b/Tests/RunCMake/CXXModulesCompile/examples/object-library/importable.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/object-library/importable.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/object-library/importable.cxx diff --git a/Tests/RunCMake/CXXModules/examples/object-library/main.cxx b/Tests/RunCMake/CXXModulesCompile/examples/object-library/main.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/object-library/main.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/object-library/main.cxx diff --git a/Tests/RunCMake/CXXModules/examples/partitions/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/partitions/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/partitions/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/partitions/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/partitions/importable.cxx b/Tests/RunCMake/CXXModulesCompile/examples/partitions/importable.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/partitions/importable.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/partitions/importable.cxx diff --git a/Tests/RunCMake/CXXModules/examples/partitions/main.cxx b/Tests/RunCMake/CXXModulesCompile/examples/partitions/main.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/partitions/main.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/partitions/main.cxx diff --git a/Tests/RunCMake/CXXModules/examples/partitions/partition.cxx b/Tests/RunCMake/CXXModulesCompile/examples/partitions/partition.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/partitions/partition.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/partitions/partition.cxx diff --git a/Tests/RunCMake/CXXModules/examples/public-req-private-build-result.txt b/Tests/RunCMake/CXXModulesCompile/examples/public-req-private-build-result.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/public-req-private-build-result.txt rename to Tests/RunCMake/CXXModulesCompile/examples/public-req-private-build-result.txt diff --git a/Tests/RunCMake/CXXModulesCompile/examples/public-req-private-build-stdout.txt b/Tests/RunCMake/CXXModulesCompile/examples/public-req-private-build-stdout.txt new file mode 100644 index 0000000000..cc4e29ea12 --- /dev/null +++ b/Tests/RunCMake/CXXModulesCompile/examples/public-req-private-build-stdout.txt @@ -0,0 +1 @@ +CMake Error: Public C\+\+ module source `.*/Tests/RunCMake/CXXModulesCompile/examples/public-req-private/pub\.cxx` requires the `priv` C\+\+ module which is provided by a private source diff --git a/Tests/RunCMake/CXXModules/examples/public-req-private/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/public-req-private/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/public-req-private/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/public-req-private/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/public-req-private/priv.cxx b/Tests/RunCMake/CXXModulesCompile/examples/public-req-private/priv.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/public-req-private/priv.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/public-req-private/priv.cxx diff --git a/Tests/RunCMake/CXXModules/examples/public-req-private/pub.cxx b/Tests/RunCMake/CXXModulesCompile/examples/public-req-private/pub.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/public-req-private/pub.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/public-req-private/pub.cxx diff --git a/Tests/RunCMake/CXXModules/examples/req-private-other-target-build-result.txt b/Tests/RunCMake/CXXModulesCompile/examples/req-private-other-target-build-result.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/req-private-other-target-build-result.txt rename to Tests/RunCMake/CXXModulesCompile/examples/req-private-other-target-build-result.txt diff --git a/Tests/RunCMake/CXXModules/examples/req-private-other-target-build-stdout.txt b/Tests/RunCMake/CXXModulesCompile/examples/req-private-other-target-build-stdout.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/req-private-other-target-build-stdout.txt rename to Tests/RunCMake/CXXModulesCompile/examples/req-private-other-target-build-stdout.txt diff --git a/Tests/RunCMake/CXXModules/examples/req-private-other-target/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/req-private-other-target/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/req-private-other-target/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/req-private-other-target/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/req-private-other-target/lib.cxx b/Tests/RunCMake/CXXModulesCompile/examples/req-private-other-target/lib.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/req-private-other-target/lib.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/req-private-other-target/lib.cxx diff --git a/Tests/RunCMake/CXXModules/examples/req-private-other-target/main.cxx b/Tests/RunCMake/CXXModulesCompile/examples/req-private-other-target/main.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/req-private-other-target/main.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/req-private-other-target/main.cxx diff --git a/Tests/RunCMake/CXXModules/examples/req-private-other-target/priv.cxx b/Tests/RunCMake/CXXModulesCompile/examples/req-private-other-target/priv.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/req-private-other-target/priv.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/req-private-other-target/priv.cxx diff --git a/Tests/RunCMake/CXXModules/examples/same-src-name/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/same-src-name/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/same-src-name/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/same-src-name/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/same-src-name/a/same.cxx b/Tests/RunCMake/CXXModulesCompile/examples/same-src-name/a/same.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/same-src-name/a/same.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/same-src-name/a/same.cxx diff --git a/Tests/RunCMake/CXXModules/examples/same-src-name/b/same.cxx b/Tests/RunCMake/CXXModulesCompile/examples/same-src-name/b/same.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/same-src-name/b/same.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/same-src-name/b/same.cxx diff --git a/Tests/RunCMake/CXXModules/examples/same-src-name/main.cxx b/Tests/RunCMake/CXXModulesCompile/examples/same-src-name/main.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/same-src-name/main.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/same-src-name/main.cxx diff --git a/Tests/RunCMake/CXXModules/examples/scan-with-pch/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/scan-with-pch/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/scan-with-pch/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/scan-with-pch/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/scan-with-pch/main.cxx b/Tests/RunCMake/CXXModulesCompile/examples/scan-with-pch/main.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/scan-with-pch/main.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/scan-with-pch/main.cxx diff --git a/Tests/RunCMake/CXXModules/examples/scan-with-pch/pch.h b/Tests/RunCMake/CXXModulesCompile/examples/scan-with-pch/pch.h similarity index 100% rename from Tests/RunCMake/CXXModules/examples/scan-with-pch/pch.h rename to Tests/RunCMake/CXXModulesCompile/examples/scan-with-pch/pch.h diff --git a/Tests/RunCMake/CXXModules/examples/scan_properties/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/scan_properties/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/scan_properties/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/scan_properties/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/scan_properties/always_scan.cxx b/Tests/RunCMake/CXXModulesCompile/examples/scan_properties/always_scan.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/scan_properties/always_scan.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/scan_properties/always_scan.cxx diff --git a/Tests/RunCMake/CXXModules/examples/scan_properties/join.cxx b/Tests/RunCMake/CXXModulesCompile/examples/scan_properties/join.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/scan_properties/join.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/scan_properties/join.cxx diff --git a/Tests/RunCMake/CXXModules/examples/scan_properties/main.cxx b/Tests/RunCMake/CXXModulesCompile/examples/scan_properties/main.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/scan_properties/main.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/scan_properties/main.cxx diff --git a/Tests/RunCMake/CXXModules/examples/scan_properties/module.cxx b/Tests/RunCMake/CXXModulesCompile/examples/scan_properties/module.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/scan_properties/module.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/scan_properties/module.cxx diff --git a/Tests/RunCMake/CXXModules/examples/scan_properties/never_scan.ixx b/Tests/RunCMake/CXXModulesCompile/examples/scan_properties/never_scan.ixx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/scan_properties/never_scan.ixx rename to Tests/RunCMake/CXXModulesCompile/examples/scan_properties/never_scan.ixx diff --git a/Tests/RunCMake/CXXModules/examples/simple/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/simple/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/simple/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/simple/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/simple/importable.cxx b/Tests/RunCMake/CXXModulesCompile/examples/simple/importable.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/simple/importable.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/simple/importable.cxx diff --git a/Tests/RunCMake/CXXModules/examples/simple/main.cxx b/Tests/RunCMake/CXXModulesCompile/examples/simple/main.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/simple/main.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/simple/main.cxx diff --git a/Tests/RunCMake/CXXModules/examples/target-objects/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/target-objects/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/target-objects/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/target-objects/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/target-objects/importable.cxx b/Tests/RunCMake/CXXModulesCompile/examples/target-objects/importable.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/target-objects/importable.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/target-objects/importable.cxx diff --git a/Tests/RunCMake/CXXModules/examples/target-objects/main.cxx b/Tests/RunCMake/CXXModulesCompile/examples/target-objects/main.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/target-objects/main.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/target-objects/main.cxx diff --git a/Tests/RunCMake/CXXModules/examples/try-compile/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/try-compile/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/try-compile/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/try-compile/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/try-compile/importable.cxx b/Tests/RunCMake/CXXModulesCompile/examples/try-compile/importable.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/try-compile/importable.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/try-compile/importable.cxx diff --git a/Tests/RunCMake/CXXModules/examples/try-compile/use_importable.cxx b/Tests/RunCMake/CXXModulesCompile/examples/try-compile/use_importable.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/try-compile/use_importable.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/try-compile/use_importable.cxx diff --git a/Tests/RunCMake/CXXModules/examples/try-run/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/try-run/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/try-run/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/try-run/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/try-run/importable.cxx b/Tests/RunCMake/CXXModulesCompile/examples/try-run/importable.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/try-run/importable.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/try-run/importable.cxx diff --git a/Tests/RunCMake/CXXModules/examples/try-run/main.cxx b/Tests/RunCMake/CXXModulesCompile/examples/try-run/main.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/try-run/main.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/try-run/main.cxx diff --git a/Tests/RunCMake/CXXModules/examples/unity-build/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/unity-build/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/unity-build/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/unity-build/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/unity-build/importable.cxx b/Tests/RunCMake/CXXModulesCompile/examples/unity-build/importable.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/unity-build/importable.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/unity-build/importable.cxx diff --git a/Tests/RunCMake/CXXModules/examples/unity-build/main.cxx b/Tests/RunCMake/CXXModulesCompile/examples/unity-build/main.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/unity-build/main.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/unity-build/main.cxx diff --git a/Tests/RunCMake/CXXModules/examples/unity-build/unity.h b/Tests/RunCMake/CXXModulesCompile/examples/unity-build/unity.h similarity index 100% rename from Tests/RunCMake/CXXModules/examples/unity-build/unity.h rename to Tests/RunCMake/CXXModulesCompile/examples/unity-build/unity.h diff --git a/Tests/RunCMake/CXXModules/examples/unity-build/unity1.cxx b/Tests/RunCMake/CXXModulesCompile/examples/unity-build/unity1.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/unity-build/unity1.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/unity-build/unity1.cxx diff --git a/Tests/RunCMake/CXXModules/examples/unity-build/unity2.cxx b/Tests/RunCMake/CXXModulesCompile/examples/unity-build/unity2.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/unity-build/unity2.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/unity-build/unity2.cxx diff --git a/Tests/RunCMake/CXXModules/examples/vs-without-flags/CMakeLists.txt b/Tests/RunCMake/CXXModulesCompile/examples/vs-without-flags/CMakeLists.txt similarity index 100% rename from Tests/RunCMake/CXXModules/examples/vs-without-flags/CMakeLists.txt rename to Tests/RunCMake/CXXModulesCompile/examples/vs-without-flags/CMakeLists.txt diff --git a/Tests/RunCMake/CXXModules/examples/vs-without-flags/main.cxx b/Tests/RunCMake/CXXModulesCompile/examples/vs-without-flags/main.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/vs-without-flags/main.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/vs-without-flags/main.cxx diff --git a/Tests/RunCMake/CXXModules/examples/vs-without-flags/module.cxx b/Tests/RunCMake/CXXModulesCompile/examples/vs-without-flags/module.cxx similarity index 100% rename from Tests/RunCMake/CXXModules/examples/vs-without-flags/module.cxx rename to Tests/RunCMake/CXXModulesCompile/examples/vs-without-flags/module.cxx