src/Pure/build-jars
changeset 45673 cd41e3903fbf
parent 45672 a497c5d4a523
child 45674 eb65c9d17e2f
--- 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