diff options
| author | ruki <[email protected]> | 2022-08-09 22:58:25 +0800 |
|---|---|---|
| committer | ruki <[email protected]> | 2022-08-09 22:58:25 +0800 |
| commit | ebaa26b0153d68a0f8cee6e135793fd079cca5f4 (patch) | |
| tree | 54ec56b83d00b60d484a8aa57a048df9bb3117c4 /tests/projects/c++ | |
| parent | d025377baf093a035e11fccc68309a49ae6da471 (diff) | |
improve test
Diffstat (limited to 'tests/projects/c++')
| -rw-r--r-- | tests/projects/c++/modules/class/test.lua | 23 | ||||
| -rw-r--r-- | tests/projects/c++/modules/cpp_with_moduledeps/test.lua | 23 | ||||
| -rw-r--r-- | tests/projects/c++/modules/dependence/CMakeLists.txt | 43 | ||||
| -rw-r--r-- | tests/projects/c++/modules/dependence/test.lua | 23 | ||||
| -rw-r--r-- | tests/projects/c++/modules/dependence2/test.lua | 23 | ||||
| -rw-r--r-- | tests/projects/c++/modules/hello with spaces/test.lua | 23 | ||||
| -rw-r--r-- | tests/projects/c++/modules/hello/test.lua | 23 | ||||
| -rw-r--r-- | tests/projects/c++/modules/impl_unit/test.lua | 23 | ||||
| -rw-r--r-- | tests/projects/c++/modules/inline_and_template/test.lua | 23 | ||||
| -rw-r--r-- | tests/projects/c++/modules/staticlib/test.lua | 23 | ||||
| -rw-r--r-- | tests/projects/c++/modules/submodules/test.lua | 23 | ||||
| -rw-r--r-- | tests/projects/c++/modules/submodules2/test.lua | 23 | ||||
| -rw-r--r-- | tests/projects/c++/modules/test_base.lua | 21 |
13 files changed, 75 insertions, 242 deletions
diff --git a/tests/projects/c++/modules/class/test.lua b/tests/projects/c++/modules/class/test.lua index b2cc5b3da..7717f8049 100644 --- a/tests/projects/c++/modules/class/test.lua +++ b/tests/projects/c++/modules/class/test.lua @@ -1,22 +1 @@ -import("lib.detect.find_tool") -import("core.base.semver") - -function main(t) - local test = false - if is_subhost("windows") then - test = true - elseif is_host("linux") then - local gcc = find_tool("gcc", {version = true}) - if gcc and gcc.version and semver.compare(gcc.version, "11.0") >= 0 then - test = true - end - elseif is_host("macosx") then - local clang = find_tool("clang", {version = true}) - if clang and clang.version and semver.compare(clang.version, "14.0") >= 0 then - test = true - end - end - if test then - os.exec("xmake") - end -end +inherit(".test_base") diff --git a/tests/projects/c++/modules/cpp_with_moduledeps/test.lua b/tests/projects/c++/modules/cpp_with_moduledeps/test.lua index b2cc5b3da..7717f8049 100644 --- a/tests/projects/c++/modules/cpp_with_moduledeps/test.lua +++ b/tests/projects/c++/modules/cpp_with_moduledeps/test.lua @@ -1,22 +1 @@ -import("lib.detect.find_tool") -import("core.base.semver") - -function main(t) - local test = false - if is_subhost("windows") then - test = true - elseif is_host("linux") then - local gcc = find_tool("gcc", {version = true}) - if gcc and gcc.version and semver.compare(gcc.version, "11.0") >= 0 then - test = true - end - elseif is_host("macosx") then - local clang = find_tool("clang", {version = true}) - if clang and clang.version and semver.compare(clang.version, "14.0") >= 0 then - test = true - end - end - if test then - os.exec("xmake") - end -end +inherit(".test_base") diff --git a/tests/projects/c++/modules/dependence/CMakeLists.txt b/tests/projects/c++/modules/dependence/CMakeLists.txt new file mode 100644 index 000000000..19eb7793a --- /dev/null +++ b/tests/projects/c++/modules/dependence/CMakeLists.txt @@ -0,0 +1,43 @@ +# this is the build file for project +# it is autogenerated by the xmake build system. +# do not edit by hand. + +# project +cmake_minimum_required(VERSION 3.15.0) +cmake_policy(SET CMP0091 NEW) +project(dependence LANGUAGES CXX C) + +# target +add_executable(dependence "") +set_target_properties(dependence PROPERTIES OUTPUT_NAME "dependence") +set_target_properties(dependence PROPERTIES RUNTIME_OUTPUT_DIRECTORY "${CMAKE_SOURCE_DIR}/build/macosx/x86_64/release") +target_compile_options(dependence PRIVATE + $<$<COMPILE_LANGUAGE:C>:-m64> + $<$<COMPILE_LANGUAGE:CXX>:-m64> + $<$<COMPILE_LANGUAGE:C>:-isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.3.sdk> + $<$<COMPILE_LANGUAGE:CXX>:-isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.3.sdk> + $<$<COMPILE_LANGUAGE:CXX>:-fmodules> + $<$<COMPILE_LANGUAGE:CXX>:-fbuiltin-module-map> + $<$<COMPILE_LANGUAGE:CXX>:-fimplicit-modules> + $<$<COMPILE_LANGUAGE:CXX>:-fno-implicit-module-maps> +) +target_compile_features(dependence PRIVATE cxx_std_20) +if(MSVC) + set_property(TARGET dependence PROPERTY + MSVC_RUNTIME_LIBRARY "MultiThreaded$<$<CONFIG:Debug>:Debug>") +endif() +target_link_options(dependence PRIVATE + -m64 + -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.3.sdk +) +target_sources(dependence PRIVATE + src/hello_impl.cpp + src/mod_impl.cpp + src/main.cpp + src/hello_impl.cpp + src/mod_impl.cpp + src/main.cpp + src/mod.mpp + src/hello.mpp +) + diff --git a/tests/projects/c++/modules/dependence/test.lua b/tests/projects/c++/modules/dependence/test.lua index b2cc5b3da..7717f8049 100644 --- a/tests/projects/c++/modules/dependence/test.lua +++ b/tests/projects/c++/modules/dependence/test.lua @@ -1,22 +1 @@ -import("lib.detect.find_tool") -import("core.base.semver") - -function main(t) - local test = false - if is_subhost("windows") then - test = true - elseif is_host("linux") then - local gcc = find_tool("gcc", {version = true}) - if gcc and gcc.version and semver.compare(gcc.version, "11.0") >= 0 then - test = true - end - elseif is_host("macosx") then - local clang = find_tool("clang", {version = true}) - if clang and clang.version and semver.compare(clang.version, "14.0") >= 0 then - test = true - end - end - if test then - os.exec("xmake") - end -end +inherit(".test_base") diff --git a/tests/projects/c++/modules/dependence2/test.lua b/tests/projects/c++/modules/dependence2/test.lua index b2cc5b3da..7717f8049 100644 --- a/tests/projects/c++/modules/dependence2/test.lua +++ b/tests/projects/c++/modules/dependence2/test.lua @@ -1,22 +1 @@ -import("lib.detect.find_tool") -import("core.base.semver") - -function main(t) - local test = false - if is_subhost("windows") then - test = true - elseif is_host("linux") then - local gcc = find_tool("gcc", {version = true}) - if gcc and gcc.version and semver.compare(gcc.version, "11.0") >= 0 then - test = true - end - elseif is_host("macosx") then - local clang = find_tool("clang", {version = true}) - if clang and clang.version and semver.compare(clang.version, "14.0") >= 0 then - test = true - end - end - if test then - os.exec("xmake") - end -end +inherit(".test_base") diff --git a/tests/projects/c++/modules/hello with spaces/test.lua b/tests/projects/c++/modules/hello with spaces/test.lua index b2cc5b3da..7717f8049 100644 --- a/tests/projects/c++/modules/hello with spaces/test.lua +++ b/tests/projects/c++/modules/hello with spaces/test.lua @@ -1,22 +1 @@ -import("lib.detect.find_tool") -import("core.base.semver") - -function main(t) - local test = false - if is_subhost("windows") then - test = true - elseif is_host("linux") then - local gcc = find_tool("gcc", {version = true}) - if gcc and gcc.version and semver.compare(gcc.version, "11.0") >= 0 then - test = true - end - elseif is_host("macosx") then - local clang = find_tool("clang", {version = true}) - if clang and clang.version and semver.compare(clang.version, "14.0") >= 0 then - test = true - end - end - if test then - os.exec("xmake") - end -end +inherit(".test_base") diff --git a/tests/projects/c++/modules/hello/test.lua b/tests/projects/c++/modules/hello/test.lua index b2cc5b3da..7717f8049 100644 --- a/tests/projects/c++/modules/hello/test.lua +++ b/tests/projects/c++/modules/hello/test.lua @@ -1,22 +1 @@ -import("lib.detect.find_tool") -import("core.base.semver") - -function main(t) - local test = false - if is_subhost("windows") then - test = true - elseif is_host("linux") then - local gcc = find_tool("gcc", {version = true}) - if gcc and gcc.version and semver.compare(gcc.version, "11.0") >= 0 then - test = true - end - elseif is_host("macosx") then - local clang = find_tool("clang", {version = true}) - if clang and clang.version and semver.compare(clang.version, "14.0") >= 0 then - test = true - end - end - if test then - os.exec("xmake") - end -end +inherit(".test_base") diff --git a/tests/projects/c++/modules/impl_unit/test.lua b/tests/projects/c++/modules/impl_unit/test.lua index b2cc5b3da..7717f8049 100644 --- a/tests/projects/c++/modules/impl_unit/test.lua +++ b/tests/projects/c++/modules/impl_unit/test.lua @@ -1,22 +1 @@ -import("lib.detect.find_tool") -import("core.base.semver") - -function main(t) - local test = false - if is_subhost("windows") then - test = true - elseif is_host("linux") then - local gcc = find_tool("gcc", {version = true}) - if gcc and gcc.version and semver.compare(gcc.version, "11.0") >= 0 then - test = true - end - elseif is_host("macosx") then - local clang = find_tool("clang", {version = true}) - if clang and clang.version and semver.compare(clang.version, "14.0") >= 0 then - test = true - end - end - if test then - os.exec("xmake") - end -end +inherit(".test_base") diff --git a/tests/projects/c++/modules/inline_and_template/test.lua b/tests/projects/c++/modules/inline_and_template/test.lua index b2cc5b3da..7717f8049 100644 --- a/tests/projects/c++/modules/inline_and_template/test.lua +++ b/tests/projects/c++/modules/inline_and_template/test.lua @@ -1,22 +1 @@ -import("lib.detect.find_tool") -import("core.base.semver") - -function main(t) - local test = false - if is_subhost("windows") then - test = true - elseif is_host("linux") then - local gcc = find_tool("gcc", {version = true}) - if gcc and gcc.version and semver.compare(gcc.version, "11.0") >= 0 then - test = true - end - elseif is_host("macosx") then - local clang = find_tool("clang", {version = true}) - if clang and clang.version and semver.compare(clang.version, "14.0") >= 0 then - test = true - end - end - if test then - os.exec("xmake") - end -end +inherit(".test_base") diff --git a/tests/projects/c++/modules/staticlib/test.lua b/tests/projects/c++/modules/staticlib/test.lua index b2cc5b3da..7717f8049 100644 --- a/tests/projects/c++/modules/staticlib/test.lua +++ b/tests/projects/c++/modules/staticlib/test.lua @@ -1,22 +1 @@ -import("lib.detect.find_tool") -import("core.base.semver") - -function main(t) - local test = false - if is_subhost("windows") then - test = true - elseif is_host("linux") then - local gcc = find_tool("gcc", {version = true}) - if gcc and gcc.version and semver.compare(gcc.version, "11.0") >= 0 then - test = true - end - elseif is_host("macosx") then - local clang = find_tool("clang", {version = true}) - if clang and clang.version and semver.compare(clang.version, "14.0") >= 0 then - test = true - end - end - if test then - os.exec("xmake") - end -end +inherit(".test_base") diff --git a/tests/projects/c++/modules/submodules/test.lua b/tests/projects/c++/modules/submodules/test.lua index b2cc5b3da..7717f8049 100644 --- a/tests/projects/c++/modules/submodules/test.lua +++ b/tests/projects/c++/modules/submodules/test.lua @@ -1,22 +1 @@ -import("lib.detect.find_tool") -import("core.base.semver") - -function main(t) - local test = false - if is_subhost("windows") then - test = true - elseif is_host("linux") then - local gcc = find_tool("gcc", {version = true}) - if gcc and gcc.version and semver.compare(gcc.version, "11.0") >= 0 then - test = true - end - elseif is_host("macosx") then - local clang = find_tool("clang", {version = true}) - if clang and clang.version and semver.compare(clang.version, "14.0") >= 0 then - test = true - end - end - if test then - os.exec("xmake") - end -end +inherit(".test_base") diff --git a/tests/projects/c++/modules/submodules2/test.lua b/tests/projects/c++/modules/submodules2/test.lua index b2cc5b3da..7717f8049 100644 --- a/tests/projects/c++/modules/submodules2/test.lua +++ b/tests/projects/c++/modules/submodules2/test.lua @@ -1,22 +1 @@ -import("lib.detect.find_tool") -import("core.base.semver") - -function main(t) - local test = false - if is_subhost("windows") then - test = true - elseif is_host("linux") then - local gcc = find_tool("gcc", {version = true}) - if gcc and gcc.version and semver.compare(gcc.version, "11.0") >= 0 then - test = true - end - elseif is_host("macosx") then - local clang = find_tool("clang", {version = true}) - if clang and clang.version and semver.compare(clang.version, "14.0") >= 0 then - test = true - end - end - if test then - os.exec("xmake") - end -end +inherit(".test_base") diff --git a/tests/projects/c++/modules/test_base.lua b/tests/projects/c++/modules/test_base.lua new file mode 100644 index 000000000..68efbeaa0 --- /dev/null +++ b/tests/projects/c++/modules/test_base.lua @@ -0,0 +1,21 @@ +import("lib.detect.find_tool") +import("core.base.semver") + +function main(t) + if is_subhost("windows") then + os.exec("xmake f -c") + os.exec("xmake -r") + elseif is_host("linux") then + local gcc = find_tool("gcc", {version = true}) + if gcc and gcc.version and semver.compare(gcc.version, "11.0") >= 0 then + os.exec("xmake f -c") + os.exec("xmake -r") + end + local clang = find_tool("clang", {version = true}) + if clang and clang.version and semver.compare(clang.version, "14.0") >= 0 then + os.exec("xmake clean -a") + os.exec("xmake f --toolchain=clang -c") + os.exec("xmake -r") + end + end +end |
