summaryrefslogtreecommitdiff
path: root/language/Makefile
diff options
context:
space:
mode:
authorAlasdair Armstrong2017-10-04 18:09:51 +0100
committerAlasdair Armstrong2017-10-04 18:09:51 +0100
commit59d7781403f9f92cda4954b75d5116157f98ba84 (patch)
tree99b60cc17a156cc2e0a347d3701360c4437593fb /language/Makefile
parent69dcc28b25d0ad6b3f62a692684581b4f266aa03 (diff)
parent379306d39a8484ce64cb7e6797d0b8dbbef0b32f (diff)
Merge branch 'experiments' of https://bitbucket.org/Peter_Sewell/sail into experiments
Diffstat (limited to 'language/Makefile')
-rw-r--r--language/Makefile8
1 files changed, 7 insertions, 1 deletions
diff --git a/language/Makefile b/language/Makefile
index 9167d65f..77aa5607 100644
--- a/language/Makefile
+++ b/language/Makefile
@@ -4,7 +4,7 @@ OTT=../../../github/ott/src/ott
OTTLIB=$(dir $(shell which ott))../hol
.PHONY: all
-all: l2.ml l2_parse.ml l2.lem
+all: l2.ml l2_parse.ml l2.lem l2_parse2.ml l2_parse2_parser.mly
docs: l2.pdf l2_parse.pdf
@@ -36,6 +36,12 @@ doc_in.tex: l2.ott primitive_doc.ott l2_terminals_tt.ott l2_typ.ott l2_rules.ott
l2.lem: l2.ott
$(OTT) -sort false -generate_aux_rules true -o $@ -picky_multiple_parses true $^
+ROOT=l2_parse2
+# generate the ocaml AST type, ocamllex lexer, menhir parser, and ocaml pretty printers for the AST, all from the Ott soruce
+$(ROOT)_ast.ml $(ROOT)_lexer.mll $(ROOT)_parser.mly $(ROOT)_parser_pp.ml $(ROOT)_ast.tex : $(ROOT).ott Makefile
+ $(OTT) -quotient_rules false -generate_aux_rules false -i $(ROOT).ott -o $(ROOT)_parser.mly -o $(ROOT)_lexer.mll -o $(ROOT)_ast.ml -o $(ROOT).tex
+
+
clean:
rm -rf *~
rm -rf *.uo *.ui *.sig *.sml .HOLMK