wenzelm@10503
|
1 |
# -*- shell-script -*-
|
wenzelm@2294
|
2 |
# $Id$
|
wenzelm@9818
|
3 |
# Author: Markus Wenzel, TU Muenchen
|
wenzelm@9818
|
4 |
# License: GPL (GNU GENERAL PUBLIC LICENSE)
|
wenzelm@2294
|
5 |
#
|
wenzelm@2309
|
6 |
# Isabelle settings -- site defaults.
|
wenzelm@9225
|
7 |
# Do *NOT* copy this file into your personal isabelle directory!!!
|
wenzelm@2309
|
8 |
|
wenzelm@2426
|
9 |
###
|
wenzelm@3177
|
10 |
### ML compiler settings (ESSENTIAL!)
|
wenzelm@2426
|
11 |
###
|
wenzelm@2294
|
12 |
|
wenzelm@9236
|
13 |
# Note that ML_HOME specifies the location of the actual compiler
|
wenzelm@9236
|
14 |
# binaries. Do not invent new ML system names unless you know what
|
wenzelm@9759
|
15 |
# you are doing. Only one of the sections below should be activated.
|
wenzelm@2294
|
16 |
|
kleing@14447
|
17 |
|
kleing@14461
|
18 |
# try finding the poly packages from the Isabelle site in the usual places
|
kleing@14461
|
19 |
POLYML_HOME=$(choosefrom \
|
kleing@14461
|
20 |
"$ISABELLE_HOME/contrib/polyml" \
|
kleing@14461
|
21 |
"$ISABELLE_HOME/../polyml" \
|
kleing@14461
|
22 |
"/usr/share/polyml" \
|
kleing@14461
|
23 |
"/usr/local/polyml" \
|
kleing@14461
|
24 |
"/opt/polyml")
|
kleing@14461
|
25 |
|
kleing@14461
|
26 |
if [ -n "$POLYML_HOME" -a -e "$POLYML_HOME/bin/polyml-version" ]; then
|
kleing@14461
|
27 |
# looks like Isabelle poly packages
|
kleing@14461
|
28 |
ML_SYSTEM=$("$POLYML_HOME/bin/polyml-version" 2>/dev/null || echo polyml)
|
kleing@14461
|
29 |
ML_PLATFORM=$("$POLYML_HOME/bin/polyml-platform" 2>/dev/null || echo unknown-platform)
|
kleing@14461
|
30 |
ML_HOME="$POLYML_HOME/$ML_PLATFORM"
|
kleing@14461
|
31 |
ML_OPTIONS="-h 15000"
|
kleing@14461
|
32 |
elif [ -e /usr/bin/poly -a -e /usr/lib/poly ]; then
|
kleing@14461
|
33 |
# maybe a shrink-wrapped polyml on x86-linux ...
|
kleing@14461
|
34 |
|
kleing@14613
|
35 |
# Poly/ML 4.0, 4.1, 4.1.x
|
kleing@14447
|
36 |
# include version number, needed for choosing right options
|
kleing@14447
|
37 |
ML_SYSTEM=polyml-4.1.3
|
kleing@14447
|
38 |
# processor/OS type
|
wenzelm@10205
|
39 |
ML_PLATFORM=x86-linux
|
kleing@14447
|
40 |
# where to find binaries
|
wenzelm@10205
|
41 |
ML_HOME=/usr/bin
|
kleing@14447
|
42 |
# where to find the standard database
|
wenzelm@10205
|
43 |
ML_DBASE=/usr/lib/poly/ML_dbase
|
kleing@14447
|
44 |
# options to pass to poly
|
wenzelm@12752
|
45 |
ML_OPTIONS="-h 15000"
|
wenzelm@10205
|
46 |
fi
|
wenzelm@8345
|
47 |
|
wenzelm@5708
|
48 |
# Standard ML of New Jersey 110 or later
|
wenzelm@8345
|
49 |
#ML_SYSTEM=smlnj-110
|
wenzelm@9787
|
50 |
#ML_HOME="$ISABELLE_HOME/../smlnj/bin"
|
wenzelm@8345
|
51 |
#ML_OPTIONS="@SMLdebug=/dev/null"
|
wenzelm@9787
|
52 |
#ML_PLATFORM=$(eval $("$ML_HOME/.arch-n-opsys" 2>/dev/null); echo "$HEAP_SUFFIX")
|
wenzelm@5708
|
53 |
|
wenzelm@9252
|
54 |
# Moscow ML 2.00 or later (experimental!)
|
wenzelm@9252
|
55 |
#ML_SYSTEM=mosml
|
wenzelm@9787
|
56 |
#ML_HOME="$ISABELLE_HOME/../mosml/bin"
|
wenzelm@9252
|
57 |
#ML_PLATFORM=""
|
wenzelm@9252
|
58 |
#ML_OPTIONS=""
|
wenzelm@9252
|
59 |
|
wenzelm@2426
|
60 |
|
wenzelm@2426
|
61 |
###
|
kleing@13920
|
62 |
### Compilation options for isatool usedir
|
kleing@13920
|
63 |
### (as on command line)
|
wenzelm@2435
|
64 |
###
|
wenzelm@2435
|
65 |
|
kleing@14253
|
66 |
ISABELLE_USEDIR_OPTIONS="-v true"
|
wenzelm@11569
|
67 |
|
kleing@14044
|
68 |
# for overriding proof objects in HOL image
|
kleing@14044
|
69 |
HOL_PROOF_OBJECTS=""
|
kleing@14044
|
70 |
|
wenzelm@2435
|
71 |
|
wenzelm@2435
|
72 |
###
|
wenzelm@7773
|
73 |
### Document preparation
|
wenzelm@7773
|
74 |
###
|
wenzelm@7773
|
75 |
|
kleing@13920
|
76 |
# latex command for isatool latex/document
|
wenzelm@7773
|
77 |
ISABELLE_LATEX="latex"
|
kleing@13920
|
78 |
|
kleing@13920
|
79 |
# pdflatex command for isatool latex/document
|
wenzelm@7773
|
80 |
ISABELLE_PDFLATEX="pdflatex"
|
kleing@13920
|
81 |
|
kleing@13920
|
82 |
# bibtex command for isatool latex/document
|
wenzelm@7813
|
83 |
ISABELLE_BIBTEX="bibtex"
|
kleing@13920
|
84 |
|
kleing@14344
|
85 |
# makeindex command for isatool latex/document
|
kleing@14344
|
86 |
ISABELLE_MAKEINDEX="makeindex"
|
kleing@14344
|
87 |
|
kleing@13920
|
88 |
# dvips command for isatool latex/document
|
wenzelm@7773
|
89 |
ISABELLE_DVIPS="dvips -D 600"
|
kleing@13920
|
90 |
|
kleing@13920
|
91 |
# epstopdf command for isatool latex/document
|
wenzelm@11800
|
92 |
ISABELLE_EPSTOPDF="epstopdf"
|
wenzelm@7773
|
93 |
|
kleing@13920
|
94 |
# Paranoia setting for strange latex installations ...
|
wenzelm@11062
|
95 |
#unset TEXMF
|
wenzelm@11062
|
96 |
|
kleing@13920
|
97 |
# If ISABELLE_THUMBPDF is set, isatool tries to
|
kleing@13920
|
98 |
# generate thumbnails for proof documents
|
kleing@13920
|
99 |
#
|
kleing@13920
|
100 |
# probably not generally available ...
|
wenzelm@11062
|
101 |
#type -path thumbpdf >/dev/null && ISABELLE_THUMBPDF="thumbpdf"
|
wenzelm@7864
|
102 |
|
wenzelm@7773
|
103 |
|
wenzelm@7773
|
104 |
###
|
wenzelm@2968
|
105 |
### Misc path settings
|
wenzelm@2426
|
106 |
###
|
wenzelm@2426
|
107 |
|
wenzelm@2426
|
108 |
# The place for user configuration, heap files, etc.
|
wenzelm@2294
|
109 |
ISABELLE_HOME_USER=~/isabelle
|
wenzelm@2294
|
110 |
|
wenzelm@3177
|
111 |
# Where to look for isabelle tools (multiple dirs separated by ':').
|
wenzelm@9787
|
112 |
ISABELLE_TOOLS="$ISABELLE_HOME/lib/Tools"
|
wenzelm@2786
|
113 |
|
wenzelm@4334
|
114 |
# Location for temporary files (should be on a local file system).
|
wenzelm@9787
|
115 |
ISABELLE_TMP_PREFIX="/tmp/isabelle-$USER"
|
wenzelm@4334
|
116 |
|
wenzelm@2786
|
117 |
|
wenzelm@9787
|
118 |
# Heap input locations. ML system identifier is included in lookup.
|
wenzelm@9787
|
119 |
ISABELLE_PATH="$ISABELLE_HOME_USER/heaps:$ISABELLE_HOME/heaps"
|
wenzelm@2786
|
120 |
|
wenzelm@9787
|
121 |
# Heap output location. ML system identifier is appended automatically later on.
|
wenzelm@2780
|
122 |
if [ "$THIS_IS_ISABELLE_BUILD" = true ]; then
|
wenzelm@9787
|
123 |
#Isabelle build tells us to store heaps etc. within the distribution.
|
wenzelm@9787
|
124 |
ISABELLE_OUTPUT="$ISABELLE_HOME/heaps"
|
wenzelm@9787
|
125 |
ISABELLE_BROWSER_INFO="$ISABELLE_HOME/browser_info"
|
wenzelm@2780
|
126 |
else
|
wenzelm@9787
|
127 |
ISABELLE_OUTPUT="$ISABELLE_HOME_USER/heaps"
|
wenzelm@9787
|
128 |
ISABELLE_BROWSER_INFO="$ISABELLE_HOME_USER/browser_info"
|
wenzelm@2780
|
129 |
fi
|
wenzelm@2780
|
130 |
|
wenzelm@9225
|
131 |
# Site settings check -- just to make it a little bit harder to copy this file!
|
wenzelm@9225
|
132 |
[ -n "$ISABELLE_SITE_SETTINGS_PRESENT" ] && \
|
wenzelm@9225
|
133 |
{ echo >&2 "### Isabelle site settings already present! Maybe copied etc/settings in full?"; }
|
wenzelm@9225
|
134 |
|
kleing@13920
|
135 |
|
kleing@13920
|
136 |
###
|
kleing@13920
|
137 |
### default logic, users may want to override this.
|
kleing@13920
|
138 |
###
|
wenzelm@3184
|
139 |
ISABELLE_LOGIC=HOL
|
wenzelm@2294
|
140 |
|
wenzelm@2786
|
141 |
|
kleing@13920
|
142 |
###
|
kleing@13920
|
143 |
### Docs
|
kleing@13920
|
144 |
###
|
wenzelm@2294
|
145 |
|
wenzelm@3177
|
146 |
#Where to look for docs (multiple dirs separated by ':').
|
wenzelm@9787
|
147 |
ISABELLE_DOCS="$ISABELLE_HOME/doc"
|
wenzelm@2345
|
148 |
|
wenzelm@3177
|
149 |
#The dvi file viewer
|
wenzelm@3062
|
150 |
DVI_VIEWER=xdvi
|
wenzelm@2426
|
151 |
#DVI_VIEWER="xdvi -geometry 498x704 -expert -s 5"
|
wenzelm@11103
|
152 |
#DVI_VIEWER="xdvi -geometry 711x1005 -expert -s 7"
|
wenzelm@2476
|
153 |
#DVI_VIEWER="xdvi -geometry 500x704 -expert -s 10"
|
wenzelm@3062
|
154 |
#DVI_VIEWER="xdvi -geometry 555x782 -expert -s 9"
|
wenzelm@2345
|
155 |
|
wenzelm@14933
|
156 |
#Printer spool command for PS files
|
wenzelm@14933
|
157 |
PRINT_COMMAND=lp
|
wenzelm@14933
|
158 |
|
wenzelm@2294
|
159 |
|
wenzelm@2426
|
160 |
###
|
wenzelm@2426
|
161 |
### Interfaces
|
wenzelm@2426
|
162 |
###
|
wenzelm@2426
|
163 |
|
kleing@13920
|
164 |
# ISABELLE_INTERFACE is the program which is run by the Isabelle command
|
kleing@13920
|
165 |
|
kleing@13920
|
166 |
# Fallback: the null interface (pass-through to raw isabelle process).
|
wenzelm@11552
|
167 |
ISABELLE_INTERFACE=none
|
wenzelm@2294
|
168 |
|
kleing@13920
|
169 |
# Emacs running (obsolete) Isamode.
|
wenzelm@2968
|
170 |
#ISABELLE_INTERFACE=emacs
|
wenzelm@9787
|
171 |
ISAMODE_HOME="$ISABELLE_HOME/contrib/Isamode"
|
wenzelm@5964
|
172 |
ISAMODE_OPTIONS=""
|
wenzelm@5964
|
173 |
|
kleing@13920
|
174 |
# Proof General path, look in a variety of places
|
wenzelm@9679
|
175 |
ISABELLE_INTERFACE=$(choosefrom \
|
wenzelm@9679
|
176 |
"$ISABELLE_HOME/contrib/ProofGeneral/isar/interface" \
|
wenzelm@9679
|
177 |
"$ISABELLE_HOME/../ProofGeneral/isar/interface" \
|
wenzelm@9787
|
178 |
"/usr/share/ProofGeneral/isar/interface" \
|
wenzelm@9948
|
179 |
"/usr/local/ProofGeneral/isar/interface" \
|
wenzelm@10070
|
180 |
"/opt/ProofGeneral/isar/interface" \
|
wenzelm@9956
|
181 |
"/usr/share/emacs/ProofGeneral/isar/interface" \
|
wenzelm@9679
|
182 |
"$ISABELLE_INTERFACE")
|
kleing@13920
|
183 |
|
kleing@13920
|
184 |
# Options to pass to Isabelle command when PG is selected as interface
|
wenzelm@5964
|
185 |
PROOFGENERAL_OPTIONS=""
|
wenzelm@11981
|
186 |
#PROOFGENERAL_OPTIONS="-m no_brackets -m no_type_brackets -x true"
|
wenzelm@7185
|
187 |
|
kleing@13920
|
188 |
# try xemacs first, else emacs
|
wenzelm@12476
|
189 |
type -path xemacs >/dev/null || PROOFGENERAL_OPTIONS="-p emacs $PROOFGENERAL_OPTIONS"
|
wenzelm@12476
|
190 |
|
wenzelm@12476
|
191 |
|
kleing@13920
|
192 |
# X-Symbol installation location (for Proof General, obsolete for PG >= 3.5)
|
wenzelm@9679
|
193 |
XSYMBOL_HOME=$(choosefrom \
|
wenzelm@9679
|
194 |
"$ISABELLE_HOME/contrib/x-symbol" \
|
wenzelm@9679
|
195 |
"$ISABELLE_HOME/../x-symbol" \
|
wenzelm@9787
|
196 |
"/usr/share/x-symbol" \
|
wenzelm@9948
|
197 |
"/usr/local/x-symbol" \
|
wenzelm@10070
|
198 |
"/opt/x-symbol" \
|
wenzelm@9679
|
199 |
"")
|
kleing@13920
|
200 |
|
kleing@13920
|
201 |
# Executed before xemacs with ProofGeneral is called.
|
kleing@13920
|
202 |
# Required for remote fonts only.
|
wenzelm@9994
|
203 |
#XSYMBOL_INSTALLFONTS="xset fp+ tcp/isafonts.informatik.tu-muenchen.de:7200"
|
wenzelm@9569
|
204 |
|
wenzelm@7185
|
205 |
|
wenzelm@7185
|
206 |
###
|
wenzelm@7185
|
207 |
### External reasoning tools
|
wenzelm@7185
|
208 |
###
|
wenzelm@7185
|
209 |
|
wenzelm@7194
|
210 |
## Set HOME only for tools you have installed!
|
wenzelm@7185
|
211 |
|
wenzelm@7185
|
212 |
# SVC (Stanford Validity Checker)
|
wenzelm@7185
|
213 |
#SVC_HOME=
|
wenzelm@7185
|
214 |
#SVC_MACHINE=i386-redhat-linux
|
wenzelm@7185
|
215 |
#SVC_MACHINE=sparc-sun-solaris
|
wenzelm@7296
|
216 |
|
wenzelm@7296
|
217 |
# Mucke (mu-calculus model checker)
|
wenzelm@7296
|
218 |
#MUCKE_HOME=/usr/local/bin
|
wenzelm@7296
|
219 |
|
wenzelm@7296
|
220 |
# Einhoven model checker
|
wenzelm@7296
|
221 |
#EINDHOVEN_HOME=/usr/local/bin
|
webertj@14451
|
222 |
|
webertj@14451
|
223 |
# ZChaff SAT solver
|
webertj@14451
|
224 |
#ZCHAFF_HOME=/usr/local/bin
|