summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorruki <[email protected]>2026-05-14 22:48:36 +0800
committerruki <[email protected]>2026-05-14 22:48:36 +0800
commitdbeb4d42a17cf6de1e6c52a7fc4c9453859f7b31 (patch)
tree674ef49e5b34d6a338253e4d4f06b90966a09f01
parentf4531fd69f74791d3f395b381ce21bc5acafba41 (diff)
add merge archive packages test
-rw-r--r--tests/projects/other/merge_archive/src/add.c3
-rw-r--r--tests/projects/other/merge_archive/src/mul.c3
-rw-r--r--tests/projects/other/merge_archive/src/sub.c3
-rw-r--r--tests/projects/other/merge_archive2/src/add.c4
-rw-r--r--tests/projects/other/merge_archive2/src/main.c17
-rw-r--r--tests/projects/other/merge_archive2/src/mul.c4
-rw-r--r--tests/projects/other/merge_archive2/src/sub.c4
-rw-r--r--tests/projects/other/merge_archive2/src/subdir/add.c4
-rw-r--r--tests/projects/other/merge_archive2/src/subdir/sub.c4
-rw-r--r--tests/projects/other/merge_archive2/xmake.lua21
-rw-r--r--tests/projects/other/merge_archive_packages/src/main.c8
-rw-r--r--tests/projects/other/merge_archive_packages/src/png.c5
-rw-r--r--tests/projects/other/merge_archive_packages/test.lua (renamed from tests/projects/other/merge_archive2/test.lua)0
-rw-r--r--tests/projects/other/merge_archive_packages/xmake.lua13
14 files changed, 29 insertions, 64 deletions
diff --git a/tests/projects/other/merge_archive/src/add.c b/tests/projects/other/merge_archive/src/add.c
index be1e084fc..59aab4983 100644
--- a/tests/projects/other/merge_archive/src/add.c
+++ b/tests/projects/other/merge_archive/src/add.c
@@ -1,4 +1,3 @@
-int add(int a, int b)
-{
+int add(int a, int b) {
return a + b;
}
diff --git a/tests/projects/other/merge_archive/src/mul.c b/tests/projects/other/merge_archive/src/mul.c
index c4292f9aa..0c01379d4 100644
--- a/tests/projects/other/merge_archive/src/mul.c
+++ b/tests/projects/other/merge_archive/src/mul.c
@@ -1,4 +1,3 @@
-int mul(int a, int b)
-{
+int mul(int a, int b) {
return a * b;
}
diff --git a/tests/projects/other/merge_archive/src/sub.c b/tests/projects/other/merge_archive/src/sub.c
index b151ec4bc..a6ffbba20 100644
--- a/tests/projects/other/merge_archive/src/sub.c
+++ b/tests/projects/other/merge_archive/src/sub.c
@@ -1,4 +1,3 @@
-int sub(int a, int b)
-{
+int sub(int a, int b) {
return a - b;
}
diff --git a/tests/projects/other/merge_archive2/src/add.c b/tests/projects/other/merge_archive2/src/add.c
deleted file mode 100644
index be1e084fc..000000000
--- a/tests/projects/other/merge_archive2/src/add.c
+++ /dev/null
@@ -1,4 +0,0 @@
-int add(int a, int b)
-{
- return a + b;
-}
diff --git a/tests/projects/other/merge_archive2/src/main.c b/tests/projects/other/merge_archive2/src/main.c
deleted file mode 100644
index 927c9173e..000000000
--- a/tests/projects/other/merge_archive2/src/main.c
+++ /dev/null
@@ -1,17 +0,0 @@
-#include <stdio.h>
-
-int add(int a, int b);
-int sub(int a, int b);
-int mul(int a, int b);
-int subdir_add(int a, int b);
-int subdir_sub(int a, int b);
-
-int main(int argc, char** argv)
-{
- printf("%d\n", add(1, 1));
- printf("%d\n", sub(1, 1));
- printf("%d\n", mul(1, 1));
- printf("%d\n", subdir_add(1, 1));
- printf("%d\n", subdir_sub(1, 1));
- return 0;
-}
diff --git a/tests/projects/other/merge_archive2/src/mul.c b/tests/projects/other/merge_archive2/src/mul.c
deleted file mode 100644
index c4292f9aa..000000000
--- a/tests/projects/other/merge_archive2/src/mul.c
+++ /dev/null
@@ -1,4 +0,0 @@
-int mul(int a, int b)
-{
- return a * b;
-}
diff --git a/tests/projects/other/merge_archive2/src/sub.c b/tests/projects/other/merge_archive2/src/sub.c
deleted file mode 100644
index b151ec4bc..000000000
--- a/tests/projects/other/merge_archive2/src/sub.c
+++ /dev/null
@@ -1,4 +0,0 @@
-int sub(int a, int b)
-{
- return a - b;
-}
diff --git a/tests/projects/other/merge_archive2/src/subdir/add.c b/tests/projects/other/merge_archive2/src/subdir/add.c
deleted file mode 100644
index 318ed98f8..000000000
--- a/tests/projects/other/merge_archive2/src/subdir/add.c
+++ /dev/null
@@ -1,4 +0,0 @@
-int subdir_add(int a, int b)
-{
- return a + b;
-}
diff --git a/tests/projects/other/merge_archive2/src/subdir/sub.c b/tests/projects/other/merge_archive2/src/subdir/sub.c
deleted file mode 100644
index 68c4d13ae..000000000
--- a/tests/projects/other/merge_archive2/src/subdir/sub.c
+++ /dev/null
@@ -1,4 +0,0 @@
-int subdir_sub(int a, int b)
-{
- return a - b;
-}
diff --git a/tests/projects/other/merge_archive2/xmake.lua b/tests/projects/other/merge_archive2/xmake.lua
deleted file mode 100644
index be1f45de0..000000000
--- a/tests/projects/other/merge_archive2/xmake.lua
+++ /dev/null
@@ -1,21 +0,0 @@
-add_rules("mode.debug", "mode.release")
-
-target("add")
- set_kind("static")
- add_files("src/add.c")
- add_files("src/subdir/add.c")
-
-target("sub")
- set_kind("static")
- add_files("src/sub.c")
- add_files("src/subdir/sub.c")
-
-target("mul")
- set_kind("static")
- add_deps("add", "sub")
- add_files("src/mul.c")
- set_policy("build.merge_archive", true)
-
-target("test")
- add_deps("mul")
- add_files("src/main.c")
diff --git a/tests/projects/other/merge_archive_packages/src/main.c b/tests/projects/other/merge_archive_packages/src/main.c
new file mode 100644
index 000000000..e2f6f2c31
--- /dev/null
+++ b/tests/projects/other/merge_archive_packages/src/main.c
@@ -0,0 +1,8 @@
+#include <stdio.h>
+
+extern char const* get_png_version();
+
+int main(void) {
+ printf("libpng version: %s\n", get_png_version());
+ return 0;
+}
diff --git a/tests/projects/other/merge_archive_packages/src/png.c b/tests/projects/other/merge_archive_packages/src/png.c
new file mode 100644
index 000000000..231ea6928
--- /dev/null
+++ b/tests/projects/other/merge_archive_packages/src/png.c
@@ -0,0 +1,5 @@
+#include "png.h"
+
+char const* get_png_version() {
+ return png_get_libpng_ver(NULL);
+}
diff --git a/tests/projects/other/merge_archive2/test.lua b/tests/projects/other/merge_archive_packages/test.lua
index 88594b1d5..88594b1d5 100644
--- a/tests/projects/other/merge_archive2/test.lua
+++ b/tests/projects/other/merge_archive_packages/test.lua
diff --git a/tests/projects/other/merge_archive_packages/xmake.lua b/tests/projects/other/merge_archive_packages/xmake.lua
new file mode 100644
index 000000000..f2f1d0aa9
--- /dev/null
+++ b/tests/projects/other/merge_archive_packages/xmake.lua
@@ -0,0 +1,13 @@
+add_rules("mode.debug", "mode.release")
+
+add_requires("libpng", {system = false})
+
+target("foo")
+ set_kind("static")
+ add_files("src/png.c")
+ add_packages("libpng")
+ set_policy("build.merge_archive", true)
+
+target("test")
+ add_files("src/main.c")
+ add_deps("foo")