separate compilation of PIDE vs. Pure sources, which enables independent Scala library;
authorwenzelm
Tue, 29 Nov 2011 21:29:53 +0100
changeset 45673 cd41e3903fbf
parent 45672 a497c5d4a523
child 45674 eb65c9d17e2f
separate compilation of PIDE vs. Pure sources, which enables independent Scala library;
src/Pure/Concurrent/counter.scala
src/Pure/Concurrent/future.scala
src/Pure/Concurrent/simple_thread.scala
src/Pure/Concurrent/volatile.scala
src/Pure/General/exn.scala
src/Pure/General/properties.scala
src/Pure/General/sha1.scala
src/Pure/General/timing.scala
src/Pure/PIDE/markup.scala
src/Pure/PIDE/markup_tree.scala
src/Pure/PIDE/text.scala
src/Pure/PIDE/xml.scala
src/Pure/PIDE/yxml.scala
src/Pure/System/cygwin.scala
src/Pure/System/download.scala
src/Pure/System/event_bus.scala
src/Pure/System/platform.scala
src/Pure/System/standard_system.scala
src/Pure/System/swing_thread.scala
src/Pure/build-jars
src/Pure/library.scala
src/Pure/package.scala
--- a/src/Pure/Concurrent/counter.scala	Tue Nov 29 20:18:02 2011 +0100
+++ b/src/Pure/Concurrent/counter.scala	Tue Nov 29 21:29:53 2011 +0100
@@ -1,5 +1,5 @@
 /*  Title:      Pure/Concurrent/counter.scala
-    Module:     Library
+    Module:     PIDE
     Author:     Makarius
 
 Synchronized counter for unique identifiers < 0.
--- a/src/Pure/Concurrent/future.scala	Tue Nov 29 20:18:02 2011 +0100
+++ b/src/Pure/Concurrent/future.scala	Tue Nov 29 21:29:53 2011 +0100
@@ -1,5 +1,5 @@
 /*  Title:      Pure/Concurrent/future.scala
-    Module:     Library
+    Module:     PIDE
     Author:     Makarius
 
 Future values.
--- a/src/Pure/Concurrent/simple_thread.scala	Tue Nov 29 20:18:02 2011 +0100
+++ b/src/Pure/Concurrent/simple_thread.scala	Tue Nov 29 21:29:53 2011 +0100
@@ -1,5 +1,5 @@
 /*  Title:      Pure/Concurrent/simple_thread.scala
-    Module:     Library
+    Module:     PIDE
     Author:     Makarius
 
 Simplified thread operations.
--- a/src/Pure/Concurrent/volatile.scala	Tue Nov 29 20:18:02 2011 +0100
+++ b/src/Pure/Concurrent/volatile.scala	Tue Nov 29 21:29:53 2011 +0100
@@ -1,5 +1,5 @@
 /*  Title:      Pure/Concurrent/volatile.scala
-    Module:     Library
+    Module:     PIDE
     Author:     Makarius
 
 Volatile variables.
--- a/src/Pure/General/exn.scala	Tue Nov 29 20:18:02 2011 +0100
+++ b/src/Pure/General/exn.scala	Tue Nov 29 21:29:53 2011 +0100
@@ -1,5 +1,5 @@
 /*  Title:      Pure/General/exn.scala
-    Module:     Library
+    Module:     PIDE
     Author:     Makarius
 
 Support for exceptions (arbitrary throwables).
--- a/src/Pure/General/properties.scala	Tue Nov 29 20:18:02 2011 +0100
+++ b/src/Pure/General/properties.scala	Tue Nov 29 21:29:53 2011 +0100
@@ -1,5 +1,5 @@
 /*  Title:      Pure/General/properties.scala
-    Module:     Library
+    Module:     PIDE
     Author:     Makarius
 
 Property lists.
--- a/src/Pure/General/sha1.scala	Tue Nov 29 20:18:02 2011 +0100
+++ b/src/Pure/General/sha1.scala	Tue Nov 29 21:29:53 2011 +0100
@@ -1,5 +1,5 @@
 /*  Title:      Pure/General/sha1.scala
-    Module:     Library
+    Module:     PIDE
     Author:     Makarius
 
 Digest strings according to SHA-1 (see RFC 3174).
--- a/src/Pure/General/timing.scala	Tue Nov 29 20:18:02 2011 +0100
+++ b/src/Pure/General/timing.scala	Tue Nov 29 21:29:53 2011 +0100
@@ -1,5 +1,5 @@
 /*  Title:      Pure/General/timing.scala
-    Module:     Library
+    Module:     PIDE
     Author:     Makarius
 
 Basic support for time measurement.
--- a/src/Pure/PIDE/markup.scala	Tue Nov 29 20:18:02 2011 +0100
+++ b/src/Pure/PIDE/markup.scala	Tue Nov 29 21:29:53 2011 +0100
@@ -1,5 +1,5 @@
 /*  Title:      Pure/PIDE/markup.scala
-    Module:     Library
+    Module:     PIDE
     Author:     Makarius
 
 Generic markup elements.
--- a/src/Pure/PIDE/markup_tree.scala	Tue Nov 29 20:18:02 2011 +0100
+++ b/src/Pure/PIDE/markup_tree.scala	Tue Nov 29 21:29:53 2011 +0100
@@ -1,5 +1,5 @@
 /*  Title:      Pure/PIDE/markup_tree.scala
-    Module:     Library
+    Module:     PIDE
     Author:     Fabian Immler, TU Munich
     Author:     Makarius
 
--- a/src/Pure/PIDE/text.scala	Tue Nov 29 20:18:02 2011 +0100
+++ b/src/Pure/PIDE/text.scala	Tue Nov 29 21:29:53 2011 +0100
@@ -1,5 +1,5 @@
 /*  Title:      Pure/PIDE/text.scala
-    Module:     Library
+    Module:     PIDE
     Author:     Fabian Immler, TU Munich
     Author:     Makarius
 
--- a/src/Pure/PIDE/xml.scala	Tue Nov 29 20:18:02 2011 +0100
+++ b/src/Pure/PIDE/xml.scala	Tue Nov 29 21:29:53 2011 +0100
@@ -1,5 +1,5 @@
 /*  Title:      Pure/PIDE/xml.scala
-    Module:     Library
+    Module:     PIDE
     Author:     Makarius
 
 Untyped XML trees and basic data representation.
--- a/src/Pure/PIDE/yxml.scala	Tue Nov 29 20:18:02 2011 +0100
+++ b/src/Pure/PIDE/yxml.scala	Tue Nov 29 21:29:53 2011 +0100
@@ -1,5 +1,5 @@
 /*  Title:      Pure/PIDE/yxml.scala
-    Module:     Library
+    Module:     PIDE
     Author:     Makarius
 
 Efficient text representation of XML trees.  Suitable for direct
--- a/src/Pure/System/cygwin.scala	Tue Nov 29 20:18:02 2011 +0100
+++ b/src/Pure/System/cygwin.scala	Tue Nov 29 21:29:53 2011 +0100
@@ -1,5 +1,5 @@
 /*  Title:      Pure/System/cygwin.scala
-    Module:     Library
+    Module:     PIDE
     Author:     Makarius
 
 Accessing the Cygwin installation.
--- a/src/Pure/System/download.scala	Tue Nov 29 20:18:02 2011 +0100
+++ b/src/Pure/System/download.scala	Tue Nov 29 21:29:53 2011 +0100
@@ -1,5 +1,5 @@
 /*  Title:      Pure/System/download.scala
-    Module:     Library
+    Module:     PIDE
     Author:     Makarius
 
 Download URLs -- with progress monitor.
--- a/src/Pure/System/event_bus.scala	Tue Nov 29 20:18:02 2011 +0100
+++ b/src/Pure/System/event_bus.scala	Tue Nov 29 21:29:53 2011 +0100
@@ -1,5 +1,5 @@
 /*  Title:      Pure/System/event_bus.scala
-    Module:     Library
+    Module:     PIDE
     Author:     Makarius
 
 Generic event bus with multiple receiving actors.
--- a/src/Pure/System/platform.scala	Tue Nov 29 20:18:02 2011 +0100
+++ b/src/Pure/System/platform.scala	Tue Nov 29 21:29:53 2011 +0100
@@ -1,5 +1,5 @@
 /*  Title:      Pure/System/platform.scala
-    Module:     Library
+    Module:     PIDE
     Author:     Makarius
 
 Raw platform identification.
--- a/src/Pure/System/standard_system.scala	Tue Nov 29 20:18:02 2011 +0100
+++ b/src/Pure/System/standard_system.scala	Tue Nov 29 21:29:53 2011 +0100
@@ -1,5 +1,5 @@
 /*  Title:      Pure/System/standard_system.scala
-    Module:     Library
+    Module:     PIDE
     Author:     Makarius
 
 Standard system operations, with basic Cygwin/Posix compatibility.
--- a/src/Pure/System/swing_thread.scala	Tue Nov 29 20:18:02 2011 +0100
+++ b/src/Pure/System/swing_thread.scala	Tue Nov 29 21:29:53 2011 +0100
@@ -1,5 +1,5 @@
 /*  Title:      Pure/System/swing_thread.scala
-    Module:     Library
+    Module:     PIDE
     Author:     Makarius
     Author:     Fabian Immler, TU Munich
 
--- a/src/Pure/build-jars	Tue Nov 29 20:18:02 2011 +0100
+++ b/src/Pure/build-jars	Tue Nov 29 21:29:53 2011 +0100
@@ -121,6 +121,19 @@
 TARGET_DIR="$ISABELLE_HOME/lib/classes"
 TARGET="$TARGET_DIR/ext/Pure.jar"
 
+declare -a PIDE_SOURCES=()
+declare -a PURE_SOURCES=()
+
+for DEP in "${SOURCES[@]}"
+do
+  if grep "Module:.*PIDE" "$DEP" >/dev/null
+  then
+    PIDE_SOURCES["${#PIDE_SOURCES[@]}"]="$DEP"
+  else
+    PURE_SOURCES["${#PURE_SOURCES[@]}"]="$DEP"
+  fi
+done
+
 declare -a UPDATED=()
 
 if [ -n "$FRESH" ]; then
@@ -154,8 +167,15 @@
   }
 
   rm -rf classes && mkdir classes
-  "$SCALA_HOME/bin/scalac" -unchecked -deprecation -d classes -target:jvm-1.5 "${SOURCES[@]}" || \
-    fail "Failed to compile sources"
+
+  SCALAC_OPTIONS="-unchecked -deprecation -d classes -target:jvm-1.5"
+
+  "$SCALA_HOME/bin/scalac" $SCALAC_OPTIONS "${PIDE_SOURCES[@]}" || \
+    fail "Failed to compile PIDE sources"
+
+  "$SCALA_HOME/bin/scalac" $SCALAC_OPTIONS -classpath classes "${PURE_SOURCES[@]}" || \
+    fail "Failed to compile Pure sources"
+
   mkdir -p "$TARGET_DIR/ext" || fail "Failed to create directory $TARGET_DIR/ext"
 
   pushd classes >/dev/null
--- a/src/Pure/library.scala	Tue Nov 29 20:18:02 2011 +0100
+++ b/src/Pure/library.scala	Tue Nov 29 21:29:53 2011 +0100
@@ -1,5 +1,5 @@
 /*  Title:      Pure/library.scala
-    Module:     Library
+    Module:     PIDE
     Author:     Makarius
 
 Basic library.
--- a/src/Pure/package.scala	Tue Nov 29 20:18:02 2011 +0100
+++ b/src/Pure/package.scala	Tue Nov 29 21:29:53 2011 +0100
@@ -1,5 +1,5 @@
 /*  Title:      Pure/package.scala
-    Module:     Library
+    Module:     PIDE
     Author:     Makarius
 
 Toplevel isabelle package.