Mercurial > urweb
annotate Makefile @ 12:d89477f07c1e
Fun with records
author | Adam Chlipala <adamc@hcoop.net> |
---|---|
date | Fri, 28 Mar 2008 17:34:57 -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 |