equal
deleted
inserted
replaced
36 @if [ -d $${ISABELLEBIN:?}/Pure ];\ |
36 @if [ -d $${ISABELLEBIN:?}/Pure ];\ |
37 then echo Bad value for ISABELLEBIN: \ |
37 then echo Bad value for ISABELLEBIN: \ |
38 $(BIN) is the Isabelle source directory; \ |
38 $(BIN) is the Isabelle source directory; \ |
39 exit 1; \ |
39 exit 1; \ |
40 fi |
40 fi |
41 @case `expr "//$(COMP)" : '[^ ]*/\(.*\)'` in \ |
41 @case `basename "$(COMP)"` in \ |
42 poly*) echo 'make_database"$(BIN)/HOL"; quit();' \ |
42 poly*) echo 'make_database"$(BIN)/HOL"; quit();' \ |
43 | $(COMP) $(BIN)/Pure;\ |
43 | $(COMP) $(BIN)/Pure;\ |
44 if [ "$${MAKE_HTML}" = "true" ]; \ |
44 if [ "$${MAKE_HTML}" = "true" ]; \ |
45 then echo 'open PolyML; make_html := true; exit_use_dir".";' \ |
45 then echo 'open PolyML; make_html := true; exit_use_dir".";' \ |
46 | $(COMP) $(BIN)/HOL;\ |
46 | $(COMP) $(BIN)/HOL;\ |
66 cd ../Pure; $(MAKE) |
66 cd ../Pure; $(MAKE) |
67 |
67 |
68 #### Testing of HOL |
68 #### Testing of HOL |
69 |
69 |
70 #A macro referring to the object-logic (depends on ML compiler) |
70 #A macro referring to the object-logic (depends on ML compiler) |
71 LOGIC:sh=case `expr "//$ISABELLECOMP" : '[^ ]*/\(.*\)'` in \ |
71 # [Thanks to Thomas Santen and Stephan Herrmann from GMD First] |
72 poly*) echo "$ISABELLECOMP $ISABELLEBIN/HOL" ;;\ |
72 LOGIC=`case \`basename "$(ISABELLECOMP)"\` in \ |
73 sml*) echo "$ISABELLEBIN/HOL" ;;\ |
73 poly*) echo "$(ISABELLECOMP) $(ISABELLEBIN)/HOL" ;;\ |
|
74 sml*) echo "$(ISABELLEBIN)/HOL" ;;\ |
74 *) echo "echo; echo Bad value for ISABELLECOMP: \ |
75 *) echo "echo; echo Bad value for ISABELLECOMP: \ |
75 $ISABELLECOMP is not poly or sml; exit 1" ;;\ |
76 $(ISABELLECOMP) is not poly or sml; exit 1" ;;\ |
76 esac |
77 esac` |
77 |
78 |
78 ##IMP-semantics example |
79 ##IMP-semantics example |
79 IMP_NAMES = Expr Com Natural Transition Denotation Hoare VC |
80 IMP_NAMES = Expr Com Natural Transition Denotation Hoare VC |
80 IMP_FILES = IMP/ROOT.ML $(IMP_NAMES:%=IMP/%.thy) $(IMP_NAMES:%=IMP/%.ML) |
81 IMP_FILES = IMP/ROOT.ML $(IMP_NAMES:%=IMP/%.thy) $(IMP_NAMES:%=IMP/%.ML) |
81 |
82 |
195 then echo 'make_html := true; exit_use_dir"Lex";quit();' | $(LOGIC);\ |
196 then echo 'make_html := true; exit_use_dir"Lex";quit();' | $(LOGIC);\ |
196 else echo 'exit_use_dir"Lex";quit();' | $(LOGIC); \ |
197 else echo 'exit_use_dir"Lex";quit();' | $(LOGIC); \ |
197 fi |
198 fi |
198 |
199 |
199 ##Miscellaneous examples |
200 ##Miscellaneous examples |
200 EX_NAMES = String BT Perm Comb InSort Qsort LexProd Puzzle Mutil \ |
201 EX_NAMES = String BT Perm Comb InSort Qsort LexProd Group Ring Lagrange \ |
201 Primes NatSum SList LList Acc PropLog Term Simult MT |
202 Puzzle Mutil Primes NatSum SList LList Acc PropLog Term Simult MT |
202 |
203 |
203 EX_FILES = ex/ROOT.ML ex/cla.ML ex/meson.ML ex/mesontest.ML ex/rel.ML \ |
204 EX_FILES = ex/ROOT.ML ex/cla.ML ex/meson.ML ex/mesontest.ML ex/rel.ML \ |
204 ex/set.ML $(EX_NAMES:%=ex/%.thy) $(EX_NAMES:%=ex/%.ML) |
205 ex/set.ML $(EX_NAMES:%=ex/%.thy) $(EX_NAMES:%=ex/%.ML) |
205 |
206 |
206 ex: $(BIN)/HOL $(EX_FILES) |
207 ex: $(BIN)/HOL $(EX_FILES) |