Isabelle
author wenzelm
Wed, 19 Jan 2011 21:00:16 +0100
changeset 41614 b7cd80330a16
parent 40571 fbac01813bff
child 43521 d477b92109b8
permissions -rwxr-xr-x
added librarypath: shared library convenience in bash, keeping LD_LIBRARY_PATH and DYLD_LIBRARY_PATH separate;
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
31919
e587a888bab5 Generic Isabelle application wrapper.
wenzelm
parents:
diff changeset
     1
#!/usr/bin/env bash
e587a888bab5 Generic Isabelle application wrapper.
wenzelm
parents:
diff changeset
     2
#
e587a888bab5 Generic Isabelle application wrapper.
wenzelm
parents:
diff changeset
     3
# Author: Makarius
e587a888bab5 Generic Isabelle application wrapper.
wenzelm
parents:
diff changeset
     4
#
e587a888bab5 Generic Isabelle application wrapper.
wenzelm
parents:
diff changeset
     5
# Generic Isabelle application wrapper.
e587a888bab5 Generic Isabelle application wrapper.
wenzelm
parents:
diff changeset
     6
e587a888bab5 Generic Isabelle application wrapper.
wenzelm
parents:
diff changeset
     7
if [ -L "$0" ]; then
e587a888bab5 Generic Isabelle application wrapper.
wenzelm
parents:
diff changeset
     8
  TARGET="$(LC_ALL=C ls -l "$0" | sed 's/.* -> //')"
e587a888bab5 Generic Isabelle application wrapper.
wenzelm
parents:
diff changeset
     9
  exec "$(cd "$(dirname "$0")"; cd "$(pwd -P)"; cd "$(dirname "$TARGET")"; pwd)/$(basename "$TARGET")" "$@"
e587a888bab5 Generic Isabelle application wrapper.
wenzelm
parents:
diff changeset
    10
fi
e587a888bab5 Generic Isabelle application wrapper.
wenzelm
parents:
diff changeset
    11
e587a888bab5 Generic Isabelle application wrapper.
wenzelm
parents:
diff changeset
    12
e587a888bab5 Generic Isabelle application wrapper.
wenzelm
parents:
diff changeset
    13
## settings
e587a888bab5 Generic Isabelle application wrapper.
wenzelm
parents:
diff changeset
    14
e587a888bab5 Generic Isabelle application wrapper.
wenzelm
parents:
diff changeset
    15
ISABELLE_HOME="$(cd "$(dirname "$0")"; pwd -P)"
e587a888bab5 Generic Isabelle application wrapper.
wenzelm
parents:
diff changeset
    16
source "$ISABELLE_HOME/lib/scripts/getsettings" || exit 2
e587a888bab5 Generic Isabelle application wrapper.
wenzelm
parents:
diff changeset
    17
31922
d6f8f3bfe329 allow reloading of settings within JVM process;
wenzelm
parents: 31920
diff changeset
    18
unset ISABELLE_SETTINGS_PRESENT
34282
549969a7f582 simplified build/bootstrap of Isabelle/Scala components -- avoid make;
wenzelm
parents: 31922
diff changeset
    19
unset ISABELLE_SITE_SETTINGS_PRESENT
31922
d6f8f3bfe329 allow reloading of settings within JVM process;
wenzelm
parents: 31920
diff changeset
    20
31919
e587a888bab5 Generic Isabelle application wrapper.
wenzelm
parents:
diff changeset
    21
e587a888bab5 Generic Isabelle application wrapper.
wenzelm
parents:
diff changeset
    22
## main
e587a888bab5 Generic Isabelle application wrapper.
wenzelm
parents:
diff changeset
    23
34282
549969a7f582 simplified build/bootstrap of Isabelle/Scala components -- avoid make;
wenzelm
parents: 31922
diff changeset
    24
[ -e "$ISABELLE_HOME/Admin/build" ] && "$ISABELLE_HOME/Admin/build" jars
549969a7f582 simplified build/bootstrap of Isabelle/Scala components -- avoid make;
wenzelm
parents: 31922
diff changeset
    25
31919
e587a888bab5 Generic Isabelle application wrapper.
wenzelm
parents:
diff changeset
    26
CLASSPATH="$(jvmpath "$CLASSPATH")"
40571
fbac01813bff more robust determination of java executable;
wenzelm
parents: 34282
diff changeset
    27
exec "$ISABELLE_TOOL" java \
31920
105bd1abff50 isabelle.home: native jvmpath;
wenzelm
parents: 31919
diff changeset
    28
  "-Disabelle.home=$(jvmpath "$ISABELLE_HOME")" \
31919
e587a888bab5 Generic Isabelle application wrapper.
wenzelm
parents:
diff changeset
    29
  -jar "$(jvmpath "$ISABELLE_HOME/lib/classes/isabelle-scala.jar")" "$@"