diff options
author | Brad King <brad.king@kitware.com> | 2024-01-17 14:35:23 (GMT) |
---|---|---|
committer | Kitware Robot <kwrobot@kitware.com> | 2024-01-17 14:36:45 (GMT) |
commit | 5394d79b35b2dab36af49e8a702ed392d73bcf47 (patch) | |
tree | 6647ab478ba5a5bfa315d75c2ae1460c72cb545e /Tests/RunCMake/CXXModules | |
parent | 6bd77281ea2c14b116461feeab356e40e69de280 (diff) | |
parent | c09f8d27cd8aa9d44993cf39a663ca331017ed75 (diff) | |
download | CMake-5394d79b35b2dab36af49e8a702ed392d73bcf47.zip CMake-5394d79b35b2dab36af49e8a702ed392d73bcf47.tar.gz CMake-5394d79b35b2dab36af49e8a702ed392d73bcf47.tar.bz2 |
Merge topic 'cxxmodules-obj-lib'
c09f8d27cd cxxmodules: compute link information for C++ module-consuming targets
Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Reviewed-by: Ben Boeckel <ben.boeckel@kitware.com>
Merge-request: !9154
Diffstat (limited to 'Tests/RunCMake/CXXModules')
4 files changed, 20 insertions, 0 deletions
diff --git a/Tests/RunCMake/CXXModules/RunCMakeTest.cmake b/Tests/RunCMake/CXXModules/RunCMakeTest.cmake index abede44..b0571ed 100644 --- a/Tests/RunCMake/CXXModules/RunCMakeTest.cmake +++ b/Tests/RunCMake/CXXModules/RunCMakeTest.cmake @@ -180,6 +180,7 @@ if ("named" IN_LIST CMake_TEST_MODULE_COMPILATION) 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) diff --git a/Tests/RunCMake/CXXModules/examples/import-from-object/CMakeLists.txt b/Tests/RunCMake/CXXModules/examples/import-from-object/CMakeLists.txt new file mode 100644 index 0000000..e9ec809 --- /dev/null +++ b/Tests/RunCMake/CXXModules/examples/import-from-object/CMakeLists.txt @@ -0,0 +1,16 @@ +cmake_minimum_required(VERSION 3.24...3.28) +project(cxx_modules_import_from_object CXX) + +include("${CMAKE_SOURCE_DIR}/../cxx-modules-rules.cmake") + +set(CMAKE_CXX_STANDARD 20) + +add_library(a STATIC) +target_sources(a + PUBLIC + FILE_SET CXX_MODULES + FILES + object-a.cxx) + +add_library(b OBJECT object-b.cxx) +target_link_libraries(b PRIVATE a) diff --git a/Tests/RunCMake/CXXModules/examples/import-from-object/object-a.cxx b/Tests/RunCMake/CXXModules/examples/import-from-object/object-a.cxx new file mode 100644 index 0000000..9634a8f --- /dev/null +++ b/Tests/RunCMake/CXXModules/examples/import-from-object/object-a.cxx @@ -0,0 +1,2 @@ +module; +export module a; diff --git a/Tests/RunCMake/CXXModules/examples/import-from-object/object-b.cxx b/Tests/RunCMake/CXXModules/examples/import-from-object/object-b.cxx new file mode 100644 index 0000000..3b2a80c --- /dev/null +++ b/Tests/RunCMake/CXXModules/examples/import-from-object/object-b.cxx @@ -0,0 +1 @@ +import a; |