31 Tr1.thy Tr2.thy HOLCF.thy |
31 Tr1.thy Tr2.thy HOLCF.thy |
32 |
32 |
33 FILES = ROOT.ML Porder0.thy $(THYS) $(THYS:.thy=.ML) |
33 FILES = ROOT.ML Porder0.thy $(THYS) $(THYS:.thy=.ML) |
34 |
34 |
35 #Uses cp rather than make_database because Poly/ML allows only 3 levels |
35 #Uses cp rather than make_database because Poly/ML allows only 3 levels |
36 $(BIN)/HOLCF: $(BIN)/HOL $(FILES) |
36 $(BIN)/HOLCF: $(BIN)/HOL $(FILES) |
37 case "$(COMP)" in \ |
37 case "$(COMP)" in \ |
38 poly*) cp $(BIN)/HOL $(BIN)/HOLCF; chmod u+w $(BIN)/HOLCF;\ |
38 poly*) cp $(BIN)/HOL $(BIN)/HOLCF; chmod u+w $(BIN)/HOLCF;\ |
39 if [ "$${MAKE_HTML}" = "true" ]; \ |
39 if [ "$${MAKE_HTML}" = "true" ]; \ |
40 then echo 'open PolyML; make_html := true; exit_use_dir".";' \ |
40 then echo 'open PolyML; make_html := true; exit_use_dir".";' \ |
41 | $(COMP) $(BIN)/HOLCF;\ |
41 | $(COMP) $(BIN)/HOLCF;\ |
42 elif [ "$${MAKE_HTML-undefined}" != "undefined" ]; \ |
42 elif [ "$${MAKE_HTML-undefined}" != "undefined" ]; \ |
43 then echo 'open PolyML; make_html := true; exit_use_dir"."; make_html := false;' | $(COMP) $(BIN)/HOLCF;\ |
43 then echo 'open PolyML; make_html := true; exit_use_dir"."; make_html := false;' | $(COMP) $(BIN)/HOLCF;\ |
44 else echo 'open PolyML; exit_use_dir".";' \ |
44 else echo 'open PolyML; exit_use_dir".";' \ |
45 | $(COMP) $(BIN)/HOLCF;\ |
45 | $(COMP) $(BIN)/HOLCF;\ |
46 fi;\ |
46 fi;\ |
47 discgarb -c $(BIN)/HOLCF;;\ |
47 discgarb -c $(BIN)/HOLCF;;\ |
48 sml*) if [ "$${MAKE_HTML}" = "true" ]; \ |
48 sml*) if [ "$${MAKE_HTML}" = "true" ]; \ |
49 then echo 'make_html := true; exit_use_dir"."; xML"$(BIN)/HOLCF" banner;' | $(BIN)/HOL;\ |
49 then echo 'make_html := true; exit_use_dir"."; xML"$(BIN)/HOLCF" banner;' | $(BIN)/HOL;\ |
50 elif [ "$${MAKE_HTML-undefined}" != "undefined" ];\ |
50 elif [ "$${MAKE_HTML-undefined}" != "undefined" ];\ |
51 then echo 'make_html := true; exit_use_dir"."; make_html := false; xML"$(BIN)/HOLCF" banner;' \ |
51 then echo 'make_html := true; exit_use_dir"."; make_html := false; xML"$(BIN)/HOLCF" banner;' \ |
52 | $(BIN)/HOL;\ |
52 | $(BIN)/HOL;\ |
53 else echo 'exit_use_dir"."; xML"$(BIN)/HOLCF" banner;' \ |
53 else echo 'exit_use_dir"."; xML"$(BIN)/HOLCF" banner;' \ |
54 | $(BIN)/HOL;\ |
54 | $(BIN)/HOL;\ |
55 fi;;\ |
55 fi;;\ |
56 *) echo Bad value for ISABELLECOMP: \ |
56 *) echo Bad value for ISABELLECOMP: \ |
57 $(COMP) is not poly or sml;;\ |
57 $(COMP) is not poly or sml;;\ |
58 esac |
58 esac |
59 |
59 |
60 $(BIN)/HOL: |
60 $(BIN)/HOL: |
61 cd ../HOL; $(MAKE) |
61 cd ../HOL; $(MAKE) |
62 |
62 |
63 EX_THYS = ex/Fix2.thy ex/Hoare.thy \ |
63 EX_THYS = ex/Fix2.thy ex/Hoare.thy \ |
64 ex/Loop.thy |
64 ex/Loop.thy |
65 |
65 |
66 EX_FILES = ex/ROOT.ML ex/loeckx.ML $(EX_THYS) $(EX_THYS:.thy=.ML) |
66 EX_FILES = ex/ROOT.ML ex/loeckx.ML $(EX_THYS) $(EX_THYS:.thy=.ML) |
67 |
67 |
68 test: ex/ROOT.ML $(BIN)/HOLCF $(EX_FILES) |
68 test: ex/ROOT.ML $(BIN)/HOLCF $(EX_FILES) |
69 case "$(COMP)" in \ |
69 case "$(COMP)" in \ |
70 poly*) if [ "$${MAKE_HTML-undefined}" != "undefined" ]; \ |
70 poly*) if [ "$${MAKE_HTML-undefined}" != "undefined" ]; \ |
71 then echo 'make_html := true; exit_use_dir"ex"; quit();' \ |
71 then echo 'make_html := true; exit_use_dir"ex"; quit();' \ |
72 | $(COMP) $(BIN)/HOLCF;\ |
72 | $(COMP) $(BIN)/HOLCF;\ |
73 else echo 'exit_use_dir"ex"; quit();' | $(COMP) $(BIN)/HOLCF;\ |
73 else echo 'exit_use_dir"ex"; quit();' | $(COMP) $(BIN)/HOLCF;\ |
74 fi;;\ |
74 fi;;\ |
75 sml*) if [ "$${MAKE_HTML-undefined}" != "undefined" ]; \ |
75 sml*) if [ "$${MAKE_HTML-undefined}" != "undefined" ]; \ |
76 then echo 'make_html := true; exit_use_dir"ex";' \ |
76 then echo 'make_html := true; exit_use_dir"ex";' \ |
77 | $(BIN)/HOLCF;\ |
77 | $(BIN)/HOLCF;\ |
78 else echo 'exit_use_dir"ex";' | $(BIN)/HOLCF;\ |
78 else echo 'exit_use_dir"ex";' | $(BIN)/HOLCF;\ |
79 fi;;\ |
79 fi;;\ |
80 *) echo Bad value for ISABELLECOMP: \ |
80 *) echo Bad value for ISABELLECOMP: \ |
81 $(COMP) is not poly or sml;;\ |
81 $(COMP) is not poly or sml;;\ |
82 esac |
82 esac |
83 |
83 |
84 EXPLICIT_DOMAINS_THYS = explicit_domains/Coind.thy explicit_domains/Dlist.thy \ |
84 EXPLICIT_DOMAINS_THYS = explicit_domains/Coind.thy explicit_domains/Dlist.thy \ |
85 explicit_domains/Dnat2.thy explicit_domains/Stream.thy \ |
85 explicit_domains/Dnat2.thy explicit_domains/Stream.thy \ |
86 explicit_domains/Dagstuhl.thy explicit_domains/Dnat.thy\ |
86 explicit_domains/Dagstuhl.thy explicit_domains/Dnat.thy\ |
87 explicit_domains/Focus_ex.thy explicit_domains/Stream2.thy |
87 explicit_domains/Focus_ex.thy explicit_domains/Stream2.thy |
88 |
88 |
89 EXPLICIT_DOMAINS_FILES = explicit_domains/ROOT.ML $(EXPLICIT_DOMAINS_THYS)\ |
89 EXPLICIT_DOMAINS_FILES = explicit_domains/ROOT.ML $(EXPLICIT_DOMAINS_THYS)\ |
90 $(EXPLICIT_DOMAINS_THYS:.thy=.ML) |
90 $(EXPLICIT_DOMAINS_THYS:.thy=.ML) |
91 |
91 |
92 test2: explicit_domains/ROOT.ML $(BIN)/HOLCF $(EXPLICIT_DOMAINS_FILES) |
92 test2: explicit_domains/ROOT.ML $(BIN)/HOLCF $(EXPLICIT_DOMAINS_FILES) |
93 case "$(COMP)" in \ |
93 case "$(COMP)" in \ |
94 poly*) if [ "$${MAKE_HTML-undefined}" != "undefined" ]; \ |
94 poly*) if [ "$${MAKE_HTML-undefined}" != "undefined" ]; \ |
95 then echo 'make_html := true; exit_use_dir"explicit_domains"; quit();' | $(COMP) $(BIN)/HOLCF;\ |
95 then echo 'make_html := true; exit_use_dir"explicit_domains"; quit();' | $(COMP) $(BIN)/HOLCF;\ |
96 else echo 'exit_use_dir"explicit_domains"; quit();' \ |
96 else echo 'exit_use_dir"explicit_domains"; quit();' \ |
97 | $(COMP) $(BIN)/HOLCF;\ |
97 | $(COMP) $(BIN)/HOLCF;\ |
98 fi;;\ |
98 fi;;\ |
99 sml*) if [ "$${MAKE_HTML-undefined}" != "undefined" ]; \ |
99 sml*) if [ "$${MAKE_HTML-undefined}" != "undefined" ]; \ |
100 then echo 'make_html := true; exit_use_dir"exlicit_domains";' \ |
100 then echo 'make_html := true; exit_use_dir"exlicit_domains";' \ |
101 | $(BIN)/HOLCF;\ |
101 | $(BIN)/HOLCF;\ |
102 else echo 'exit_use_dir"explicit_domains";' | $(BIN)/HOLCF;\ |
102 else echo 'exit_use_dir"explicit_domains";' | $(BIN)/HOLCF;\ |
103 fi;;\ |
103 fi;;\ |
104 *) echo Bad value for ISABELLECOMP: \ |
104 *) echo Bad value for ISABELLECOMP: \ |
105 $(COMP) is not poly or sml;;\ |
105 $(COMP) is not poly or sml;;\ |
106 esac |
106 esac |
107 |
107 |
108 .PRECIOUS: $(BIN)/HOL $(BIN)/HOLCF |
108 .PRECIOUS: $(BIN)/HOL $(BIN)/HOLCF |
109 |
109 |