diff options
3 files changed, 38 insertions, 0 deletions
diff --git a/tests/projects/c++/modules/multiple_runtimes/src/main.cpp b/tests/projects/c++/modules/multiple_runtimes/src/main.cpp new file mode 100644 index 000000000..b25b474a6 --- /dev/null +++ b/tests/projects/c++/modules/multiple_runtimes/src/main.cpp @@ -0,0 +1,6 @@ +import std; + +int main() { + std::println("Hello world"); + return 0; +} diff --git a/tests/projects/c++/modules/multiple_runtimes/test.lua b/tests/projects/c++/modules/multiple_runtimes/test.lua new file mode 100644 index 000000000..e77adc4ae --- /dev/null +++ b/tests/projects/c++/modules/multiple_runtimes/test.lua @@ -0,0 +1 @@ +inherit(".test_stdmodules") diff --git a/tests/projects/c++/modules/multiple_runtimes/xmake.lua b/tests/projects/c++/modules/multiple_runtimes/xmake.lua new file mode 100644 index 000000000..6fc363a95 --- /dev/null +++ b/tests/projects/c++/modules/multiple_runtimes/xmake.lua @@ -0,0 +1,31 @@ +add_rules("mode.debug", "mode.release") +add_files("src/*.cpp") +set_languages("c++23") +set_encodings("utf-8") + +if not is_plat("windows") then -- remove when std module is supported for libc++ on windows + target("llvm") + set_kind("binary") + set_toolchains("clang") + set_runtimes("c++_shared") + set_policy("build.c++.modules", true) + add_files("src/main.cpp") +end + +if is_plat("linux") or is_plat("mingw") then + target("gnu") + set_kind("binary") + set_toolchains("gcc") + set_runtimes("stdc++_shared") + set_policy("build.c++.modules", true) + set_policy("build.c++.modules.gcc.cxx11abi", true) + add_files("src/main.cpp") +end + +if is_plat("windows") then + target("msvc") + set_kind("binary") + set_toolchains("msvc") + set_policy("build.c++.modules", true) + add_files("src/main.cpp") +end |
