adamc@0: all: smlnj mlton adamc@0: adamc@0: .PHONY: all smlnj mlton clean adamc@0: adamc@0: smlnj: src/lacweb.cm adamc@0: mlton: bin/lacweb adamc@0: adamc@0: clean: adamc@0: rm -f src/*.mlton.grm.* src/*.mlton.lex.* \ adamc@0: src/lacweb.cm src/lacweb.mlb adamc@0: rm -rf .cm src/.cm adamc@0: adamc@0: src/lacweb.cm: src/prefix.cm src/sources adamc@0: cat src/prefix.cm src/sources \ adamc@0: >src/lacweb.cm adamc@0: adamc@0: src/lacweb.mlb: src/prefix.mlb src/sources src/suffix.mlb adamc@0: cat src/prefix.mlb src/sources src/suffix.mlb \ adamc@0: | sed 's/^\(.*\).grm$$/\1.mlton.grm.sig\n\1.mlton.grm.sml/' \ adamc@0: | sed 's/^\(.*\).lex$$/\1.mlton.lex.sml/' \ adamc@0: >src/lacweb.mlb adamc@0: adamc@0: %.mlton.lex: %.lex adamc@0: cp $< $@ adamc@0: %.mlton.grm: %.grm adamc@0: cp $< $@ adamc@0: adamc@0: %.mlton.lex.sml: %.mlton.lex adamc@0: mllex $< adamc@0: adamc@0: %.mlton.grm.sig %.mlton.grm.sml: %.mlton.grm adamc@0: mlyacc $< adamc@0: adamc@0: MLTON := mlton adamc@0: adamc@0: ifdef DEBUG adamc@0: MLTON += -const 'Exn.keepHistory true' adamc@0: endif adamc@0: adamc@1: bin/lacweb: src/lacweb.mlb src/*.sig src/*.sml \ adamc@1: src/lacweb.mlton.lex.sml \ adamc@1: src/lacweb.mlton.grm.sig src/lacweb.mlton.grm.sml adamc@0: $(MLTON) -output $@ src/lacweb.mlb