summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorruki <[email protected]>2025-09-07 08:24:32 +0800
committerGitHub <[email protected]>2025-09-07 08:24:32 +0800
commitb0bcb8b825b7538ad3523ce5b2cf8f4328fce6b8 (patch)
tree4e9454166ef8d61f684b6672498a2fa106c1890f /tests
parent85c59645d59cfab5f61b5f75160b676621544890 (diff)
parentaa523879502d51a0f6d131c34825ed478cc59442 (diff)
Merge pull request #6779 from xmake-io/embeddirs
add #embed and embedirs support #6762
Diffstat (limited to 'tests')
-rw-r--r--tests/projects/c/embeddirs/.gitignore8
-rw-r--r--tests/projects/c/embeddirs/assets/message.txt1
-rw-r--r--tests/projects/c/embeddirs/src/main.c14
-rw-r--r--tests/projects/c/embeddirs/xmake.lua9
4 files changed, 32 insertions, 0 deletions
diff --git a/tests/projects/c/embeddirs/.gitignore b/tests/projects/c/embeddirs/.gitignore
new file mode 100644
index 000000000..152105761
--- /dev/null
+++ b/tests/projects/c/embeddirs/.gitignore
@@ -0,0 +1,8 @@
+# Xmake cache
+.xmake/
+build/
+
+# MacOS Cache
+.DS_Store
+
+
diff --git a/tests/projects/c/embeddirs/assets/message.txt b/tests/projects/c/embeddirs/assets/message.txt
new file mode 100644
index 000000000..d2e2629bf
--- /dev/null
+++ b/tests/projects/c/embeddirs/assets/message.txt
@@ -0,0 +1 @@
+Hello from an embedded C23 file!
diff --git a/tests/projects/c/embeddirs/src/main.c b/tests/projects/c/embeddirs/src/main.c
new file mode 100644
index 000000000..b5d55e8c1
--- /dev/null
+++ b/tests/projects/c/embeddirs/src/main.c
@@ -0,0 +1,14 @@
+#include <stdio.h>
+#include <string.h>
+
+static const unsigned char message_data[] = {
+#embed "message.txt"
+ , '\0'
+};
+
+int main(int argc, char** argv) {
+ printf("Embedded message: %s\n", (const char*)message_data);
+ printf("Size of embedded data (including null terminator): %zu bytes\n", sizeof(message_data));
+ printf("Length of embedded string: %zu characters\n", strlen((const char*)message_data));
+ return 0;
+}
diff --git a/tests/projects/c/embeddirs/xmake.lua b/tests/projects/c/embeddirs/xmake.lua
new file mode 100644
index 000000000..1363e3db9
--- /dev/null
+++ b/tests/projects/c/embeddirs/xmake.lua
@@ -0,0 +1,9 @@
+add_rules("mode.debug", "mode.release")
+
+set_languages("c23")
+
+target("embeddirs")
+ set_kind("binary")
+ add_files("src/*.c")
+ add_embeddirs("assets")
+