Commit | Line | Data |
---|---|---|
a11a0235 JM |
1 | SOURCES_BASE = node_readline.js types.mjs reader.mjs printer.mjs |
2 | SOURCES_LISP = env.mjs core.mjs stepA_mal.mjs | |
4f8c7db9 | 3 | SOURCES = $(SOURCES_BASE) $(SOURCES_LISP) |
4eb71990 | 4 | |
a11a0235 JM |
5 | STEPS = step0_repl.mjs step1_read_print.mjs step2_eval.mjs step3_env.mjs \ |
6 | step4_if_fn_do.mjs step5_tco.mjs step6_file.mjs \ | |
7 | step7_quote.mjs step8_macros.mjs step9_try.mjs stepA_mal.mjs | |
4f8c7db9 | 8 | |
a11a0235 | 9 | all: node_modules |
4eb71990 | 10 | |
8e2d4a4c | 11 | dist: mal.js mal |
b6dc3e37 | 12 | |
a11a0235 JM |
13 | node_modules: |
14 | npm install | |
15 | ||
16 | $(STEPS): node_modules | |
b6dc3e37 | 17 | |
a11a0235 JM |
18 | mal.js: $(SOURCES) |
19 | cat $+ | sed 's/^export //' | grep -v "^import " >> $@ | |
b6dc3e37 | 20 | |
8e2d4a4c JM |
21 | mal: mal.js |
22 | echo "#!/usr/bin/env node" > $@ | |
23 | cat $< >> $@ | |
24 | chmod +x $@ | |
4eb71990 | 25 | |
4f8c7db9 | 26 | |
4eb71990 | 27 | clean: |
a11a0235 JM |
28 | rm -f mal.js mal |
29 | rm -rf node_modules |