lib/Tools/build_dialog
changeset 50546 1b01a57d2749
parent 50405 366c4a602500
child 52443 725916b7dee5
--- a/lib/Tools/build_dialog	Sat Dec 15 12:55:11 2012 +0100
+++ b/lib/Tools/build_dialog	Sat Dec 15 13:14:55 2012 +0100
@@ -12,14 +12,15 @@
 function usage()
 {
   echo
-  echo "Usage: isabelle $PRG [OPTIONS] LOGIC"
+  echo "Usage: isabelle $PRG [OPTIONS]"
   echo
   echo "  Options are:"
   echo "    -L OPTION    default logic via system option"
   echo "    -d DIR       include session directory"
+  echo "    -l NAME      logic session name"
   echo "    -s           system build mode: produce output in ISABELLE_HOME"
   echo
-  echo "  Build Isabelle session image LOGIC via GUI dialog."
+  echo "  Build Isabelle logic session image via GUI dialog (default: $ISABELLE_LOGIC)."
   echo
   exit 1
 }
@@ -35,9 +36,10 @@
 
 LOGIC_OPTION=""
 declare -a INCLUDE_DIRS=()
+LOGIC=""
 SYSTEM_MODE=false
 
-while getopts "L:d:s" OPT
+while getopts "L:d:l:s" OPT
 do
   case "$OPT" in
     L)
@@ -46,6 +48,9 @@
     d)
       INCLUDE_DIRS["${#INCLUDE_DIRS[@]}"]="$OPTARG"
       ;;
+    l)
+      LOGIC="$OPTARG"
+      ;;
     s)
       SYSTEM_MODE="true"
       ;;
@@ -60,9 +65,7 @@
 
 # args
 
-[ "$#" -ne 1 ] && usage
-
-LOGIC="$1"; shift
+[ "$#" -ne 0 ] && usage
 
 
 ## main
@@ -70,5 +73,5 @@
 [ -e "$ISABELLE_HOME/Admin/build" ] && { "$ISABELLE_HOME/Admin/build" jars || exit $?; }
 
 "$ISABELLE_TOOL" java isabelle.Build_Dialog \
-  "$LOGIC_OPTION" "$SYSTEM_MODE" "$LOGIC" "${INCLUDE_DIRS[@]}"
+  "$LOGIC_OPTION" "$LOGIC" "$SYSTEM_MODE" "${INCLUDE_DIRS[@]}"