author | paulson |
Wed, 27 Nov 1996 10:31:05 +0100 | |
changeset 2235 | 866dbb04816c |
parent 2117 | 292df12bace5 |
permissions | -rw-r--r-- |
1293 | 1 |
# $Id$ |
0 | 2 |
######################################################################### |
3 |
# # |
|
2094 | 4 |
# Makefile for Isabelle (CCL) # |
0 | 5 |
# # |
6 |
######################################################################### |
|
7 |
||
8 |
#To make the system, cd to this directory and type |
|
1293 | 9 |
# make |
0 | 10 |
#To make the system and test it on standard examples, type |
1293 | 11 |
# make test |
12 |
#To generate HTML files for every theory, set the environment variable |
|
13 |
#MAKE_HTML or add the parameter "MAKE_HTML=". |
|
0 | 14 |
|
15 |
#Environment variable ISABELLECOMP specifies the compiler. |
|
16 |
#Environment variable ISABELLEBIN specifies the destination directory. |
|
17 |
#For Poly/ML, ISABELLEBIN must begin with a / |
|
18 |
||
19 |
#Makes FOL if this file is ABSENT -- but not |
|
20 |
#if it is out of date, since this Makefile does not know its dependencies! |
|
21 |
||
22 |
BIN = $(ISABELLEBIN) |
|
23 |
COMP = $(ISABELLECOMP) |
|
24 |
||
334 | 25 |
SET_FILES = ROOT.ML Set.thy Set.ML subset.ML equalities.ML mono.ML \ |
26 |
Gfp.thy Gfp.ML Lfp.thy Lfp.ML |
|
0 | 27 |
|
334 | 28 |
CCL_FILES = CCL.thy CCL.ML Term.thy Term.ML Type.thy Type.ML \ |
2094 | 29 |
coinduction.ML Hered.thy Hered.ML Trancl.thy Trancl.ML\ |
30 |
Wfd.thy Wfd.ML genrec.ML typecheck.ML eval.ML Fix.thy Fix.ML |
|
0 | 31 |
|
334 | 32 |
EX_FILES = ex/ROOT.ML ex/Flag.ML ex/Flag.thy ex/List.ML ex/List.thy\ |
33 |
ex/Nat.ML ex/Nat.thy ex/Stream.ML ex/Stream.thy |
|
101 | 34 |
|
0 | 35 |
#Uses cp rather than make_database because Poly/ML allows only 3 levels |
2094 | 36 |
$(BIN)/CCL: $(BIN)/FOL $(SET_FILES) $(CCL_FILES) |
2235
866dbb04816c
Makefile improvements by Thomas Santen and Stephan Herrmann
paulson
parents:
2117
diff
changeset
|
37 |
@case `basename "$(COMP)"` in \ |
0 | 38 |
poly*) cp $(BIN)/FOL $(BIN)/CCL;\ |
2094 | 39 |
if [ "$${MAKE_HTML}" = "true" ]; \ |
40 |
then echo 'open PolyML; make_html := true; exit_use_dir".";' \ |
|
41 |
| $(COMP) $(BIN)/CCL;\ |
|
1491 | 42 |
elif [ "$${MAKE_HTML-undefined}" != "undefined" ]; \ |
2094 | 43 |
then echo 'open PolyML; make_html := true; exit_use_dir"."; make_html := false;' | $(COMP) $(BIN)/CCL;\ |
44 |
else echo 'open PolyML; exit_use_dir".";' \ |
|
45 |
| $(COMP) $(BIN)/CCL;\ |
|
46 |
fi;\ |
|
2023
aa25f20c5d8b
Calls discgarb -c to realize dramatic space savings!
paulson
parents:
1491
diff
changeset
|
47 |
discgarb -c $(BIN)/CCL;;\ |
2094 | 48 |
sml*) if [ "$${MAKE_HTML}" = "true" ]; \ |
49 |
then echo 'make_html := true; exit_use_dir"."; xML"$(BIN)/CCL" banner;' | $(BIN)/FOL;\ |
|
50 |
elif [ "$${MAKE_HTML-undefined}" != "undefined" ];\ |
|
51 |
then echo 'make_html := true; exit_use_dir"."; make_html := false; xML"$(BIN)/CCL" banner;' \ |
|
52 |
| $(BIN)/FOL;\ |
|
53 |
else echo 'exit_use_dir"."; xML"$(BIN)/CCL" banner;' \ |
|
54 |
| $(BIN)/FOL;\ |
|
55 |
fi;;\ |
|
468 | 56 |
*) echo Bad value for ISABELLECOMP: \ |
2117 | 57 |
\"$(COMP)\" is not poly or sml;;\ |
0 | 58 |
esac |
59 |
||
60 |
$(BIN)/FOL: |
|
61 |
cd ../FOL; $(MAKE) |
|
62 |
||
2094 | 63 |
test: ex/ROOT.ML $(BIN)/CCL $(EX_FILES) |
2235
866dbb04816c
Makefile improvements by Thomas Santen and Stephan Herrmann
paulson
parents:
2117
diff
changeset
|
64 |
@case `basename "$(COMP)"` in \ |
1491 | 65 |
poly*) if [ "$${MAKE_HTML-undefined}" != "undefined" ]; \ |
2094 | 66 |
then echo 'make_html := true; exit_use_dir"ex"; quit();' \ |
67 |
| $(COMP) $(BIN)/CCL;\ |
|
68 |
else echo 'exit_use_dir"ex"; quit();' | $(COMP) $(BIN)/CCL;\ |
|
69 |
fi;;\ |
|
1491 | 70 |
sml*) if [ "$${MAKE_HTML-undefined}" != "undefined" ]; \ |
2094 | 71 |
then echo 'make_html := true; exit_use_dir"ex";' \ |
72 |
| $(BIN)/CCL;\ |
|
73 |
else echo 'exit_use_dir"ex";' | $(BIN)/CCL;\ |
|
74 |
fi;;\ |
|
468 | 75 |
*) echo Bad value for ISABELLECOMP: \ |
2117 | 76 |
\"$(COMP)\" is not poly or sml;;\ |
0 | 77 |
esac |
78 |
||
79 |
.PRECIOUS: $(BIN)/FOL $(BIN)/CCL |