bin/isabelle-process
changeset 48698 2585042b1a30
parent 45056 bbd7eac14df3
child 51312 0ce544fbb509
--- a/bin/isabelle-process	Mon Aug 06 17:54:05 2012 +0200
+++ b/bin/isabelle-process	Mon Aug 06 21:11:42 2012 +0200
@@ -231,12 +231,16 @@
 elif [ -n "$PROOFGENERAL" ]; then
   MLTEXT="$MLTEXT; ProofGeneral.init $ISAR;"
 elif [ "$ISAR" = true ]; then
-  MLTEXT="$MLTEXT; Isar.main();"
+  if [ -z "$ISABELLE_PROCESS_OPTIONS" ]; then
+    ISABELLE_PROCESS_OPTIONS="$ISABELLE_TMP/options"
+    "$ISABELLE_TOOL" options -x "$ISABELLE_PROCESS_OPTIONS" || fail "Failed to retrieve options"
+  fi
+  MLTEXT="$MLTEXT; Isar.main ();"
 else
   NICE=""
 fi
 
-export INFILE OUTFILE MLTEXT TERMINATE NOWRITE ISABELLE_PID ISABELLE_TMP
+export INFILE OUTFILE MLTEXT TERMINATE NOWRITE ISABELLE_PID ISABELLE_TMP ISABELLE_PROCESS_OPTIONS
 
 if [ -f "$ISABELLE_HOME/lib/scripts/run-$ML_SYSTEM" ]; then
   $NICE "$ISABELLE_HOME/lib/scripts/run-$ML_SYSTEM"
@@ -245,6 +249,7 @@
 fi
 RC="$?"
 
+[ -n "$ISABELLE_PROCESS_OPTIONS" ] && rm -f "$ISABELLE_PROCESS_OPTIONS"
 rmdir "$ISABELLE_TMP"
 
 exit "$RC"