wenzelm@10555: #!/usr/bin/env bash wenzelm@2292: # wenzelm@9786: # Author: Markus Wenzel, TU Muenchen wenzelm@2308: # wenzelm@28504: # Isabelle tool wrapper. wenzelm@2292: wenzelm@15843: if [ -L "$0" ]; then wenzelm@15843: TARGET="$(LC_ALL=C ls -l "$0" | sed 's/.* -> //')" wenzelm@15967: exec "$(cd "$(dirname "$0")"; cd "$(pwd -P)"; cd "$(dirname "$TARGET")"; pwd)/$(basename "$TARGET")" "$@" wenzelm@15843: fi wenzelm@15843: wenzelm@28504: wenzelm@28504: ## settings wenzelm@28504: wenzelm@28504: PRG="$(basename "$0")" wenzelm@28504: wenzelm@28504: ISABELLE_HOME="$(cd "$(dirname "$0")"; cd "$(pwd -P)"; cd ..; pwd)" wenzelm@28504: source "$ISABELLE_HOME/lib/scripts/getsettings" || exit 2 wenzelm@28504: wenzelm@28504: wenzelm@62829: ## external tool (shell script) wenzelm@62829: wenzelm@62829: if [ "$#" -ge 1 -a "$1" != "-?" ] wenzelm@62829: then wenzelm@62829: TOOL_NAME="$1" wenzelm@2292: wenzelm@62829: splitarray ":" "$ISABELLE_TOOLS"; TOOLS=("${SPLITARRAY[@]}") wenzelm@62829: for DIR in "${TOOLS[@]}" wenzelm@62829: do wenzelm@62829: TOOL="$DIR/$TOOL_NAME" wenzelm@62829: case "$TOOL" in wenzelm@62829: *~ | *.orig) ;; wenzelm@62829: *) wenzelm@62829: if [ -f "$TOOL" -a -x "$TOOL" ]; then wenzelm@62829: shift wenzelm@62829: exec "$TOOL" "$@" wenzelm@62829: fi wenzelm@62829: ;; wenzelm@62829: esac wenzelm@62829: done wenzelm@62829: fi wenzelm@28504: wenzelm@28504: wenzelm@62829: ## internal tool or usage (Scala) wenzelm@28504: wenzelm@62829: isabelle_admin_build jars || exit $? wenzelm@28504: wenzelm@66906: eval "declare -a JAVA_ARGS=($ISABELLE_TOOL_JAVA_OPTIONS)" wenzelm@62829: exec isabelle java "${JAVA_ARGS[@]}" isabelle.Isabelle_Tool "$@"