summaryrefslogtreecommitdiff
path: root/.justfile
diff options
context:
space:
mode:
authorcashmere <cashmere@autistici.org>2026-06-18 14:19:24 +0200
committercashmere <cashmere@autistici.org>2026-06-18 14:19:24 +0200
commit6eb05a7c25c0c3796bdc5564c035395c5e46c570 (patch)
tree4cb3397fabe155dff549c44f9ce7a2c357e0194f /.justfile
parent9d99f7e7da8e349ea30719ed204ad87f1e34fdad (diff)
downloadcsh-master.tar.gz
initialize base structureHEADmaster
Diffstat (limited to '.justfile')
-rw-r--r--.justfile35
1 files changed, 35 insertions, 0 deletions
diff --git a/.justfile b/.justfile
new file mode 100644
index 0000000..188e852
--- /dev/null
+++ b/.justfile
@@ -0,0 +1,35 @@
+src := "src/main.c3"
+bin := "build/csh"
+
+default:
+ @just --list
+
+tangle:
+ emacs -Q --batch --eval "(require 'org)" --eval '(org-babel-tangle-file "README.org")'
+
+run: tangle _prep
+ c3c compile-run {{src}} -o {{bin}}
+
+build: tangle _prep
+ c3c compile {{src}} -O0 -g -o {{bin}}
+
+release: tangle _prep
+ c3c compile {{src}} -O5 -o {{bin}}
+
+asan: tangle _prep
+ c3c compile-run {{src}} -O0 -g --sanitize=address -o {{bin}}
+
+tsan: tangle _prep
+ c3c compile-run {{src}} -O0 -g --sanitize=thread -o {{bin}}
+
+example name: tangle _prep
+ c3c compile-run src/{{name}}.c3 -o build/{{name}}
+
+valgrind: build
+ valgrind --leak-check=full --error-exitcode=1 ./{{bin}}
+
+clean:
+ rm -rf build src
+
+_prep:
+ @mkdir -p build