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