diff -r 3fee575c9dce -r 4141c2a8458b bin/isabelle --- a/bin/isabelle Sun Apr 03 19:47:29 2016 +0200 +++ b/bin/isabelle Sun Apr 03 21:32:57 2016 +0200 @@ -18,46 +18,40 @@ source "$ISABELLE_HOME/lib/scripts/getsettings" || exit 2 -## diagnostics +## external tool (shell script) + +if [ "$#" -ge 1 -a "$1" != "-?" ] +then + TOOL_NAME="$1" -function usage() -{ - echo - echo "Usage: $PRG NAME [ARGS ...]" - echo - echo " Start Isabelle tool NAME with ARGS; pass \"-?\" for tool specific help." - echo - echo "Available tools:" - perl -w "$ISABELLE_HOME/lib/scripts/tools.pl" - exit 1 -} - -function fail() -{ - echo "$1" >&2 - exit 2 -} + splitarray ":" "$ISABELLE_TOOLS"; TOOLS=("${SPLITARRAY[@]}") + for DIR in "${TOOLS[@]}" + do + TOOL="$DIR/$TOOL_NAME" + case "$TOOL" in + *~ | *.orig) ;; + *) + if [ -f "$TOOL" -a -x "$TOOL" ]; then + shift + exec "$TOOL" "$@" + fi + ;; + esac + done +fi -## args - -[ "$#" -lt 1 -o "$1" = "-?" ] && usage +## internal tool or usage (Scala) -TOOLNAME="$1" -shift - - -## main +isabelle_admin_build jars || exit $? -splitarray ":" "$ISABELLE_TOOLS"; TOOLS=("${SPLITARRAY[@]}") +case "$ISABELLE_JAVA_PLATFORM" in + x86-*) + eval "declare -a JAVA_ARGS=($ISABELLE_BUILD_JAVA_OPTIONS32)" + ;; + x86_64-*) + eval "declare -a JAVA_ARGS=($ISABELLE_BUILD_JAVA_OPTIONS64)" + ;; +esac -for DIR in "${TOOLS[@]}" -do - TOOL="$DIR/$TOOLNAME" - case "$TOOL" in - *~ | *.orig) ;; - *) [ -f "$TOOL" -a -x "$TOOL" ] && exec "$TOOL" "$@" ;; - esac -done - -fail "Unknown Isabelle tool: $TOOLNAME" +exec isabelle java "${JAVA_ARGS[@]}" isabelle.Isabelle_Tool "$@"