equal
deleted
inserted
replaced
|
1 ######################################################################### |
|
2 # # |
|
3 # Makefile for Isabelle (LCF) # |
|
4 # # |
|
5 ######################################################################### |
|
6 |
|
7 #To make the system, cd to this directory and type |
|
8 # make |
|
9 #To make the system and test it on standard examples, type |
|
10 # make test |
|
11 |
|
12 #Environment variable ISABELLECOMP specifies the compiler. |
|
13 #Environment variable ISABELLEBIN specifies the destination directory. |
|
14 #For Poly/ML, ISABELLEBIN must begin with a / |
|
15 |
|
16 #Makes FOL if this file is ABSENT -- but not |
|
17 #if it is out of date, since this Makefile does not know its dependencies! |
|
18 |
|
19 BIN = $(ISABELLEBIN) |
|
20 COMP = $(ISABELLECOMP) |
|
21 FILES = ROOT.ML lcf.thy lcf.ML simpdata.ML pair.ML fix.ML ex.ML |
|
22 |
|
23 #Uses cp rather than make_database because Poly/ML allows only 3 levels |
|
24 $(BIN)/LCF: $(BIN)/FOL $(FILES) |
|
25 case "$(COMP)" in \ |
|
26 poly*) cp $(BIN)/FOL $(BIN)/LCF;\ |
|
27 echo 'open PolyML; use"ROOT";' | $(COMP) $(BIN)/LCF ;;\ |
|
28 sml*) echo 'use"ROOT.ML"; xML"$(BIN)/LCF" banner;' | $(BIN)/FOL;;\ |
|
29 *) echo Bad value for ISABELLECOMP;;\ |
|
30 esac |
|
31 |
|
32 (BIN)/FOL: |
|
33 cd ../FOL; $(MAKE) |
|
34 |
|
35 test: ex.ML $(BIN)/LCF |
|
36 case "$(COMP)" in \ |
|
37 poly*) echo 'use"ex.ML"; quit();' | $(COMP) $(BIN)/LCF ;;\ |
|
38 sml*) echo 'use"ex.ML";' | $(BIN)/LCF;;\ |
|
39 *) echo Bad value for ISABELLECOMP;;\ |
|
40 esac |
|
41 |
|
42 .PRECIOUS: $(BIN)/FOL $(BIN)/LCF |