annotate Makefile @ 60:8bce148070a7

Subsignatures example
author Adam Chlipala <adamc@hcoop.net>
date Sun, 22 Jun 2008 19:10:47 -0400
parents 4202f6eda946
children 5f04adf47f48
rev   line source
adamc@0 1 all: smlnj mlton
adamc@0 2
adamc@0 3 .PHONY: all smlnj mlton clean
adamc@0 4
adamc@0 5 smlnj: src/lacweb.cm
adamc@0 6 mlton: bin/lacweb
adamc@0 7
adamc@0 8 clean:
adamc@0 9 rm -f src/*.mlton.grm.* src/*.mlton.lex.* \
adamc@0 10 src/lacweb.cm src/lacweb.mlb
adamc@0 11 rm -rf .cm src/.cm
adamc@0 12
adamc@0 13 src/lacweb.cm: src/prefix.cm src/sources
adamc@0 14 cat src/prefix.cm src/sources \
adamc@0 15 >src/lacweb.cm
adamc@0 16
adamc@0 17 src/lacweb.mlb: src/prefix.mlb src/sources src/suffix.mlb
adamc@0 18 cat src/prefix.mlb src/sources src/suffix.mlb \
adamc@0 19 | sed 's/^\(.*\).grm$$/\1.mlton.grm.sig\n\1.mlton.grm.sml/' \
adamc@0 20 | sed 's/^\(.*\).lex$$/\1.mlton.lex.sml/' \
adamc@0 21 >src/lacweb.mlb
adamc@0 22
adamc@0 23 %.mlton.lex: %.lex
adamc@0 24 cp $< $@
adamc@0 25 %.mlton.grm: %.grm
adamc@0 26 cp $< $@
adamc@0 27
adamc@0 28 %.mlton.lex.sml: %.mlton.lex
adamc@0 29 mllex $<
adamc@0 30
adamc@0 31 %.mlton.grm.sig %.mlton.grm.sml: %.mlton.grm
adamc@0 32 mlyacc $<
adamc@0 33
adamc@0 34 MLTON := mlton
adamc@0 35
adamc@0 36 ifdef DEBUG
adamc@0 37 MLTON += -const 'Exn.keepHistory true'
adamc@0 38 endif
adamc@0 39
adamc@1 40 bin/lacweb: src/lacweb.mlb src/*.sig src/*.sml \
adamc@1 41 src/lacweb.mlton.lex.sml \
adamc@1 42 src/lacweb.mlton.grm.sig src/lacweb.mlton.grm.sml
adamc@0 43 $(MLTON) -output $@ src/lacweb.mlb