mirror of
https://github.com/kanaka/mal.git
synced 2024-10-26 22:28:26 +03:00
8a19f60386
- Reorder README to have implementation list after "learning tool" bullet. - This also moves tests/ and libs/ into impls. It would be preferrable to have these directories at the top level. However, this causes difficulties with the wasm implementations which need pre-open directories and have trouble with paths starting with "../../". So in lieu of that, symlink those directories to the top-level. - Move the run_argv_test.sh script into the tests directory for general hygiene.
32 lines
625 B
Makefile
32 lines
625 B
Makefile
|
|
UPPER_STEPS = step4_if_fn_do step5_tco step6_file step7_quote step8_macros step9_try stepA_mal
|
|
STEPS = step0_repl step1_read_print step2_eval step3_env $(UPPER_STEPS)
|
|
|
|
all: $(STEPS)
|
|
|
|
dist: mal
|
|
|
|
mal: stepA_mal
|
|
cp $< $@
|
|
|
|
%: %.rs
|
|
cargo build --release --bin $*
|
|
cp target/release/$* $@
|
|
|
|
STEP0_DEPS = Cargo.toml
|
|
STEP1_DEPS = $(STEP0_DEPS) types.rs reader.rs printer.rs
|
|
STEP3_DEPS = $(STEP1_DEPS) env.rs
|
|
STEP4_DEPS = $(STEP3_DEPS) core.rs
|
|
|
|
step0_repl: $(STEP0_DEPS)
|
|
step1_read_print step2_eval: $(STEP1_DEPS)
|
|
step3_env: $(STEP3_DEPS)
|
|
$(UPPER_STEPS): $(STEP4_DEPS)
|
|
|
|
.PHONY: clean
|
|
|
|
clean:
|
|
cargo clean
|
|
rm -f $(STEPS)
|
|
rm -f mal
|