1
1
mirror of https://github.com/kanaka/mal.git synced 2024-09-20 10:07:45 +03:00
mal/haskell/Makefile
Joel Martin c150ec41f4 Haskell: Add steps9-A, metadata, and atoms.
Some refactoring of Core.hs to make better use of pattern matching.

Only remaining thing is exception handling (generic try/throw).
2015-01-09 16:16:53 -06:00

32 lines
733 B
Makefile

SOURCES_BASE = Readline.hs Types.hs Reader.hs Printer.hs
SOURCES_LISP = Env.hs Core.hs step9_try.hs
SOURCES = $(SOURCES_BASE) $(SOURCES_LISP)
#####################
SRCS = step0_repl.hs step1_read_print.hs step2_eval.hs step3_env.hs \
step4_if_fn_do.hs step5_tco.hs step6_file.hs step7_quote.hs \
step8_macros.hs step9_try.hs stepA_interop.hs
OTHER_SRCS = Readline.hs Types.hs Reader.hs Printer.hs Env.hs Core.hs
BINS = $(SRCS:%.hs=%)
#####################
all: $(BINS) mal
mal: $(word $(words $(BINS)),$(BINS))
cp $< $@
$(BINS): %: %.hs $(OTHER_SRCS)
ghc --make $< -o $@
clean:
rm -f $(BINS) mal *.hi *.o
.PHONY: stats stats-lisp tests $(TESTS)
stats: $(SOURCES)
@wc $^
stats-lisp: $(SOURCES_LISP)
@wc $^