summaryrefslogtreecommitdiff
path: root/tests/projects/xmake_cli/ide_integration/src
diff options
context:
space:
mode:
authorruki <[email protected]>2025-02-06 23:18:49 +0800
committerruki <[email protected]>2025-02-06 23:18:49 +0800
commit378ce254ca617f0d2772be7d7acd4ccc2428aef1 (patch)
tree9891afda469a25a21b8d5b7c3e795c7d071fc653 /tests/projects/xmake_cli/ide_integration/src
parent6eaa4760792b4edf26ad9dc271225cf7b83d7633 (diff)
add ide integration test
Diffstat (limited to 'tests/projects/xmake_cli/ide_integration/src')
-rw-r--r--tests/projects/xmake_cli/ide_integration/src/main.c30
1 files changed, 30 insertions, 0 deletions
diff --git a/tests/projects/xmake_cli/ide_integration/src/main.c b/tests/projects/xmake_cli/ide_integration/src/main.c
new file mode 100644
index 000000000..24e911fbe
--- /dev/null
+++ b/tests/projects/xmake_cli/ide_integration/src/main.c
@@ -0,0 +1,30 @@
+#include <xmake/xmake.h>
+
+static tb_bool_t load_scriptfile(xm_engine_ref_t engine, tb_char_t const* filepath, tb_char_t const* arg1) {
+ tb_char_t* argv[] = {"xmake"};
+ tb_char_t* taskargv[] = {"lua", "-D", (tb_char_t*)filepath, (tb_char_t*)arg1, tb_null};
+ return xm_engine_main(engine, 1, argv, taskargv) == 0;
+}
+
+static tb_void_t dump_targets(xm_engine_ref_t engine) {
+ tb_trace_i("------------------------- targets -------------------------");
+ load_scriptfile(engine, "assets/targets.lua", tb_null);
+}
+
+static tb_void_t dump_targetpath(xm_engine_ref_t engine) {
+ tb_trace_i("------------------------- targetpath -------------------------");
+ load_scriptfile(engine, "assets/targetpath.lua", "ide");
+}
+
+tb_int_t main(tb_int_t argc, tb_char_t** argv) {
+ if (xm_init()) {
+ xm_engine_ref_t engine = xm_engine_init("xmake", tb_null);
+ if (engine) {
+ dump_targets(engine);
+ dump_targetpath(engine);
+ xm_engine_exit(engine);
+ }
+ xm_exit();
+ }
+ return 0;
+}