basic support for components (which imitate the usual Isabelle directory layout);
1 # -*- shell-script -*- :mode=shellscript:
3 # Isabelle settings -- site defaults.
6 # * See the system manual for explanations on Isabelle settings
7 # * DO NOT EDIT the repository copy of this file!
8 # * DO NOT COPY this file into your personal isabelle directory!
11 ### ML compiler settings (ESSENTIAL!)
14 # ML_HOME specifies the location of the actual compiler binaries. Do
15 # not invent new ML system names unless you know what you are doing.
16 # Only one of the sections below should be activated.
18 # Poly/ML 5.x (automated settings)
19 POLY_HOME="$(type -p poly)"; [ -n "$POLY_HOME" ] && POLY_HOME="$(dirname "$POLY_HOME")"
20 ML_PLATFORM=$("$ISABELLE_HOME/lib/scripts/polyml-platform")
21 ML_HOME=$(choosefrom \
22 "$ISABELLE_HOME/contrib/polyml/$ML_PLATFORM" \
23 "$ISABELLE_HOME/../polyml/$ML_PLATFORM" \
24 "/usr/local/polyml/$ML_PLATFORM" \
25 "/usr/share/polyml/$ML_PLATFORM" \
26 "/opt/polyml/$ML_PLATFORM" \
28 ML_SYSTEM=$("$ISABELLE_HOME/lib/scripts/polyml-version")
30 ML_SOURCES="$ML_HOME/../src"
33 #ML_PLATFORM=x86-linux
34 #ML_HOME=/usr/local/polyml/x86-linux
35 #ML_SYSTEM=polyml-5.2.1
38 # Poly/ML 5.2.1 (64 bit)
39 #ML_PLATFORM=x86_64-linux
40 #ML_HOME=/usr/local/polyml/x86_64-linux
41 #ML_SYSTEM=polyml-5.2.1
44 # Poly/ML 5.3 (experimental)
45 #ML_PLATFORM=x86-linux
46 #ML_HOME=/usr/local/polyml/x86-linux
47 #ML_SYSTEM=polyml-experimental
49 #ML_SOURCES="$ML_HOME/../src"
51 # Standard ML of New Jersey (slow!)
53 #ML_HOME="/usr/local/smlnj/bin"
54 #ML_OPTIONS="@SMLdebug=/dev/null"
55 #ML_PLATFORM=$(eval $("$ML_HOME/.arch-n-opsys" 2>/dev/null); echo "$HEAP_SUFFIX")
56 #SMLNJ_CYGWIN_RUNTIME=1
58 # Moscow ML 2.00 (experimental!)
60 #ML_HOME="/usr/local/mosml/bin"
66 ### JVM components (Scala or Java)
70 ISABELLE_SCALA="scala"
72 [ -z "$SCALA_HOME" ] && SCALA_HOME=$(choosefrom \
73 "$ISABELLE_HOME/contrib/scala" \
74 "$ISABELLE_HOME/../scala" \
77 [ -n "$SCALA_HOME" ] && ISABELLE_SCALA="$SCALA_HOME/bin/scala"
79 classpath "$ISABELLE_HOME/lib/classes/Pure.jar"
83 ### Interactive sessions (cf. isabelle tty)
86 ISABELLE_LINE_EDITOR=""
87 [ -z "$ISABELLE_LINE_EDITOR" ] && ISABELLE_LINE_EDITOR="$(type -p rlwrap)"
88 [ -z "$ISABELLE_LINE_EDITOR" ] && ISABELLE_LINE_EDITOR="$(type -p ledit)"
92 ### Batch sessions (cf. isabelle usedir)
95 ISABELLE_USEDIR_OPTIONS="-M max -p 1 -q 2 -v true -V outline=/proof,/ML"
97 # Specifically for the HOL image
99 #HOL_USEDIR_OPTIONS="-p 2 -q 1"
101 #Source file identification (default: full name + date stamp)
102 ISABELLE_FILE_IDENT=""
103 #ISABELLE_FILE_IDENT="md5"
104 #ISABELLE_FILE_IDENT="md5sum"
105 #ISABELLE_FILE_IDENT="sha1sum"
106 #ISABELLE_FILE_IDENT="openssl dgst -sha1"
110 ### Document preparation (cf. isabelle latex/document)
113 ISABELLE_LATEX="latex"
114 ISABELLE_PDFLATEX="pdflatex"
115 ISABELLE_BIBTEX="bibtex"
116 ISABELLE_MAKEINDEX="makeindex"
117 ISABELLE_DVIPS="dvips -D 600"
118 ISABELLE_EPSTOPDF="epstopdf"
120 # Paranoia setting for strange latex installations ...
125 ### Misc path settings
128 # The place for user configuration, heap files, etc.
129 ISABELLE_HOME_USER=~/.isabelle
131 # Where to look for isabelle tools (multiple dirs separated by ':').
132 ISABELLE_TOOLS="$ISABELLE_HOME/lib/Tools"
134 # Location for temporary files (should be on a local file system).
135 ISABELLE_TMP_PREFIX="/tmp/isabelle-$USER"
137 # Heap input locations. ML system identifier is included in lookup.
138 ISABELLE_PATH="$ISABELLE_HOME_USER/heaps/$ISABELLE_IDENTIFIER:$ISABELLE_HOME/heaps"
140 # Heap output location. ML system identifier is appended automatically later on.
141 ISABELLE_OUTPUT="$ISABELLE_HOME_USER/heaps/$ISABELLE_IDENTIFIER"
142 ISABELLE_BROWSER_INFO="$ISABELLE_HOME_USER/browser_info"
144 # Site settings check -- just to make it a little bit harder to copy this file verbatim!
145 [ -n "$ISABELLE_SITE_SETTINGS_PRESENT" ] && \
146 { echo >&2 "### Isabelle site settings already present! Maybe copied etc/settings in full?"; }
147 ISABELLE_SITE_SETTINGS_PRESENT=true
161 # Where to look for docs (multiple dirs separated by ':').
162 ISABELLE_DOCS="$ISABELLE_HOME/doc"
164 # Preferred document format
165 ISABELLE_DOC_FORMAT=pdf
167 # The dvi file viewer
169 #DVI_VIEWER="xdvi -geometry 498x704 -expert -s 5"
170 #DVI_VIEWER="xdvi -geometry 711x1005 -expert -s 7"
171 #DVI_VIEWER="xdvi -geometry 500x704 -expert -s 10"
172 #DVI_VIEWER="xdvi -geometry 555x782 -expert -s 9"
174 # The pdf file viewer
175 if [ $(uname -s) = Darwin ]; then
184 # Printer spool command for PS files
189 ### Proof General / Emacs
192 # Proof General home, look in a variety of places
193 PROOFGENERAL_HOME=$(choosefrom \
194 "$ISABELLE_HOME/contrib/ProofGeneral" \
195 "$ISABELLE_HOME/../ProofGeneral" \
196 "/usr/local/ProofGeneral" \
197 "/usr/share/ProofGeneral" \
198 "/opt/ProofGeneral" \
201 PROOFGENERAL_OPTIONS=""
202 #PROOFGENERAL_OPTIONS="-m no_brackets -m no_type_brackets"
204 # Automatic setup of remote fonts
205 #XSYMBOL_INSTALLFONTS="xset fp+ tcp/isafonts.informatik.tu-muenchen.de:7200"
206 XSYMBOL_INSTALLFONTS=""
213 JEDIT_HOME=$(choosefrom \
214 "$ISABELLE_HOME/contrib/jedit" \
215 "$ISABELLE_HOME/../jedit" \
221 JEDIT_JAVA_OPTIONS=""
222 #JEDIT_JAVA_OPTIONS="-server -Xms128m -Xmx512m"
223 JEDIT_OPTIONS="-reuseview -noserver -nobackground"
227 ### External reasoning tools
230 ## Set HOME only for tools you have installed!
233 E_HOME=$(choosefrom \
234 "$ISABELLE_HOME/contrib/E/$ML_PLATFORM" \
235 "$ISABELLE_HOME/../E/$ML_PLATFORM" \
236 "/usr/local/E/$ML_PLATFORM" \
238 VAMPIRE_HOME=$(choosefrom \
239 "$ISABELLE_HOME/contrib/vampire/$ML_PLATFORM" \
240 "$ISABELLE_HOME/../vampire/$ML_PLATFORM" \
241 "/usr/local/vampire/$ML_PLATFORM" \
243 SPASS_HOME=$(choosefrom \
244 "$ISABELLE_HOME/contrib/spass/$ML_PLATFORM/bin" \
245 "$ISABELLE_HOME/../spass/$ML_PLATFORM/bin" \
246 "/usr/local/spass/$ML_PLATFORM" \
249 # HOL4 proof objects (cf. Isabelle/src/HOL/Import)
250 #HOL4_PROOFS="$ISABELLE_HOME_USER/proofs:$ISABELLE_HOME/proofs"
252 # SVC (Stanford Validity Checker)
254 #SVC_MACHINE=i386-redhat-linux
255 #SVC_MACHINE=sparc-sun-solaris
257 # Mucke (mu-calculus model checker)
258 #MUCKE_HOME=/usr/local/bin
260 # Einhoven model checker
261 #EINDHOVEN_HOME=/usr/local/bin
263 # MiniSat 1.14 (SAT Solver, cf. Isabelle/src/HOL/Tools/sat_solver.ML)
264 #MINISAT_HOME=/usr/local/bin
266 # zChaff (SAT Solver, cf. Isabelle/src/HOL/Tools/sat_solver.ML)
267 #ZCHAFF_HOME=/usr/local/bin
269 # BerkMin561 (SAT Solver, cf. Isabelle/src/HOL/Tools/sat_solver.ML)
270 #BERKMIN_HOME=/usr/local/bin
271 #BERKMIN_EXE=BerkMin561-linux
272 #BERKMIN_EXE=BerkMin561-solaris
274 # Jerusat 1.3 (SAT Solver, cf. Isabelle/src/HOL/Tools/sat_solver.ML)
275 #JERUSAT_HOME=/usr/local/bin
277 # For configuring HOL/Matrix/cplex
278 # LP_SOLVER is the default solver. It can be changed during runtime via Cplex.set_solver.
279 # First option: use the commercial cplex solver
282 # Second option: use the open source glpk solver