diff options
| author | ruki <[email protected]> | 2026-03-17 22:43:06 +0800 |
|---|---|---|
| committer | GitHub <[email protected]> | 2026-03-17 22:43:06 +0800 |
| commit | 42dec9486bb56c2f08db0c30f6b2829e1b02a1a7 (patch) | |
| tree | 7fcea3a58a9b9b0495747c255a209a81dae4bc86 /tests/projects/csharp/multiple_library | |
| parent | 1c5607aa0da666cd244af2cab5fc7280e30742f1 (diff) | |
| parent | 2134b93d3f87d8f4ea63e0c49b2075ba056995d9 (diff) | |
Merge pull request #7398 from xmake-io/csharp
Add csharp support
Diffstat (limited to 'tests/projects/csharp/multiple_library')
6 files changed, 56 insertions, 0 deletions
diff --git a/tests/projects/csharp/multiple_library/.gitignore b/tests/projects/csharp/multiple_library/.gitignore new file mode 100644 index 000000000..6b8d3af38 --- /dev/null +++ b/tests/projects/csharp/multiple_library/.gitignore @@ -0,0 +1,6 @@ +.xmake/ +build/ +bin/ +obj/ +vsxmake*/ +.vs/ diff --git a/tests/projects/csharp/multiple_library/src/libalpha/Alpha.cs b/tests/projects/csharp/multiple_library/src/libalpha/Alpha.cs new file mode 100644 index 000000000..a10ed6d73 --- /dev/null +++ b/tests/projects/csharp/multiple_library/src/libalpha/Alpha.cs @@ -0,0 +1,7 @@ +namespace LibAlpha; + +public static class Alpha { + public static string Message() { + return "alpha"; + } +} diff --git a/tests/projects/csharp/multiple_library/src/libbeta/Beta.cs b/tests/projects/csharp/multiple_library/src/libbeta/Beta.cs new file mode 100644 index 000000000..c96944dc5 --- /dev/null +++ b/tests/projects/csharp/multiple_library/src/libbeta/Beta.cs @@ -0,0 +1,9 @@ +using LibAlpha; + +namespace LibBeta; + +public static class Beta { + public static string Message() { + return Alpha.Message() + "+beta"; + } +} diff --git a/tests/projects/csharp/multiple_library/src/sample/Program.cs b/tests/projects/csharp/multiple_library/src/sample/Program.cs new file mode 100644 index 000000000..2292a8af9 --- /dev/null +++ b/tests/projects/csharp/multiple_library/src/sample/Program.cs @@ -0,0 +1,3 @@ +using LibBeta; + +Console.WriteLine(Beta.Message());
\ No newline at end of file diff --git a/tests/projects/csharp/multiple_library/test.lua b/tests/projects/csharp/multiple_library/test.lua new file mode 100644 index 000000000..d909316b7 --- /dev/null +++ b/tests/projects/csharp/multiple_library/test.lua @@ -0,0 +1,13 @@ +import("detect.sdks.find_dotnet") + +function test_build(t) + if is_subhost("msys") then + return t:skip("csharp not supported on msys") + end + local dotnet = find_dotnet() + if dotnet and dotnet.sdkver then + t:build() + else + return t:skip("dotnet sdk not found") + end +end diff --git a/tests/projects/csharp/multiple_library/xmake.lua b/tests/projects/csharp/multiple_library/xmake.lua new file mode 100644 index 000000000..db3f65811 --- /dev/null +++ b/tests/projects/csharp/multiple_library/xmake.lua @@ -0,0 +1,18 @@ +add_rules("mode.debug", "mode.release") + +target("libalpha") + set_kind("shared") + add_rules("csharp") + add_files("src/libalpha/*.cs") + +target("libbeta") + set_kind("shared") + add_rules("csharp") + add_deps("libalpha") + add_files("src/libbeta/*.cs") + +target("sample") + set_kind("binary") + add_rules("csharp") + add_deps("libbeta") + add_files("src/sample/*.cs") |
