author | paulson |
Mon, 21 Oct 1996 11:18:34 +0200 | |
changeset 2117 | 292df12bace5 |
parent 2094 | 2061df98aab5 |
child 2235 | 866dbb04816c |
permissions | -rw-r--r-- |
1296 | 1 |
# $Id$ |
0 | 2 |
######################################################################### |
3 |
# # |
|
2094 | 4 |
# Makefile for Isabelle (LCF) # |
0 | 5 |
# # |
6 |
######################################################################### |
|
7 |
||
8 |
#To make the system, cd to this directory and type |
|
9 |
# make |
|
10 |
#To make the system and test it on standard examples, type |
|
11 |
# make test |
|
1296 | 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) |
|
2094 | 24 |
FILES = ROOT.ML LCF.thy LCF.ML simpdata.ML pair.ML fix.ML |
0 | 25 |
|
26 |
#Uses cp rather than make_database because Poly/ML allows only 3 levels |
|
27 |
$(BIN)/LCF: $(BIN)/FOL $(FILES) |
|
2117 | 28 |
@case `expr "//$(COMP)" : '[^ ]*/\(.*\)'` in \ |
0 | 29 |
poly*) cp $(BIN)/FOL $(BIN)/LCF;\ |
2094 | 30 |
if [ "$${MAKE_HTML}" = "true" ]; \ |
31 |
then echo 'open PolyML; make_html := true; exit_use_dir".";' \ |
|
32 |
| $(COMP) $(BIN)/LCF;\ |
|
1491 | 33 |
elif [ "$${MAKE_HTML-undefined}" != "undefined" ]; \ |
2094 | 34 |
then echo 'open PolyML; make_html := true; exit_use_dir"."; make_html := false;' | $(COMP) $(BIN)/LCF;\ |
35 |
else echo 'open PolyML; exit_use_dir".";' \ |
|
36 |
| $(COMP) $(BIN)/LCF;\ |
|
37 |
fi;\ |
|
2023
aa25f20c5d8b
Calls discgarb -c to realize dramatic space savings!
paulson
parents:
1491
diff
changeset
|
38 |
discgarb -c $(BIN)/LCF;;\ |
1491 | 39 |
sml*) if [ "$${MAKE_HTML}" = "true" ]; \ |
2094 | 40 |
then echo 'make_html := true; exit_use_dir"."; xML"$(BIN)/LCF" banner;' | $(BIN)/FOL;\ |
41 |
elif [ "$${MAKE_HTML-undefined}" != "undefined" ];\ |
|
42 |
then echo 'make_html := true; exit_use_dir"."; make_html := false; xML"$(BIN)/LCF" banner;' \ |
|
43 |
| $(BIN)/FOL;\ |
|
44 |
else echo 'exit_use_dir"."; xML"$(BIN)/LCF" banner;' \ |
|
45 |
| $(BIN)/FOL;\ |
|
46 |
fi;;\ |
|
468 | 47 |
*) echo Bad value for ISABELLECOMP: \ |
2117 | 48 |
\"$(COMP)\" is not poly or sml;;\ |
0 | 49 |
esac |
50 |
||
51 |
(BIN)/FOL: |
|
52 |
cd ../FOL; $(MAKE) |
|
53 |
||
2094 | 54 |
test: ex.ML $(BIN)/LCF |
2117 | 55 |
@case `expr "//$(COMP)" : '[^ ]*/\(.*\)'` in \ |
953
17d7fad9c9a2
Now calls exit_use instead of use, for prompt failure if errors are detected.
lcp
parents:
468
diff
changeset
|
56 |
poly*) echo 'exit_use"ex.ML"; quit();' | $(COMP) $(BIN)/LCF ;;\ |
17d7fad9c9a2
Now calls exit_use instead of use, for prompt failure if errors are detected.
lcp
parents:
468
diff
changeset
|
57 |
sml*) echo 'exit_use"ex.ML";' | $(BIN)/LCF;;\ |
468 | 58 |
*) echo Bad value for ISABELLECOMP: \ |
2117 | 59 |
\"$(COMP)\" is not poly or sml;;\ |
0 | 60 |
esac |
61 |
||
2094 | 62 |
.PRECIOUS: $(BIN)/FOL $(BIN)/LCF |