Reorg Makefile
[tiger.ml.git] / tiger / Makefile
1 MAKEFLAGS := --no-builtin-rules
2
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'
7 OCAMLBUILD := \
8 ocamlbuild \
9 -classic-display \
10 $(OCAMLBUILD_FLAGS_COMP) \
11 $(OCAMLBUILD_FLAGS_DIRS)
12
13 .PHONY: \
14 all \
15 build \
16 clean \
17 test
18
19 all: clean
20 @$(MAKE) -s test
21
22 build:
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))
27
28 clean:
29 @$(OCAMLBUILD) -clean
30 @rm -rf ./bin
31
32 test: build
33 @./bin/exe/tiger_tests
This page took 0.096531 seconds and 4 git commands to generate.