Commit | Line | Data |
---|---|---|
a873632f JB |
1 | SOURCES_BASE = reader.ls printer.ls env.ls core.ls utils.ls |
2 | SOURCES_STEPS = step0_repl.ls step1_read_print.ls step2_eval.ls \ | |
3 | step4_if_fn_do.ls step5_tco.ls step6_file.ls step7_quote.ls \ | |
4 | step8_macros.ls step9_try.ls stepA_mal.ls | |
0af8fd20 | 5 | SOURCES_LISP = env.ls core.ls stepA_mal.ls |
a873632f | 6 | SOURCES = $(SOURCES_BASE) $(SOURCES_STEPS) |
dcccf1b2 | 7 | |
a873632f | 8 | BINS = $(SOURCES:%.ls=%.js) |
dcccf1b2 | 9 | |
4dde82ef JB |
10 | LSC = node_modules/.bin/lsc |
11 | ||
12 | all: node_modules $(BINS) | |
dcccf1b2 JB |
13 | |
14 | node_modules: | |
15 | npm install | |
16 | ||
0af8fd20 | 17 | %.js: %.ls node_modules |
4dde82ef | 18 | $(LSC) -d -c $(@:%.js=%.ls) |
dcccf1b2 | 19 | |
0af8fd20 JB |
20 | step1_read_print.js: utils.js reader.js printer.js |
21 | step2_eval.js: utils.js reader.js printer.js | |
22 | step3_env.js: utils.js reader.js printer.js env.js | |
23 | step4_if_fn_do.js: utils.js reader.js printer.js env.js core.js | |
24 | step5_tco.js: utils.js reader.js printer.js env.js core.js | |
25 | step6_file.js: utils.js reader.js printer.js env.js core.js | |
26 | step7_quote.js: utils.js reader.js printer.js env.js core.js | |
27 | step8_macros.js: utils.js reader.js printer.js env.js core.js | |
28 | step9_try.js: utils.js reader.js printer.js env.js core.js | |
29 | stepA_mal.js: utils.js reader.js printer.js env.js core.js | |
30 | ||
dcccf1b2 | 31 | clean: |
a873632f | 32 | rm -f $(BINS) |
0af8fd20 JB |
33 | |
34 | stats: $(SOURCES) | |
35 | @wc $^ | |
36 | @printf "%5s %5s %5s %s\n" `egrep "^\w*#|^\w*$$" $^ | wc` "[comments/blanks]" | |
37 | ||
38 | stats-lisp: $(SOURCES_LISP) | |
39 | @wc $^ | |
40 | @printf "%5s %5s %5s %s\n" `egrep "^\w*#|^\w*$$" $^ | wc` "[comments/blanks]" |