generate application based on $JEDIT_JAVA_OPTIONS $JEDIT_SYSTEM_OPTIONS at build time (see also src/Tools/jEdit/lib/Tools/jedit);
authorwenzelm
Mon, 09 Sep 2013 13:48:06 +0200
changeset 53483 74a4685a96c8
parent 53474 077a2758ceb4
child 53484 1100982a071c
generate application based on $JEDIT_JAVA_OPTIONS $JEDIT_SYSTEM_OPTIONS at build time (see also src/Tools/jEdit/lib/Tools/jedit);
Admin/Linux/Isabelle
Admin/lib/Tools/makedist_bundle
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Admin/Linux/Isabelle	Mon Sep 09 13:48:06 2013 +0200
@@ -0,0 +1,28 @@
+#!/usr/bin/env bash
+#
+# Author: Makarius
+#
+# Main Isabelle application wrapper.
+
+if [ -L "$0" ]; then
+  TARGET="$(LC_ALL=C ls -l "$0" | sed 's/.* -> //')"
+  exec "$(cd "$(dirname "$0")"; cd "$(pwd -P)"; cd "$(dirname "$TARGET")"; pwd)/$(basename "$TARGET")" "$@"
+fi
+
+
+## settings
+
+PRG="$(basename "$0")"
+
+ISABELLE_HOME="$(cd "$(dirname "$0")"; cd "$(pwd -P)"; pwd)"
+source "$ISABELLE_HOME/lib/scripts/getsettings" || exit 2
+
+
+## main
+
+declare -a JAVA_ARGS
+JAVA_ARGS=({JAVA_ARGS})
+
+exec "$ISABELLE_HOME/bin/isabelle" java "${JAVA_ARGS[@]}" \
+  -classpath "$ISABELLE_HOME/src/Tools/jEdit/dist/jedit.jar" isabelle.Main "$@"
+
--- a/Admin/lib/Tools/makedist_bundle	Sun Sep 08 19:25:06 2013 +0200
+++ b/Admin/lib/Tools/makedist_bundle	Mon Sep 09 13:48:06 2013 +0200
@@ -121,19 +121,14 @@
 }
 
 
-# platform-specific patches
+# platform-specific setup (inside archive)
 
 case "$PLATFORM_FAMILY" in
   linux)
     purge_contrib '-name "x86*-darwin" -o -name "x86*-cygwin" -o -name "x86*-windows"'
-    cat > "$ISABELLE_TARGET/$ISABELLE_NAME" <<EOF
-#!/usr/bin/env bash
-
-ISABELLE_TOOL="\$(dirname "\$0")"/bin/isabelle
-JEDIT_HOME="\$("\$ISABELLE_TOOL" getenv -b JEDIT_HOME)"
-
-exec "\$ISABELLE_TOOL" java -classpath "\$JEDIT_HOME/dist/jedit.jar" isabelle.Main "\$@"
-EOF
+    cat "$ISABELLE_HOME/Admin/Linux/Isabelle" | \
+      perl -p -e "s,{JAVA_ARGS},$JEDIT_JAVA_OPTIONS $JEDIT_SYSTEM_OPTIONS,g;" \
+        > "$ISABELLE_TARGET/$ISABELLE_NAME"
     chmod +x "$ISABELLE_TARGET/$ISABELLE_NAME"
     ;;
   macos)
@@ -193,7 +188,7 @@
 tar -C "$TMP" -c -z -f "$BUNDLE_ARCHIVE" "$ISABELLE_NAME" || exit 2
 
 
-# application
+# platform-specific setup (outside archive)
 
 if [ "$ISABELLE_PLATFORM_FAMILY" = linux -a "$PLATFORM_FAMILY" != macos -o "$ISABELLE_PLATFORM_FAMILY" = macos ]
 then