Commit | Line | Data |
---|---|---|
1c975d08 SK |
1 | MAKEFLAGS := --no-builtin-rules |
2 | ||
129abbe9 SK |
3 | EXE_TYPE := byte # byte | native |
4 | EXECUTABLES := tigerc tiger_tests | |
5 | OCAMLBUILD_FLAGS_DIRS := -I src/exe -I src/lib/tiger | |
6 | OCAMLBUILD_FLAGS_COMP := -cflags '-w A' | |
a9002dfe SK |
7 | OCAMLBUILD := \ |
8 | ocamlbuild \ | |
9 | -classic-display \ | |
10 | $(OCAMLBUILD_FLAGS_COMP) \ | |
11 | $(OCAMLBUILD_FLAGS_DIRS) | |
1c975d08 SK |
12 | |
13 | .PHONY: \ | |
a9002dfe SK |
14 | all \ |
15 | build \ | |
16 | clean \ | |
17 | test | |
1c975d08 | 18 | |
a4905b7a | 19 | all: clean |
78c9eca5 | 20 | @$(MAKE) -s test |
1c975d08 SK |
21 | |
22 | build: | |
78c9eca5 SK |
23 | @$(OCAMLBUILD) $(addsuffix .$(EXE_TYPE),$(EXECUTABLES)) |
24 | @mkdir -p bin/exe | |
25 | $(foreach exe,$(EXECUTABLES),cp _build/src/exe/$(exe).$(EXE_TYPE) bin/exe/$(exe); ) | |
26 | @rm $(addsuffix .$(EXE_TYPE),$(EXECUTABLES)) | |
1c975d08 SK |
27 | |
28 | clean: | |
78c9eca5 SK |
29 | @$(OCAMLBUILD) -clean |
30 | @rm -rf ./bin | |
1c975d08 | 31 | |
a4905b7a SK |
32 | test: build |
33 | @./bin/exe/tiger_tests |