simplified Symbol based on lazy Symbol.Interpretation -- reduced odd "functorial style";
tuned implicit build/init messages;
5 # build-jars - build Isabelle/Scala
7 # Requires proper Isabelle settings environment.
12 Concurrent/counter.scala
13 Concurrent/future.scala
14 Concurrent/simple_thread.scala
15 Concurrent/volatile.scala
18 General/linear_set.scala
21 General/position.scala
27 General/xml_data.scala
30 Isar/outer_syntax.scala
35 PIDE/isar_document.scala
36 PIDE/markup_tree.scala
40 System/event_bus.scala
41 System/gui_setup.scala
42 System/isabelle_charset.scala
43 System/isabelle_process.scala
44 System/isabelle_syntax.scala
45 System/isabelle_system.scala
48 System/session_manager.scala
49 System/standard_system.scala
50 System/swing_thread.scala
64 PRG="$(basename "$0")"
69 echo "Usage: isabelle $PRG [OPTIONS]"
72 echo " -f fresh build"
83 [ -z "$ISABELLE_HOME" ] && fail "Missing Isabelle settings environment"
84 [ -z "$SCALA_HOME" ] && fail "Unknown SCALA_HOME -- Scala unavailable"
87 ## process command line
105 shift $(($OPTIND - 1))
110 [ "$#" -ne 0 ] && usage
116 TARGET_DIR="$ISABELLE_HOME/lib/classes"
117 TARGET="$TARGET_DIR/ext/Pure.jar"
119 declare -a UPDATED=()
121 if [ -n "$FRESH" ]; then
125 if [ ! -e "$TARGET" ]; then
128 for DEP in "${SOURCES[@]}"
130 [ ! -e "$DEP" ] && fail "Missing file: $DEP"
131 [ "$DEP" -nt "$TARGET" ] && {
133 UPDATED["${#UPDATED[@]}"]="$DEP"
139 if [ "$OUTDATED" = true ]
141 echo "### Building Isabelle/Scala layer ..."
143 [ "${#UPDATED[@]}" -gt 0 ] && {
144 echo "Changed files:"
145 for FILE in "${UPDATED[@]}"
151 rm -rf classes && mkdir classes
152 "$SCALA_HOME/bin/scalac" -unchecked -deprecation -d classes -target:jvm-1.5 "${SOURCES[@]}" || \
153 fail "Failed to compile sources"
154 mkdir -p "$TARGET_DIR/ext" || fail "Failed to create directory $TARGET_DIR/ext"
156 pushd classes >/dev/null
158 CHARSET_SERVICE="META-INF/services/java.nio.charset.spi.CharsetProvider"
159 mkdir -p "$(dirname "$CHARSET_SERVICE")"
160 echo isabelle.Isabelle_Charset_Provider > "$CHARSET_SERVICE"
162 jar cfe "$(jvmpath "$TARGET")" isabelle.GUI_Setup META-INF isabelle || \
163 fail "Failed to produce $TARGET"
165 cp "$SCALA_HOME/lib/scala-swing.jar" "$SCALA_HOME/lib/scala-library.jar" "$TARGET_DIR/ext"