summaryrefslogtreecommitdiff
path: root/tests/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'tests/Makefile')
-rw-r--r--tests/Makefile28
1 files changed, 28 insertions, 0 deletions
diff --git a/tests/Makefile b/tests/Makefile
new file mode 100644
index 0000000..d1a2c46
--- /dev/null
+++ b/tests/Makefile
@@ -0,0 +1,28 @@
+empty :=
+
+out_dir := out
+obj_dir := $(out_dir)/artifacts
+
+src_files := $(wildcard *.tnsl)
+obj_files := $(src_files:.tnsl=.o)
+out_files := $(src_files:.tnsl=.out)
+
+all: outdir $(out_files)
+.PHONY: all test
+
+%.asm: %.tnsl
+ ../ctc $< $(obj_dir)/$@
+
+%.o: %.asm
+ nasm -f elf64 -o $(obj_dir)/$@ $(obj_dir)/$<
+
+%.out: %.o
+ gcc -o $(out_dir)/$@ $(obj_dir)/$<
+
+outdir:
+ mkdir -p $(out_dir)
+ mkdir -p $(obj_dir)
+
+clean:
+ rm -rf out/*
+