summaryrefslogtreecommitdiff
path: root/Peak/build.c
diff options
context:
space:
mode:
authorVasco <[email protected]>2026-08-24 00:56:24 +0100
committerVasco <[email protected]>2026-08-24 00:56:24 +0100
commit5dc2716abd43166cd65133625f408ad36a6623b3 (patch)
tree19d89b838206b6bb11cc0b9f88311d855999d447 /Peak/build.c
parentdc96fcd771bea09d726a760266739906e95c09a6 (diff)
Peak 0.4.0 and Draw
Diffstat (limited to 'Peak/build.c')
-rw-r--r--Peak/build.c39
1 files changed, 39 insertions, 0 deletions
diff --git a/Peak/build.c b/Peak/build.c
new file mode 100644
index 0000000..c3b20b9
--- /dev/null
+++ b/Peak/build.c
@@ -0,0 +1,39 @@
+#define POOF_IMPLEMENTATION
+#include "../Poof/poof.h"
+
+int main(int argc, char **argv) {
+ POOF_GO_REBUILD_URSELF(argc, argv);
+
+ Poof_Cmd cmd = {0};
+ poof_cmd_append(&cmd, "python", "../bundle_header.py", "src/peak_header.h");
+ if (!poof_cmd_run(&cmd)) return 1;
+
+ poof_copy_file("src/peak_header.h.out", "peak.h");
+
+ Poof_CC cc = {0};
+ poof_cc_init(&cc, POOF_CC_GCC | POOF_CC_CLANG, POOF_TARGET_HOST);
+ cc.debug_mode = true;
+ cc.optimization = POOF_O0;
+ cc.output = "demos/demo";
+ poof_cc_append(&cc.inputs, "demos/demo.c");
+ poof_cc_append(&cc.extra_flags, "-std=c99", "-Wall", "-Wno-deprecated-declarations");
+ poof_cc_append(&cc.libs, "m");
+ if (!poof_cc_run(&cc)) return 1;
+
+ cc.debug_mode = true;
+ cc.optimization = POOF_O0;
+ cc.output = "demos/demo_run";
+ poof_cc_append(&cc.inputs, "demos/demo_run.c");
+ poof_cc_append(&cc.extra_flags, "-std=c99", "-Wall", "-Wno-deprecated-declarations");
+ poof_cc_append(&cc.libs, "m");
+ if (!poof_cc_run(&cc)) return 1;
+
+ poof_cmd_clear(&cmd);
+ poof_cmd_append(&cmd, "emcc", "demos/demo_run.c", "-o", "demos/demo.js",
+ "-std=c99", "-Wall", "-Wno-deprecated-declarations",
+ "-sALLOW_MEMORY_GROWTH=1", "-sENVIRONMENT=web");
+ if (!poof_cmd_run(&cmd)) return 1;
+
+ return 0;
+}
+