go: add step5_tco. Refactor env.
[jackhill/mal.git] / go / Makefile
CommitLineData
45e1db6a
JM
1export GOPATH := $(dir $(abspath $(lastword $(MAKEFILE_LIST))))
2
69b4abd6
JM
3#####################
4
af8fdff4
JM
5SOURCES_BASE = src/types/types.go src/reader/reader.go src/printer/printer.go \
6 src/env/env.go src/core/core.go
17e1c5f9 7SOURCES_LISP = src/step5_tco/step5_tco.go
69b4abd6
JM
8SOURCES = $(SOURCES_BASE) $(SOURCES_LISP)
9
69b4abd6
JM
10#####################
11
17e1c5f9
JM
12SRCS = step0_repl.go step1_read_print.go step2_eval.go step3_env.go \
13 step4_if_fn_do.go step5_tco.go
69b4abd6
JM
14BINS = $(SRCS:%.go=%)
15
16#####################
17
18all: $(BINS) mal
19
20mal: $(word $(words $(BINS)),$(BINS))
21 cp $< $@
22
45e1db6a
JM
23$(BINS): $(SOURCES_BASE) $(SOURCES_LISP)
24 go build $@
69b4abd6
JM
25
26clean:
27 rm -f $(BINS) mal
28
29.PHONY: stats stats-lisp
30
31stats: $(SOURCES)
32 @wc $^
33stats-lisp: $(SOURCES_LISP)
34 @wc $^