lib/Tools/usedir
author wenzelm
Thu, 27 Sep 2001 12:22:45 +0200
changeset 11577 68323aa9575d
parent 11543 d61b913431c5
child 11847 82df5977101b
permissions -rwxr-xr-x
option -v;
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
10555
2323ec838401 /usr/bin/env bash;
wenzelm
parents: 10511
diff changeset
     1
#!/usr/bin/env bash
2808
e8a224e41b9f usedir -- build object-logic or run examples;
wenzelm
parents:
diff changeset
     2
#
e8a224e41b9f usedir -- build object-logic or run examples;
wenzelm
parents:
diff changeset
     3
# $Id$
9788
wenzelm
parents: 9237
diff changeset
     4
# Author: Markus Wenzel, TU Muenchen
wenzelm
parents: 9237
diff changeset
     5
# License: GPL (GNU GENERAL PUBLIC LICENSE)
2808
e8a224e41b9f usedir -- build object-logic or run examples;
wenzelm
parents:
diff changeset
     6
#
e8a224e41b9f usedir -- build object-logic or run examples;
wenzelm
parents:
diff changeset
     7
# DESCRIPTION: build object-logic or run examples
e8a224e41b9f usedir -- build object-logic or run examples;
wenzelm
parents:
diff changeset
     8
e8a224e41b9f usedir -- build object-logic or run examples;
wenzelm
parents:
diff changeset
     9
e8a224e41b9f usedir -- build object-logic or run examples;
wenzelm
parents:
diff changeset
    10
## diagnostics
e8a224e41b9f usedir -- build object-logic or run examples;
wenzelm
parents:
diff changeset
    11
10511
wenzelm
parents: 9788
diff changeset
    12
PRG="$(basename "$0")"
2808
e8a224e41b9f usedir -- build object-logic or run examples;
wenzelm
parents:
diff changeset
    13
e8a224e41b9f usedir -- build object-logic or run examples;
wenzelm
parents:
diff changeset
    14
function usage()
e8a224e41b9f usedir -- build object-logic or run examples;
wenzelm
parents:
diff changeset
    15
{
e8a224e41b9f usedir -- build object-logic or run examples;
wenzelm
parents:
diff changeset
    16
  echo
9237
161fb7f00414 fixed usage;
wenzelm
parents: 9047
diff changeset
    17
  echo "Usage: $PRG [OPTIONS] LOGIC NAME"
2808
e8a224e41b9f usedir -- build object-logic or run examples;
wenzelm
parents:
diff changeset
    18
  echo
e8a224e41b9f usedir -- build object-logic or run examples;
wenzelm
parents:
diff changeset
    19
  echo "  Options are:"
8197
baab8e487fad -D PATH: dump generated document sources into PATH;
wenzelm
parents: 7888
diff changeset
    20
  echo "    -D PATH      dump generated document sources into PATH"
6940
ee6640456cbb -B option;
wenzelm
parents: 6652
diff changeset
    21
  echo "    -P PATH      set path for remote theory browsing information"
6212
974310f9ca7d Session.init;
wenzelm
parents: 5034
diff changeset
    22
  echo "    -b           build mode (output heap image, using current dir)"
8359
124ad46105dd option -c: tell ML system to compress output image;
wenzelm
parents: 8241
diff changeset
    23
  echo "    -c BOOL      tell ML system to compress output image (default true)"
7737
acaf55bee03e document preparation options: -c -d;
wenzelm
parents: 7461
diff changeset
    24
  echo "    -d FORMAT    build document as FORMAT (default false)"
10562
fcd29e58c40c option -m;
wenzelm
parents: 10555
diff changeset
    25
  echo "    -i BOOL      generate theory browser information (default false)"
fcd29e58c40c option -m;
wenzelm
parents: 10555
diff changeset
    26
  echo "    -m MODE      add print mode for output"
11535
7f4c5cdea239 Added new option for setting level of detail for proof objects.
berghofe
parents: 10585
diff changeset
    27
  echo "    -p LEVEL     set level of detail for proof objects"
6212
974310f9ca7d Session.init;
wenzelm
parents: 5034
diff changeset
    28
  echo "    -r           reset session path"
2808
e8a224e41b9f usedir -- build object-logic or run examples;
wenzelm
parents:
diff changeset
    29
  echo "    -s NAME      override session NAME"
11577
68323aa9575d option -v;
wenzelm
parents: 11543
diff changeset
    30
  echo "    -v BOOL      be verbose (default false)"
2808
e8a224e41b9f usedir -- build object-logic or run examples;
wenzelm
parents:
diff changeset
    31
  echo
e8a224e41b9f usedir -- build object-logic or run examples;
wenzelm
parents:
diff changeset
    32
  echo "  Build object-logic or run examples. Also creates browsing"
e8a224e41b9f usedir -- build object-logic or run examples;
wenzelm
parents:
diff changeset
    33
  echo "  information (HTML etc.) according to settings."
e8a224e41b9f usedir -- build object-logic or run examples;
wenzelm
parents:
diff changeset
    34
  echo
7461
94ae093f6706 usage: tell ISABELLE_USEDIR_OPTIONS;
wenzelm
parents: 7276
diff changeset
    35
  echo "  ISABELLE_USEDIR_OPTIONS=$ISABELLE_USEDIR_OPTIONS"
94ae093f6706 usage: tell ISABELLE_USEDIR_OPTIONS;
wenzelm
parents: 7276
diff changeset
    36
  echo
2808
e8a224e41b9f usedir -- build object-logic or run examples;
wenzelm
parents:
diff changeset
    37
  exit 1
e8a224e41b9f usedir -- build object-logic or run examples;
wenzelm
parents:
diff changeset
    38
}
e8a224e41b9f usedir -- build object-logic or run examples;
wenzelm
parents:
diff changeset
    39
11577
68323aa9575d option -v;
wenzelm
parents: 11543
diff changeset
    40
function fail()
68323aa9575d option -v;
wenzelm
parents: 11543
diff changeset
    41
{
68323aa9575d option -v;
wenzelm
parents: 11543
diff changeset
    42
  echo "$1" >&2
68323aa9575d option -v;
wenzelm
parents: 11543
diff changeset
    43
  exit 2
68323aa9575d option -v;
wenzelm
parents: 11543
diff changeset
    44
}
68323aa9575d option -v;
wenzelm
parents: 11543
diff changeset
    45
68323aa9575d option -v;
wenzelm
parents: 11543
diff changeset
    46
function check_bool()
68323aa9575d option -v;
wenzelm
parents: 11543
diff changeset
    47
{
68323aa9575d option -v;
wenzelm
parents: 11543
diff changeset
    48
  [ "$1" = true -o "$1" = false ] || fail "Bad boolean: \"$1\""
68323aa9575d option -v;
wenzelm
parents: 11543
diff changeset
    49
}
68323aa9575d option -v;
wenzelm
parents: 11543
diff changeset
    50
68323aa9575d option -v;
wenzelm
parents: 11543
diff changeset
    51
function check_number()
68323aa9575d option -v;
wenzelm
parents: 11543
diff changeset
    52
{
68323aa9575d option -v;
wenzelm
parents: 11543
diff changeset
    53
  [ -n "$1" -a -z "$(echo "$1" | tr -d [0-9])" ] || fail "Bad number: \"$1\""
68323aa9575d option -v;
wenzelm
parents: 11543
diff changeset
    54
}
68323aa9575d option -v;
wenzelm
parents: 11543
diff changeset
    55
2808
e8a224e41b9f usedir -- build object-logic or run examples;
wenzelm
parents:
diff changeset
    56
e8a224e41b9f usedir -- build object-logic or run examples;
wenzelm
parents:
diff changeset
    57
## process command line
e8a224e41b9f usedir -- build object-logic or run examples;
wenzelm
parents:
diff changeset
    58
e8a224e41b9f usedir -- build object-logic or run examples;
wenzelm
parents:
diff changeset
    59
# options
e8a224e41b9f usedir -- build object-logic or run examples;
wenzelm
parents:
diff changeset
    60
8197
baab8e487fad -D PATH: dump generated document sources into PATH;
wenzelm
parents: 7888
diff changeset
    61
DUMP=""
baab8e487fad -D PATH: dump generated document sources into PATH;
wenzelm
parents: 7888
diff changeset
    62
RPATH=""
2808
e8a224e41b9f usedir -- build object-logic or run examples;
wenzelm
parents:
diff changeset
    63
BUILD=""
8747
22580c8bc62f fixed -c default value;
wenzelm
parents: 8568
diff changeset
    64
COMPRESS=true
7737
acaf55bee03e document preparation options: -c -d;
wenzelm
parents: 7461
diff changeset
    65
DOCUMENT=false
3747
cd9b6c86926c There is now one single option -i for generating theory browsing
berghofe
parents: 3636
diff changeset
    66
INFO=false
10562
fcd29e58c40c option -m;
wenzelm
parents: 10555
diff changeset
    67
MODES=""
6212
974310f9ca7d Session.init;
wenzelm
parents: 5034
diff changeset
    68
RESET=false
2808
e8a224e41b9f usedir -- build object-logic or run examples;
wenzelm
parents:
diff changeset
    69
SESSION=""
11543
d61b913431c5 renamed `keep_derivs' to `proofs', and made an integer;
wenzelm
parents: 11535
diff changeset
    70
PROOFS=0
11577
68323aa9575d option -v;
wenzelm
parents: 11543
diff changeset
    71
VERBOSE=false
2808
e8a224e41b9f usedir -- build object-logic or run examples;
wenzelm
parents:
diff changeset
    72
2917
c7411fce37e4 added -g, -h options;
wenzelm
parents: 2849
diff changeset
    73
function getoptions()
c7411fce37e4 added -g, -h options;
wenzelm
parents: 2849
diff changeset
    74
{
c7411fce37e4 added -g, -h options;
wenzelm
parents: 2849
diff changeset
    75
  OPTIND=1
11577
68323aa9575d option -v;
wenzelm
parents: 11543
diff changeset
    76
  while getopts "D:P:bc:d:i:m:p:rs:v:" OPT
2917
c7411fce37e4 added -g, -h options;
wenzelm
parents: 2849
diff changeset
    77
  do
c7411fce37e4 added -g, -h options;
wenzelm
parents: 2849
diff changeset
    78
    case "$OPT" in
8197
baab8e487fad -D PATH: dump generated document sources into PATH;
wenzelm
parents: 7888
diff changeset
    79
      D)
baab8e487fad -D PATH: dump generated document sources into PATH;
wenzelm
parents: 7888
diff changeset
    80
        DUMP="$OPTARG"
baab8e487fad -D PATH: dump generated document sources into PATH;
wenzelm
parents: 7888
diff changeset
    81
        ;;
baab8e487fad -D PATH: dump generated document sources into PATH;
wenzelm
parents: 7888
diff changeset
    82
      P)
baab8e487fad -D PATH: dump generated document sources into PATH;
wenzelm
parents: 7888
diff changeset
    83
        RPATH="$OPTARG"
baab8e487fad -D PATH: dump generated document sources into PATH;
wenzelm
parents: 7888
diff changeset
    84
        ;;
2917
c7411fce37e4 added -g, -h options;
wenzelm
parents: 2849
diff changeset
    85
      b)
c7411fce37e4 added -g, -h options;
wenzelm
parents: 2849
diff changeset
    86
        BUILD=true
c7411fce37e4 added -g, -h options;
wenzelm
parents: 2849
diff changeset
    87
        ;;
8359
124ad46105dd option -c: tell ML system to compress output image;
wenzelm
parents: 8241
diff changeset
    88
      c)
11577
68323aa9575d option -v;
wenzelm
parents: 11543
diff changeset
    89
        check_bool "$OPTARG"
8359
124ad46105dd option -c: tell ML system to compress output image;
wenzelm
parents: 8241
diff changeset
    90
        COMPRESS="$OPTARG"
124ad46105dd option -c: tell ML system to compress output image;
wenzelm
parents: 8241
diff changeset
    91
        ;;
7737
acaf55bee03e document preparation options: -c -d;
wenzelm
parents: 7461
diff changeset
    92
      d)
acaf55bee03e document preparation options: -c -d;
wenzelm
parents: 7461
diff changeset
    93
        DOCUMENT="$OPTARG"
acaf55bee03e document preparation options: -c -d;
wenzelm
parents: 7461
diff changeset
    94
        ;;
3747
cd9b6c86926c There is now one single option -i for generating theory browsing
berghofe
parents: 3636
diff changeset
    95
      i)
11577
68323aa9575d option -v;
wenzelm
parents: 11543
diff changeset
    96
        check_bool "$OPTARG"
3747
cd9b6c86926c There is now one single option -i for generating theory browsing
berghofe
parents: 3636
diff changeset
    97
        INFO="$OPTARG"
2917
c7411fce37e4 added -g, -h options;
wenzelm
parents: 2849
diff changeset
    98
        ;;
10562
fcd29e58c40c option -m;
wenzelm
parents: 10555
diff changeset
    99
      m)
fcd29e58c40c option -m;
wenzelm
parents: 10555
diff changeset
   100
        if [ -z "$MODES" ]; then
fcd29e58c40c option -m;
wenzelm
parents: 10555
diff changeset
   101
          MODES="\"$OPTARG\""
fcd29e58c40c option -m;
wenzelm
parents: 10555
diff changeset
   102
        else
10585
58a1ed1edb65 proper order of modes;
wenzelm
parents: 10562
diff changeset
   103
          MODES="\"$OPTARG\", $MODES"
10562
fcd29e58c40c option -m;
wenzelm
parents: 10555
diff changeset
   104
        fi
fcd29e58c40c option -m;
wenzelm
parents: 10555
diff changeset
   105
        ;;
11535
7f4c5cdea239 Added new option for setting level of detail for proof objects.
berghofe
parents: 10585
diff changeset
   106
      p)
11577
68323aa9575d option -v;
wenzelm
parents: 11543
diff changeset
   107
        check_number "$OPTARG"
11543
d61b913431c5 renamed `keep_derivs' to `proofs', and made an integer;
wenzelm
parents: 11535
diff changeset
   108
        PROOFS="$OPTARG"
11535
7f4c5cdea239 Added new option for setting level of detail for proof objects.
berghofe
parents: 10585
diff changeset
   109
        ;;
6212
974310f9ca7d Session.init;
wenzelm
parents: 5034
diff changeset
   110
      r)
974310f9ca7d Session.init;
wenzelm
parents: 5034
diff changeset
   111
        RESET=true
974310f9ca7d Session.init;
wenzelm
parents: 5034
diff changeset
   112
        ;;
2917
c7411fce37e4 added -g, -h options;
wenzelm
parents: 2849
diff changeset
   113
      s)
c7411fce37e4 added -g, -h options;
wenzelm
parents: 2849
diff changeset
   114
        SESSION="$OPTARG"
c7411fce37e4 added -g, -h options;
wenzelm
parents: 2849
diff changeset
   115
        ;;
11577
68323aa9575d option -v;
wenzelm
parents: 11543
diff changeset
   116
      v)
68323aa9575d option -v;
wenzelm
parents: 11543
diff changeset
   117
        check_bool "$OPTARG"
68323aa9575d option -v;
wenzelm
parents: 11543
diff changeset
   118
        VERBOSE="$OPTARG"
68323aa9575d option -v;
wenzelm
parents: 11543
diff changeset
   119
        ;;
2917
c7411fce37e4 added -g, -h options;
wenzelm
parents: 2849
diff changeset
   120
      \?)
c7411fce37e4 added -g, -h options;
wenzelm
parents: 2849
diff changeset
   121
        usage
c7411fce37e4 added -g, -h options;
wenzelm
parents: 2849
diff changeset
   122
        ;;
c7411fce37e4 added -g, -h options;
wenzelm
parents: 2849
diff changeset
   123
    esac
c7411fce37e4 added -g, -h options;
wenzelm
parents: 2849
diff changeset
   124
  done
c7411fce37e4 added -g, -h options;
wenzelm
parents: 2849
diff changeset
   125
}
2808
e8a224e41b9f usedir -- build object-logic or run examples;
wenzelm
parents:
diff changeset
   126
2917
c7411fce37e4 added -g, -h options;
wenzelm
parents: 2849
diff changeset
   127
getoptions $ISABELLE_USEDIR_OPTIONS
c7411fce37e4 added -g, -h options;
wenzelm
parents: 2849
diff changeset
   128
c7411fce37e4 added -g, -h options;
wenzelm
parents: 2849
diff changeset
   129
getoptions "$@"
2808
e8a224e41b9f usedir -- build object-logic or run examples;
wenzelm
parents:
diff changeset
   130
shift $(($OPTIND - 1))
e8a224e41b9f usedir -- build object-logic or run examples;
wenzelm
parents:
diff changeset
   131
e8a224e41b9f usedir -- build object-logic or run examples;
wenzelm
parents:
diff changeset
   132
e8a224e41b9f usedir -- build object-logic or run examples;
wenzelm
parents:
diff changeset
   133
# args
e8a224e41b9f usedir -- build object-logic or run examples;
wenzelm
parents:
diff changeset
   134
9788
wenzelm
parents: 9237
diff changeset
   135
[ "$#" -ne 2 ] && usage
2808
e8a224e41b9f usedir -- build object-logic or run examples;
wenzelm
parents:
diff changeset
   136
e8a224e41b9f usedir -- build object-logic or run examples;
wenzelm
parents:
diff changeset
   137
LOGIC="$1"; shift
e8a224e41b9f usedir -- build object-logic or run examples;
wenzelm
parents:
diff changeset
   138
NAME="$1"; shift
e8a224e41b9f usedir -- build object-logic or run examples;
wenzelm
parents:
diff changeset
   139
9788
wenzelm
parents: 9237
diff changeset
   140
[ -z "$SESSION" ] && SESSION=$(basename "$NAME")
2808
e8a224e41b9f usedir -- build object-logic or run examples;
wenzelm
parents:
diff changeset
   141
4419
wenzelm
parents: 4075
diff changeset
   142
wenzelm
parents: 4075
diff changeset
   143
wenzelm
parents: 4075
diff changeset
   144
## main
3636
3f2e55e5bacc Added some code for generating theory browsing data.
berghofe
parents: 3504
diff changeset
   145
4451
f9e3e9f1af61 log file;
wenzelm
parents: 4419
diff changeset
   146
# prepare browser info dir
4419
wenzelm
parents: 4075
diff changeset
   147
9788
wenzelm
parents: 9237
diff changeset
   148
if [ "$INFO" = "true" -a ! -f "$ISABELLE_BROWSER_INFO/index.html" ]; then
wenzelm
parents: 9237
diff changeset
   149
  mkdir -p "$ISABELLE_BROWSER_INFO"
wenzelm
parents: 9237
diff changeset
   150
  cp "$ISABELLE_HOME/lib/logo/isabelle.gif" "$ISABELLE_BROWSER_INFO/isabelle.gif"
wenzelm
parents: 9237
diff changeset
   151
  cp "$ISABELLE_HOME/lib/html/index.html" "$ISABELLE_BROWSER_INFO/index.html"
3636
3f2e55e5bacc Added some code for generating theory browsing data.
berghofe
parents: 3504
diff changeset
   152
fi
3f2e55e5bacc Added some code for generating theory browsing data.
berghofe
parents: 3504
diff changeset
   153
2808
e8a224e41b9f usedir -- build object-logic or run examples;
wenzelm
parents:
diff changeset
   154
4451
f9e3e9f1af61 log file;
wenzelm
parents: 4419
diff changeset
   155
# prepare log dir
f9e3e9f1af61 log file;
wenzelm
parents: 4419
diff changeset
   156
f9e3e9f1af61 log file;
wenzelm
parents: 4419
diff changeset
   157
LOGDIR="$ISABELLE_OUTPUT/log"
f9e3e9f1af61 log file;
wenzelm
parents: 4419
diff changeset
   158
mkdir -p "$LOGDIR"
f9e3e9f1af61 log file;
wenzelm
parents: 4419
diff changeset
   159
f9e3e9f1af61 log file;
wenzelm
parents: 4419
diff changeset
   160
f9e3e9f1af61 log file;
wenzelm
parents: 4419
diff changeset
   161
# run isabelle
f9e3e9f1af61 log file;
wenzelm
parents: 4419
diff changeset
   162
7737
acaf55bee03e document preparation options: -c -d;
wenzelm
parents: 7461
diff changeset
   163
PARENT=$(basename "$LOGIC")
acaf55bee03e document preparation options: -c -d;
wenzelm
parents: 7461
diff changeset
   164
acaf55bee03e document preparation options: -c -d;
wenzelm
parents: 7461
diff changeset
   165
[ -z "$BUILD" ] && cd "$NAME"
4451
f9e3e9f1af61 log file;
wenzelm
parents: 4419
diff changeset
   166
8568
wenzelm
parents: 8565
diff changeset
   167
if [ "$DOCUMENT" != false -a -d document ]; then
wenzelm
parents: 8565
diff changeset
   168
  DOC="$DOCUMENT"
9788
wenzelm
parents: 9237
diff changeset
   169
  [ -n "$DUMP" -a -d "$DUMP" ] && "$ISATOOL" latex -o sty "$DUMP/root.tex" >/dev/null
8568
wenzelm
parents: 8565
diff changeset
   170
else
wenzelm
parents: 8565
diff changeset
   171
  DOC=""
wenzelm
parents: 8565
diff changeset
   172
fi
7737
acaf55bee03e document preparation options: -c -d;
wenzelm
parents: 7461
diff changeset
   173
acaf55bee03e document preparation options: -c -d;
wenzelm
parents: 7461
diff changeset
   174
acaf55bee03e document preparation options: -c -d;
wenzelm
parents: 7461
diff changeset
   175
SECONDS=0
6249
8bb90076cc7c Session.use_dir: check parent;
wenzelm
parents: 6212
diff changeset
   176
2808
e8a224e41b9f usedir -- build object-logic or run examples;
wenzelm
parents:
diff changeset
   177
if [ -n "$BUILD" ]; then
4451
f9e3e9f1af61 log file;
wenzelm
parents: 4419
diff changeset
   178
  ITEM="$SESSION"
11577
68323aa9575d option -v;
wenzelm
parents: 11543
diff changeset
   179
  echo "Building $ITEM ..." >&2
4451
f9e3e9f1af61 log file;
wenzelm
parents: 4419
diff changeset
   180
  LOG="$LOGDIR/$ITEM"
f9e3e9f1af61 log file;
wenzelm
parents: 4419
diff changeset
   181
8359
124ad46105dd option -c: tell ML system to compress output image;
wenzelm
parents: 8241
diff changeset
   182
  OPT_C=""
124ad46105dd option -c: tell ML system to compress output image;
wenzelm
parents: 8241
diff changeset
   183
  [ "$COMPRESS" = true ] && OPT_C="-c"
124ad46105dd option -c: tell ML system to compress output image;
wenzelm
parents: 8241
diff changeset
   184
9788
wenzelm
parents: 9237
diff changeset
   185
  "$ISABELLE" \
11577
68323aa9575d option -v;
wenzelm
parents: 11543
diff changeset
   186
    -e "Session.use_dir [$MODES] $RESET $INFO \"$DOC\" \"$PARENT\" \"$SESSION\" \"$DUMP\" \"$RPATH\" $PROOFS $VERBOSE;" \
68323aa9575d option -v;
wenzelm
parents: 11543
diff changeset
   187
    $OPT_C -q -w $LOGIC $NAME > "$LOG"
9788
wenzelm
parents: 9237
diff changeset
   188
  RC="$?"
2808
e8a224e41b9f usedir -- build object-logic or run examples;
wenzelm
parents:
diff changeset
   189
else
9788
wenzelm
parents: 9237
diff changeset
   190
  ITEM=$(basename "$LOGIC")-"$SESSION"
11577
68323aa9575d option -v;
wenzelm
parents: 11543
diff changeset
   191
  echo "Running $ITEM ..." >&2
4451
f9e3e9f1af61 log file;
wenzelm
parents: 4419
diff changeset
   192
  LOG="$LOGDIR/$ITEM"
f9e3e9f1af61 log file;
wenzelm
parents: 4419
diff changeset
   193
9788
wenzelm
parents: 9237
diff changeset
   194
  "$ISABELLE" \
11577
68323aa9575d option -v;
wenzelm
parents: 11543
diff changeset
   195
    -e "Session.use_dir [$MODES] $RESET $INFO \"$DOC\" \"$PARENT\" \"$SESSION\" \"$DUMP\" \"$RPATH\" $PROOFS $VERBOSE; quit();" \
68323aa9575d option -v;
wenzelm
parents: 11543
diff changeset
   196
    -r -q "$LOGIC" > "$LOG"
9788
wenzelm
parents: 9237
diff changeset
   197
  RC="$?"
6212
974310f9ca7d Session.init;
wenzelm
parents: 5034
diff changeset
   198
  cd ..
2808
e8a224e41b9f usedir -- build object-logic or run examples;
wenzelm
parents:
diff changeset
   199
fi
4451
f9e3e9f1af61 log file;
wenzelm
parents: 4419
diff changeset
   200
9788
wenzelm
parents: 9237
diff changeset
   201
ELAPSED=$("$ISABELLE_HOME/lib/scripts/showtime" "$SECONDS")
4451
f9e3e9f1af61 log file;
wenzelm
parents: 4419
diff changeset
   202
f9e3e9f1af61 log file;
wenzelm
parents: 4419
diff changeset
   203
f9e3e9f1af61 log file;
wenzelm
parents: 4419
diff changeset
   204
# exit status
f9e3e9f1af61 log file;
wenzelm
parents: 4419
diff changeset
   205
9788
wenzelm
parents: 9237
diff changeset
   206
if [ "$RC" -eq 0 ]; then
11577
68323aa9575d option -v;
wenzelm
parents: 11543
diff changeset
   207
  echo "Finished $ITEM ($ELAPSED elapsed time)" >&2
4451
f9e3e9f1af61 log file;
wenzelm
parents: 4419
diff changeset
   208
  gzip --force "$LOG"
f9e3e9f1af61 log file;
wenzelm
parents: 4419
diff changeset
   209
else
11577
68323aa9575d option -v;
wenzelm
parents: 11543
diff changeset
   210
  { echo "$ITEM FAILED";
68323aa9575d option -v;
wenzelm
parents: 11543
diff changeset
   211
    echo "(see also $LOG)";
68323aa9575d option -v;
wenzelm
parents: 11543
diff changeset
   212
    echo; tail "$LOG"; echo; } >&2
4451
f9e3e9f1af61 log file;
wenzelm
parents: 4419
diff changeset
   213
fi
f9e3e9f1af61 log file;
wenzelm
parents: 4419
diff changeset
   214
9788
wenzelm
parents: 9237
diff changeset
   215
exit "$RC"