Commit | Line | Data |
---|---|---|
31690700 | 1 | |
cc021efe | 2 | TESTS = tests/types.js tests/reader.js |
31690700 | 3 | |
5245b079 | 4 | SOURCES_BASE = node_readline.js types.js reader.js printer.js interop.js |
90f618cb | 5 | SOURCES_LISP = env.js core.js stepA_mal.js |
712af9ef | 6 | SOURCES = $(SOURCES_BASE) $(SOURCES_LISP) |
e4393504 | 7 | WEB_SOURCES = $(SOURCES:node_readline.js=jq_readline.js) |
31690700 | 8 | |
5245b079 JM |
9 | all: node_modules |
10 | ||
8e2d4a4c | 11 | dist: mal.js mal web/mal.js |
e47ddca2 WB |
12 | |
13 | node_modules: | |
14 | npm install | |
31690700 JM |
15 | |
16 | mal.js: $(SOURCES) | |
31690700 | 17 | cat $+ | grep -v "= *require('./" >> $@ |
8e2d4a4c JM |
18 | |
19 | mal: mal.js | |
20 | echo "#!/usr/bin/env node" > $@ | |
21 | cat $< >> $@ | |
31690700 JM |
22 | chmod +x $@ |
23 | ||
e4393504 | 24 | web/mal.js: $(WEB_SOURCES) |
31690700 JM |
25 | cat $+ | grep -v "= *require('./" > $@ |
26 | ||
27 | clean: | |
e4393504 | 28 | rm -f mal.js web/mal.js |
31690700 JM |
29 | |
30 | .PHONY: stats tests $(TESTS) | |
31 | ||
32 | stats: $(SOURCES) | |
33 | @wc $^ | |
f15b4021 | 34 | @printf "%5s %5s %5s %s\n" `grep -E "^[[:space:]]*//|^[[:space:]]*$$" $^ | wc` "[comments/blanks]" |
712af9ef JM |
35 | stats-lisp: $(SOURCES_LISP) |
36 | @wc $^ | |
f15b4021 | 37 | @printf "%5s %5s %5s %s\n" `grep -E "^[[:space:]]*//|^[[:space:]]*$$" $^ | wc` "[comments/blanks]" |
31690700 JM |
38 | |
39 | tests: $(TESTS) | |
40 | ||
41 | $(TESTS): | |
42 | @echo "Running $@"; \ | |
43 | node $@ || exit 1; \ |