[scala] New upstream release

Jochen Schmitt s4504kr at fedoraproject.org
Sat Dec 8 20:24:27 UTC 2012


commit f0438a2ec48c5bcba41301f1a004ea48d523cfaa
Author: Jochen Schmitt <Jochen at herr-schmitt.de>
Date:   Sat Dec 8 21:24:21 2012 +0100

    New upstream release

 scala-2.10.0-java7.patch            |  237 +++++++++++++++++++++++++++++++++++
 scala-2.10.0-tooltemplate.patch     |    6 +-
 scala-2.10.0-use_system_jline.patch |  205 ++++++------------------------
 scala-2.9.2-tooltemplate.patch      |   74 -----------
 scala.spec                          |   31 +++--
 sources                             |    2 +-
 6 files changed, 298 insertions(+), 257 deletions(-)
---
diff --git a/scala-2.10.0-java7.patch b/scala-2.10.0-java7.patch
new file mode 100644
index 0000000..62ccde5
--- /dev/null
+++ b/scala-2.10.0-java7.patch
@@ -0,0 +1,237 @@
+diff -up scala-2.10.0-RC3-sources/build.xml.jdk7 scala-2.10.0-RC3-sources/build.xml
+--- scala-2.10.0-RC3-sources/build.xml.jdk7	2012-12-08 16:10:10.948127863 +0100
++++ scala-2.10.0-RC3-sources/build.xml	2012-12-08 16:16:20.267162236 +0100
+@@ -1087,7 +1087,7 @@ QUICK BUILD (QUICK)
+     </copy>
+   </target>
+ 
+-  <target name="quick.swing" depends="quick.lib" if="has.java6" unless="quick.lib.available">
++  <target name="quick.swing" depends="quick.lib" unless="quick.lib.available">
+     <scalacfork
+       destdir="${build-quick.dir}/classes/library"
+       compilerpathref="locker.classpath"
+@@ -1493,7 +1493,7 @@ PACKED QUICK BUILD (PACK)
+     </jar>
+   </target>
+ 
+-  <target name="pack.swing" depends="pack.lib" if="has.java6">
++  <target name="pack.swing" depends="pack.lib">
+     <jar destfile="${build-pack.dir}/lib/scala-swing.jar">
+       <fileset dir="${build-quick.dir}/classes/library">
+         <include name="scala/swing/**"/>
+@@ -1726,7 +1726,7 @@ OSGi Artifacts
+     <stopwatch name="osgi.bundle.timer" action="total"/>
+   </target>
+ 
+-  <target name="osgi.bundles.swing" depends="osgi.init" if="has.java6" unless="osgi.bundles.available">
++  <target name="osgi.bundles.swing" depends="osgi.init" unless="osgi.bundles.available">
+     <!-- TODO - only if JDK6 -->
+     <make-bundle name="scala-swing" version="${osgi.version.number}"/>
+   </target>
+@@ -1869,7 +1869,7 @@ BOOTSTRAPPING BUILD (STRAP)
+     </copy>
+   </target>
+ 
+-  <target name="strap.swing" if="has.java6" unless="strap.lib.available" depends="strap.lib">
++  <target name="strap.swing" unless="strap.lib.available" depends="strap.lib">
+     <scalacfork
+       destdir="${build-strap.dir}/classes/library"
+       compilerpathref="pack.classpath"
+diff -up scala-2.10.0-RC3-sources/src/swing/scala/swing/ComboBox.scala.jdk7 scala-2.10.0-RC3-sources/src/swing/scala/swing/ComboBox.scala
+--- scala-2.10.0-RC3-sources/src/swing/scala/swing/ComboBox.scala.jdk7	2012-11-05 02:49:19.000000000 +0100
++++ scala-2.10.0-RC3-sources/src/swing/scala/swing/ComboBox.scala	2012-12-07 23:29:32.821949227 +0100
+@@ -9,7 +9,7 @@
+ package scala.swing
+ 
+ import event._
+-import javax.swing.{JList, JComponent, JComboBox, JTextField, ComboBoxModel, AbstractListModel, ListCellRenderer}
++import javax.swing.{ JComponent, JComboBox, JTextField, ComboBoxModel, AbstractListModel, ListCellRenderer }
+ import java.awt.event.ActionListener
+ 
+ object ComboBox {
+@@ -118,10 +118,10 @@ object ComboBox {
+   implicit def floatEditor(c: ComboBox[Float]): Editor[Float] = new BuiltInEditor(c)(s => s.toFloat, s => s.toString)
+   implicit def doubleEditor(c: ComboBox[Double]): Editor[Double] = new BuiltInEditor(c)(s => s.toDouble, s => s.toString)
+ 
+-  def newConstantModel[A](items: Seq[A]): ComboBoxModel = {
+-    new AbstractListModel with ComboBoxModel {
++  def newConstantModel[A](items: Seq[A]): ComboBoxModel[A] = {
++    new AbstractListModel[A] with ComboBoxModel[A] {
+       private var selected: A = if (items.isEmpty) null.asInstanceOf[A] else items(0)
+-      def getSelectedItem: AnyRef = selected.asInstanceOf[AnyRef]
++      def getSelectedItem = selected.asInstanceOf[AnyRef]
+       def setSelectedItem(a: Any) {
+         if ((selected != null && selected != a) ||
+             selected == null && a != null) {
+@@ -129,7 +129,7 @@ object ComboBox {
+           fireContentsChanged(this, -1, -1)
+         }
+       }
+-      def getElementAt(n: Int) = items(n).asInstanceOf[AnyRef]
++      def getElementAt(n: Int) = items(n).asInstanceOf[A]
+       def getSize = items.size
+     }
+   }
+@@ -157,7 +157,7 @@ object ComboBox {
+  * @see javax.swing.JComboBox
+  */
+ class ComboBox[A](items: Seq[A]) extends Component with Publisher {
+-  override lazy val peer: JComboBox = new JComboBox(ComboBox.newConstantModel(items)) with SuperMixin
++  override lazy val peer: JComboBox[A] = new JComboBox(ComboBox.newConstantModel(items)) with SuperMixin
+ 
+   object selection extends Publisher {
+     def index: Int = peer.getSelectedIndex
+@@ -182,7 +182,8 @@ class ComboBox[A](items: Seq[A]) extends
+    * of the component to its own defaults _after_ the renderer has been
+    * configured. That's Swing's principle of most suprise.
+    */
+-  def renderer: ListView.Renderer[A] = ListView.Renderer.wrap(peer.getRenderer)
++  def renderer: ListView.Renderer[A] = ListView.Renderer.wrap[A](peer.getRenderer.asInstanceOf[ListCellRenderer[A]])
++  // def renderer: ListView.Renderer[A] = ListView.Renderer.wrap(peer.getRenderer)
+   def renderer_=(r: ListView.Renderer[A]) { peer.setRenderer(r.peer) }
+ 
+   /* XXX: currently not safe to expose:
+@@ -201,8 +202,8 @@ class ComboBox[A](items: Seq[A]) extends
+     peer.setEditor(editor(this).comboBoxPeer)
+   }
+ 
+-  def prototypeDisplayValue: Option[A] = toOption[A](peer.getPrototypeDisplayValue)
++  def prototypeDisplayValue: Option[A] = Option(peer.getPrototypeDisplayValue)
+   def prototypeDisplayValue_=(v: Option[A]) {
+-    peer.setPrototypeDisplayValue((v map toAnyRef).orNull)
++    peer.setPrototypeDisplayValue((v map toAnyRef).orNull.asInstanceOf[A])
+   }
+ }
+diff -up scala-2.10.0-RC3-sources/src/swing/scala/swing/ListView.scala.jdk7 scala-2.10.0-RC3-sources/src/swing/scala/swing/ListView.scala
+--- scala-2.10.0-RC3-sources/src/swing/scala/swing/ListView.scala.jdk7	2012-11-05 02:49:19.000000000 +0100
++++ scala-2.10.0-RC3-sources/src/swing/scala/swing/ListView.scala	2012-12-07 22:58:13.267919851 +0100
+@@ -24,21 +24,21 @@ object ListView {
+     val MultiInterval = Value(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION)
+   }
+ 
+-  def wrap[A](c: JList) = new ListView[A] {
++  def wrap[A](c: JList[A]) = new ListView[A] {
+     override lazy val peer = c
+   }
+ 
+   object Renderer {
+-    def wrap[A](r: ListCellRenderer): Renderer[A] = new Wrapped[A](r)
++    def wrap[A](r: ListCellRenderer[A]): Renderer[A] = new Wrapped[A](r)
+ 
+     /**
+      * Wrapper for <code>javax.swing.ListCellRenderer<code>s
+      */
+-  	class Wrapped[A](override val peer: ListCellRenderer) extends Renderer[A] {
+-  	  def componentFor(list: ListView[_], isSelected: Boolean, focused: Boolean, a: A, index: Int) = {
++      class Wrapped[A](override val peer: ListCellRenderer[A]) extends Renderer[A] {
++        def componentFor(list: ListView[_ <: A], isSelected: Boolean, focused: Boolean, a: A, index: Int) = {
+         Component.wrap(peer.getListCellRendererComponent(list.peer, a, index, isSelected, focused).asInstanceOf[JComponent])
++        }
+       }
+-  	}
+ 
+     /**
+      * Returns a renderer for items of type <code>A</code>. The given function
+@@ -55,8 +55,8 @@ object ListView {
+      * </code>
+      */
+     def apply[A,B](f: A => B)(implicit renderer: Renderer[B]): Renderer[A] = new Renderer[A] {
+-      def componentFor(list: ListView[_], isSelected: Boolean, focused: Boolean, a: A, index: Int): Component =
+-        renderer.componentFor(list, isSelected, focused, f(a), index)
++      def componentFor(list: ListView[_ <: A], isSelected: Boolean, focused: Boolean, a: A, index: Int): Component =
++        renderer.componentFor(list.asInstanceOf[ListView[_ <: B]], isSelected, focused, f(a), index)
+     }
+   }
+ 
+@@ -69,11 +69,11 @@ object ListView {
+    * @see javax.swing.ListCellRenderer
+    */
+   abstract class Renderer[-A] {
+-    def peer: ListCellRenderer = new ListCellRenderer {
+-      def getListCellRendererComponent(list: JList, a: Any, index: Int, isSelected: Boolean, focused: Boolean) =
+-        componentFor(ListView.wrap[A](list), isSelected, focused, a.asInstanceOf[A], index).peer
++    def peer: ListCellRenderer[_ >: A] = new ListCellRenderer[A] {
++      def getListCellRendererComponent(list: JList[_ <: A], a: A, index: Int, isSelected: Boolean, focused: Boolean) =
++        componentFor(ListView.wrap[A](list.asInstanceOf[JList[A]]), isSelected, focused, a, index).peer
+     }
+-    def componentFor(list: ListView[_], isSelected: Boolean, focused: Boolean, a: A, index: Int): Component
++    def componentFor(list: ListView[_ <: A], isSelected: Boolean, focused: Boolean, a: A, index: Int): Component
+   }
+ 
+   /**
+@@ -110,7 +110,7 @@ object ListView {
+     /**
+      * Configures the component before returning it.
+      */
+-    def componentFor(list: ListView[_], isSelected: Boolean, focused: Boolean, a: A, index: Int): Component = {
++    def componentFor(list: ListView[_ <: A], isSelected: Boolean, focused: Boolean, a: A, index: Int): Component = {
+       preConfigure(list, isSelected, focused, a, index)
+       configure(list, isSelected, focused, a, index)
+       component
+@@ -123,10 +123,10 @@ object ListView {
+    * that renders the string returned from an item's <code>toString</code>.
+    */
+   implicit object GenericRenderer extends Renderer[Any] {
+-    override lazy val peer: ListCellRenderer = new DefaultListCellRenderer
+-    def componentFor(list: ListView[_], isSelected: Boolean, focused: Boolean, a: Any, index: Int): Component = {
+-      val c = peer.getListCellRendererComponent(list.peer, a, index, isSelected, focused).asInstanceOf[JComponent]
+-      Component.wrap(c)
++    override lazy val peer: ListCellRenderer[Any] = (new DefaultListCellRenderer).asInstanceOf[ListCellRenderer[Any]]
++    def componentFor(list: ListView[_ <: Any], isSelected: Boolean, focused: Boolean, a: Any, index: Int): Component = {
++      val c = peer.getListCellRendererComponent(list.peer, a, index, isSelected, focused)
++      Component.wrap(c.asInstanceOf[JComponent])
+     }
+   }
+ }
+@@ -142,34 +142,34 @@ object ListView {
+  */
+ class ListView[A] extends Component {
+   import ListView._
+-  override lazy val peer: JList = new JList with SuperMixin
++  override lazy val peer: JList[A] = new JList[A] with SuperMixin
+ 
+   def this(items: Seq[A]) = {
+     this()
+     listData = items
+   }
+ 
+-  protected class ModelWrapper(val items: Seq[A]) extends AbstractListModel {
+-    def getElementAt(n: Int) = items(n).asInstanceOf[AnyRef]
++  protected class ModelWrapper[A](val items: Seq[A]) extends AbstractListModel[A] {
++    def getElementAt(n: Int) = items(n)
+     def getSize = items.size
+   }
+ 
+   def listData: Seq[A] = peer.getModel match {
+-    case model: ModelWrapper => model.items
+-    case model @ _ => new Seq[A] { selfSeq =>
++    case model: ModelWrapper[a] => model.items
++    case model => new Seq[A] { selfSeq =>
+      def length = model.getSize
+      def iterator = new Iterator[A] {
+        var idx = 0
+        def next = { idx += 1; apply(idx-1) }
+        def hasNext = idx < selfSeq.length
+      }
+-     def apply(n: Int) = model.getElementAt(n).asInstanceOf[A]
++     def apply(n: Int): A = model.getElementAt(n)
+     }
+   }
+ 
+   def listData_=(items: Seq[A]) {
+-    peer.setModel(new AbstractListModel {
+-      def getElementAt(n: Int) = items(n).asInstanceOf[AnyRef]
++    peer.setModel(new AbstractListModel[A] {
++      def getElementAt(n: Int) = items(n)
+       def getSize = items.size
+     })
+   }
+@@ -216,7 +216,7 @@ class ListView[A] extends Component {
+     def adjusting = peer.getSelectionModel.getValueIsAdjusting
+   }
+ 
+-  def renderer: ListView.Renderer[A] = ListView.Renderer.wrap(peer.getCellRenderer)
++  def renderer: ListView.Renderer[A] = ListView.Renderer.wrap[A](peer.getCellRenderer.asInstanceOf[ListCellRenderer[A]])
+   def renderer_=(r: ListView.Renderer[A]) { peer.setCellRenderer(r.peer) }
+ 
+   def fixedCellWidth = peer.getFixedCellWidth
diff --git a/scala-2.10.0-tooltemplate.patch b/scala-2.10.0-tooltemplate.patch
index c001147..81337a2 100644
--- a/scala-2.10.0-tooltemplate.patch
+++ b/scala-2.10.0-tooltemplate.patch
@@ -8,13 +8,13 @@ diff -up scala-2.10.0-RC3/src/compiler/scala/tools/ant/templates/tool-unix.tmpl.
 -SCALA_HOME="$(findScalaHome)"
 +export JAVA_HOMe=/usr/share/jvm/java
 +
-+[ -r @@JAVADIF@@-utils/java-functions } && . @@JAVADIR@@-utils/java-functions || exit 1
++[ -r @@JAVADIR@@-utils/java-functions ] && . @@JAVADIR@@-utils/java-functions || exit 1
 +
 +set_javacmd || exit 3
-+check_jvm_env || exit 4
++check_java_env || exit 4
 +set_jvm_dirs || exit 5
 +
-+export SCAL_HOME=@@DATADIR@@/scala
++export SCALA_HOME=@@DATADIR@@/scala
 +
  SEP=":"
  
diff --git a/scala-2.10.0-use_system_jline.patch b/scala-2.10.0-use_system_jline.patch
index 5a672d4..c096e97 100644
--- a/scala-2.10.0-use_system_jline.patch
+++ b/scala-2.10.0-use_system_jline.patch
@@ -1,172 +1,43 @@
-diff -up scala-2.10.0-RC3/build.xml.sysjline scala-2.10.0-RC3/build.xml
---- scala-2.10.0-RC3/build.xml.sysjline	2012-11-25 16:14:30.000000000 +0100
-+++ scala-2.10.0-RC3/build.xml	2012-11-25 19:31:26.354426134 +0100
+diff -up scala-2.10.0-RC5/build.xml.sysjline scala-2.10.0-RC5/build.xml
+--- scala-2.10.0-RC5/build.xml.sysjline	2012-12-07 19:39:49.000000000 +0100
++++ scala-2.10.0-RC5/build.xml	2012-12-07 20:40:26.749580408 +0100
 @@ -206,7 +206,7 @@ PROPERTIES
    <property name="msil.starr.jar" value="${lib.dir}/msil.jar"/>
    <property name="reflect.starr.jar" value="${lib.dir}/scala-reflect.jar"/>
    <property name="comp.starr.jar" value="${lib.dir}/scala-compiler.jar"/>
 -  <property name="jline.jar" value="${lib.dir}/jline.jar"/>
-+  <property name="jline2.jar" value="/usr/share/java/jline2.jar"/>
++  <property name="jline.jar" value="/usr/share/java/jline2.jar"/>
    <property name="ant.jar" value="${ant.home}/lib/ant.jar"/>
    <property name="scalacheck.jar" value="${lib.dir}/scalacheck.jar"/>
  
-@@ -258,18 +258,6 @@ INITIALISATION
-   </target>
+@@ -259,7 +259,6 @@ INITIALISATION
  
    <target name="init.jars" depends="init.jars.check" unless="lib.jars.uptodate">
--    <echo level="warn" message="Updating bootstrap libs.  (To do this by hand, run ./pull-binary-libs.sh)"/>
+     <echo level="warn" message="Updating bootstrap libs.  (To do this by hand, run ./pull-binary-libs.sh)"/>
 -    <exec osfamily="unix" vmlauncher="false" executable="./pull-binary-libs.sh" failifexecutionfails="true" />
--    <exec osfamily="windows" vmlauncher="false" executable="pull-binary-libs.sh" failifexecutionfails="true" />
--    <!-- uptodate task needs to know these are what's in the sha. -->
--    <touch>
--      <fileset dir="${basedir}">
--        <include name="lib/**/*.desired.sha1"/>
--        <include name="test/files/**/*.desired.sha1"/>
--        <include name="tools/**/*.desired.sha1"/>
--      </fileset>
--      <mapper type="glob" from="*.desired.sha1" to="*"/>
--    </touch>
-   </target>
- 
-   <!-- Add our maven ant tasks -->
-@@ -724,7 +712,7 @@ LOCAL REFERENCE BUILD (LOCKER)
-         <pathelement location="${build-locker.dir}/classes/library"/>
-         <pathelement location="${build-locker.dir}/classes/reflect"/>
-         <path refid="aux.libs"/>
--        <pathelement location="${jline.jar}"/>
-+        <pathelement location="${jline2.jar}"/>
-       </compilationpath>
-     </scalacfork>
-     <!-- TODO - needed? -->
-@@ -792,7 +780,7 @@ LOCAL REFERENCE BUILD (LOCKER)
-             <pathelement location="${build-locker.dir}/classes/compiler"/>
-             <path refid="fjbg.classpath"/>
-             <path refid="aux.libs"/>
--            <pathelement location="${jline.jar}"/>
-+            <pathelement location="${jline2.jar}"/>
-           </compilationpath>
-         </scalacfork>
-         <property name="locker.comp.msil" value="${build-locker.dir}/classes/compiler"/>
-@@ -813,7 +801,7 @@ LOCAL REFERENCE BUILD (LOCKER)
-         <path refid="aux.libs"/>
-         <path refid="asm.classpath"/>
-         <pathelement location="${locker.comp.msil}" />
--        <pathelement location="${jline.jar}"/>
-+        <pathelement location="${jline2.jar}"/>
-       </compilationpath>
-     </scalacfork>
-     <propertyfile file="${build-locker.dir}/classes/compiler/compiler.properties">
-@@ -955,7 +943,7 @@ PACKED LOCKER BUILD (PALO)
-       <fileset dir="${build-asm.dir}/classes/"/>
-       <fileset dir="${build-libs.dir}/classes/fjbg"/>
-     </jar>
--    <copy file="${jline.jar}" toDir="${build-palo.dir}/lib"/>
-+    <copy file="${jline2.jar}" toDir="${build-palo.dir}/lib"/>
+     <exec osfamily="windows" vmlauncher="false" executable="pull-binary-libs.sh" failifexecutionfails="true" />
+     <!-- uptodate task needs to know these are what's in the sha. -->
+     <touch>
+@@ -423,7 +422,7 @@ INITIALISATION
+      </echo>
    </target>
  
-   <target name="palo.done" depends="palo.comp">
-@@ -979,7 +967,7 @@ PACKED LOCKER BUILD (PALO)
-         <pathelement location="${build-palo.dir}/lib/scala-library.jar"/>
-         <pathelement location="${build-palo.dir}/lib/scala-reflect.jar"/>
-         <pathelement location="${build-palo.dir}/lib/scala-compiler.jar"/>
--        <pathelement location="${build-palo.dir}/lib/jline.jar"/>
-+        <pathelement location="${build-palo.dir}/lib/jline2.jar"/>
-       </classpath>
-     </taskdef>
-     <mkdir dir="${build-palo.dir}/bin"/>
-@@ -1127,7 +1115,7 @@ QUICK BUILD (QUICK)
-         <pathelement location="${build-quick.dir}/classes/library"/>
-         <pathelement location="${build-quick.dir}/classes/reflect"/>
-         <path refid="aux.libs"/>
--        <pathelement location="${jline.jar}"/>
-+        <pathelement location="${jline2.jar}"/>
-       </compilationpath>
-     </scalacfork>
-     <!-- TODO - needed? -->
-@@ -1187,7 +1175,7 @@ QUICK BUILD (QUICK)
-         <pathelement location="${build-quick.dir}/classes/compiler"/>
-         <path refid="fjbg.classpath"/>
-         <path refid="aux.libs"/>
--        <pathelement location="${jline.jar}"/>
-+        <pathelement location="${jline2.jar}"/>
-       </compilationpath>
-     </scalacfork>
-     <scalacfork
-@@ -1205,7 +1193,7 @@ QUICK BUILD (QUICK)
-         <path refid="forkjoin.classpath"/>
-         <path refid="fjbg.classpath"/>
-         <path refid="asm.classpath"/>
--        <pathelement location="${jline.jar}"/>
-+        <pathelement location="${jline2.jar}"/>
-       </compilationpath>
-     </scalacfork>
-     <propertyfile file="${build-quick.dir}/classes/compiler/compiler.properties">
-@@ -1409,7 +1397,7 @@ QUICK BUILD (QUICK)
-       <path refid="fjbg.classpath"/>
-       <path refid="aux.libs"/>
-       <path refid="asm.classpath"/>
--      <pathelement location="${jline.jar}"/>
-+      <pathelement location="${jline2.jar}"/>
-     </path>
-     <taskdef name="quick-bin" classname="scala.tools.ant.ScalaTool" classpathref="quick.bin.classpath"/>
-     <mkdir dir="${build-quick.dir}/bin"/>
-@@ -1535,7 +1523,7 @@ PACKED QUICK BUILD (PACK)
+-  <target name="init" depends="init.jars, init.maven.jars, init.version.done, init.fail.bad.jdk, init.warn.jdk7, init.extra.tasks">
++  <target name="init" depends="init.maven.jars, init.version.done, init.fail.bad.jdk, init.warn.jdk7, init.extra.tasks">
+     <property name="scalac.args.always" value="-Yreify-copypaste" />
+   <!-- scalac.args.optimise is selectively overridden in certain antcall tasks. -->
+     <property name="scalac.args.optimise" value=""/>
+@@ -1535,7 +1534,6 @@ PACKED QUICK BUILD (PACK)
        <fileset dir="${build-asm.dir}/classes"/>
        <fileset dir="${build-libs.dir}/classes/fjbg"/>
      </jar>
 -    <copy file="${jline.jar}" toDir="${build-pack.dir}/lib"/>
-+    <copy file="${jline2.jar}" toDir="${build-pack.dir}/lib"/>
      <copy todir="${build-pack.dir}/lib">
        <fileset dir="${lib-extra.dir}">
          <include name="**/*.jar"/>
-@@ -1612,7 +1600,7 @@ PACKED QUICK BUILD (PACK)
-         <pathelement location="${build-pack.dir}/lib/scala-library.jar"/>
-         <pathelement location="${build-pack.dir}/lib/scala-reflect.jar"/>
-         <pathelement location="${build-pack.dir}/lib/scala-compiler.jar"/>
--        <pathelement location="${build-pack.dir}/lib/jline.jar"/>
-+        <pathelement location="${build-pack.dir}/lib/jline2.jar"/>
-       </classpath>
-     </taskdef>
-     <mkdir dir="${build-pack.dir}/bin"/>
-@@ -1653,7 +1641,7 @@ PACKED QUICK BUILD (PACK)
-       <pathelement location="${build-pack.dir}/lib/scalap.jar"/>
-       <pathelement location="${build-pack.dir}/lib/scala-actors.jar"/>
-       <pathelement location="${ant.jar}"/>
--      <pathelement location="${jline.jar}"/>
-+      <pathelement location="${jline2.jar}"/>
-       <path refid="lib.extra"/>
-     </path>
-     <taskdef resource="scala/tools/ant/antlib.xml" classpathref="pack.classpath"/>
-@@ -1909,7 +1897,7 @@ BOOTSTRAPPING BUILD (STRAP)
-         <pathelement location="${build-strap.dir}/classes/reflect"/>
-         <path refid="forkjoin.classpath"/>
-         <path refid="aux.libs"/>
--        <pathelement location="${jline.jar}"/>
-+        <pathelement location="${jline2.jar}"/>
-       </compilationpath>
-     </scalacfork>
-     <propertyfile file="${build-strap.dir}/classes/reflect/reflect.properties">
-@@ -1969,7 +1957,7 @@ BOOTSTRAPPING BUILD (STRAP)
-         <pathelement location="${build-strap.dir}/classes/compiler"/>
-         <path refid="fjbg.classpath"/>
-         <path refid="aux.libs"/>
--        <pathelement location="${jline.jar}"/>
-+        <pathelement location="${jline2.jar}"/>
-       </compilationpath>
-     </scalacfork>
-     <scalacfork
-@@ -1987,7 +1975,7 @@ BOOTSTRAPPING BUILD (STRAP)
-         <path refid="forkjoin.classpath"/>
-         <path refid="fjbg.classpath"/>
-         <path refid="asm.classpath"/>
--        <pathelement location="${jline.jar}"/>
-+        <pathelement location="${jline2.jar}"/>
-       </compilationpath>
-     </scalacfork>
-     <propertyfile file="${build-strap.dir}/classes/compiler/compiler.properties">
-diff -up scala-2.10.0-RC3/src/compiler/scala/tools/nsc/interpreter/ConsoleReaderHelper.scala.sysjline scala-2.10.0-RC3/src/compiler/scala/tools/nsc/interpreter/ConsoleReaderHelper.scala
---- scala-2.10.0-RC3/src/compiler/scala/tools/nsc/interpreter/ConsoleReaderHelper.scala.sysjline	2012-11-25 16:14:31.000000000 +0100
-+++ scala-2.10.0-RC3/src/compiler/scala/tools/nsc/interpreter/ConsoleReaderHelper.scala	2012-11-25 19:18:34.050131207 +0100
+diff -up scala-2.10.0-RC5/src/compiler/scala/tools/nsc/interpreter/ConsoleReaderHelper.scala.sysjline scala-2.10.0-RC5/src/compiler/scala/tools/nsc/interpreter/ConsoleReaderHelper.scala
+--- scala-2.10.0-RC5/src/compiler/scala/tools/nsc/interpreter/ConsoleReaderHelper.scala.sysjline	2012-12-07 19:39:50.000000000 +0100
++++ scala-2.10.0-RC5/src/compiler/scala/tools/nsc/interpreter/ConsoleReaderHelper.scala	2012-12-07 19:51:05.782792214 +0100
 @@ -6,8 +6,8 @@
  package scala.tools.nsc
  package interpreter
@@ -178,9 +49,9 @@ diff -up scala-2.10.0-RC3/src/compiler/scala/tools/nsc/interpreter/ConsoleReader
  import Completion._
  
  trait ConsoleReaderHelper extends ConsoleReader {
-diff -up scala-2.10.0-RC3/src/compiler/scala/tools/nsc/interpreter/Delimited.scala.sysjline scala-2.10.0-RC3/src/compiler/scala/tools/nsc/interpreter/Delimited.scala
---- scala-2.10.0-RC3/src/compiler/scala/tools/nsc/interpreter/Delimited.scala.sysjline	2012-11-25 16:14:31.000000000 +0100
-+++ scala-2.10.0-RC3/src/compiler/scala/tools/nsc/interpreter/Delimited.scala	2012-11-25 19:18:34.050131207 +0100
+diff -up scala-2.10.0-RC5/src/compiler/scala/tools/nsc/interpreter/Delimited.scala.sysjline scala-2.10.0-RC5/src/compiler/scala/tools/nsc/interpreter/Delimited.scala
+--- scala-2.10.0-RC5/src/compiler/scala/tools/nsc/interpreter/Delimited.scala.sysjline	2012-12-07 19:39:50.000000000 +0100
++++ scala-2.10.0-RC5/src/compiler/scala/tools/nsc/interpreter/Delimited.scala	2012-12-07 19:51:05.782792214 +0100
 @@ -6,7 +6,7 @@
  package scala.tools.nsc
  package interpreter
@@ -190,9 +61,9 @@ diff -up scala-2.10.0-RC3/src/compiler/scala/tools/nsc/interpreter/Delimited.sca
  
  class JLineDelimiter extends ArgumentDelimiter {
    def toJLine(args: List[String], cursor: Int) = args match {
-diff -up scala-2.10.0-RC3/src/compiler/scala/tools/nsc/interpreter/JLineCompletion.scala.sysjline scala-2.10.0-RC3/src/compiler/scala/tools/nsc/interpreter/JLineCompletion.scala
---- scala-2.10.0-RC3/src/compiler/scala/tools/nsc/interpreter/JLineCompletion.scala.sysjline	2012-11-25 16:14:31.000000000 +0100
-+++ scala-2.10.0-RC3/src/compiler/scala/tools/nsc/interpreter/JLineCompletion.scala	2012-11-25 19:18:34.050131207 +0100
+diff -up scala-2.10.0-RC5/src/compiler/scala/tools/nsc/interpreter/JLineCompletion.scala.sysjline scala-2.10.0-RC5/src/compiler/scala/tools/nsc/interpreter/JLineCompletion.scala
+--- scala-2.10.0-RC5/src/compiler/scala/tools/nsc/interpreter/JLineCompletion.scala.sysjline	2012-12-07 19:39:50.000000000 +0100
++++ scala-2.10.0-RC5/src/compiler/scala/tools/nsc/interpreter/JLineCompletion.scala	2012-12-07 19:51:05.783792215 +0100
 @@ -6,8 +6,8 @@
  package scala.tools.nsc
  package interpreter
@@ -204,9 +75,9 @@ diff -up scala-2.10.0-RC3/src/compiler/scala/tools/nsc/interpreter/JLineCompleti
  import Completion._
  import scala.collection.mutable.ListBuffer
  
-diff -up scala-2.10.0-RC3/src/compiler/scala/tools/nsc/interpreter/JLineReader.scala.sysjline scala-2.10.0-RC3/src/compiler/scala/tools/nsc/interpreter/JLineReader.scala
---- scala-2.10.0-RC3/src/compiler/scala/tools/nsc/interpreter/JLineReader.scala.sysjline	2012-11-25 16:14:31.000000000 +0100
-+++ scala-2.10.0-RC3/src/compiler/scala/tools/nsc/interpreter/JLineReader.scala	2012-11-25 19:18:34.050131207 +0100
+diff -up scala-2.10.0-RC5/src/compiler/scala/tools/nsc/interpreter/JLineReader.scala.sysjline scala-2.10.0-RC5/src/compiler/scala/tools/nsc/interpreter/JLineReader.scala
+--- scala-2.10.0-RC5/src/compiler/scala/tools/nsc/interpreter/JLineReader.scala.sysjline	2012-12-07 19:39:50.000000000 +0100
++++ scala-2.10.0-RC5/src/compiler/scala/tools/nsc/interpreter/JLineReader.scala	2012-12-07 19:51:05.783792215 +0100
 @@ -6,8 +6,8 @@
  package scala.tools.nsc
  package interpreter
@@ -218,9 +89,9 @@ diff -up scala-2.10.0-RC3/src/compiler/scala/tools/nsc/interpreter/JLineReader.s
  import session._
  import scala.collection.JavaConverters._
  import Completion._
-diff -up scala-2.10.0-RC3/src/compiler/scala/tools/nsc/interpreter/Parsed.scala.sysjline scala-2.10.0-RC3/src/compiler/scala/tools/nsc/interpreter/Parsed.scala
---- scala-2.10.0-RC3/src/compiler/scala/tools/nsc/interpreter/Parsed.scala.sysjline	2012-11-25 16:14:31.000000000 +0100
-+++ scala-2.10.0-RC3/src/compiler/scala/tools/nsc/interpreter/Parsed.scala	2012-11-25 19:18:34.051131208 +0100
+diff -up scala-2.10.0-RC5/src/compiler/scala/tools/nsc/interpreter/Parsed.scala.sysjline scala-2.10.0-RC5/src/compiler/scala/tools/nsc/interpreter/Parsed.scala
+--- scala-2.10.0-RC5/src/compiler/scala/tools/nsc/interpreter/Parsed.scala.sysjline	2012-12-07 19:39:50.000000000 +0100
++++ scala-2.10.0-RC5/src/compiler/scala/tools/nsc/interpreter/Parsed.scala	2012-12-07 19:51:05.783792215 +0100
 @@ -6,7 +6,7 @@
  package scala.tools.nsc
  package interpreter
@@ -230,9 +101,9 @@ diff -up scala-2.10.0-RC3/src/compiler/scala/tools/nsc/interpreter/Parsed.scala.
  import util.returning
  
  /** One instance of a command buffer.
-diff -up scala-2.10.0-RC3/src/compiler/scala/tools/nsc/interpreter/ReplProps.scala.sysjline scala-2.10.0-RC3/src/compiler/scala/tools/nsc/interpreter/ReplProps.scala
---- scala-2.10.0-RC3/src/compiler/scala/tools/nsc/interpreter/ReplProps.scala.sysjline	2012-11-25 16:14:31.000000000 +0100
-+++ scala-2.10.0-RC3/src/compiler/scala/tools/nsc/interpreter/ReplProps.scala	2012-11-25 19:18:34.051131208 +0100
+diff -up scala-2.10.0-RC5/src/compiler/scala/tools/nsc/interpreter/ReplProps.scala.sysjline scala-2.10.0-RC5/src/compiler/scala/tools/nsc/interpreter/ReplProps.scala
+--- scala-2.10.0-RC5/src/compiler/scala/tools/nsc/interpreter/ReplProps.scala.sysjline	2012-12-07 19:39:50.000000000 +0100
++++ scala-2.10.0-RC5/src/compiler/scala/tools/nsc/interpreter/ReplProps.scala	2012-12-07 19:51:05.783792215 +0100
 @@ -13,8 +13,8 @@ class ReplProps {
    private def bool(name: String) = BooleanProp.keyExists(name)
    private def int(name: String) = IntProp(name)
@@ -244,9 +115,9 @@ diff -up scala-2.10.0-RC3/src/compiler/scala/tools/nsc/interpreter/ReplProps.sca
  
    val info  = bool("scala.repl.info")
    val debug = bool("scala.repl.debug")
-diff -up scala-2.10.0-RC3/src/compiler/scala/tools/nsc/interpreter/session/package.scala.sysjline scala-2.10.0-RC3/src/compiler/scala/tools/nsc/interpreter/session/package.scala
---- scala-2.10.0-RC3/src/compiler/scala/tools/nsc/interpreter/session/package.scala.sysjline	2012-11-25 16:14:30.000000000 +0100
-+++ scala-2.10.0-RC3/src/compiler/scala/tools/nsc/interpreter/session/package.scala	2012-11-25 19:18:34.051131208 +0100
+diff -up scala-2.10.0-RC5/src/compiler/scala/tools/nsc/interpreter/session/package.scala.sysjline scala-2.10.0-RC5/src/compiler/scala/tools/nsc/interpreter/session/package.scala
+--- scala-2.10.0-RC5/src/compiler/scala/tools/nsc/interpreter/session/package.scala.sysjline	2012-12-07 19:39:49.000000000 +0100
++++ scala-2.10.0-RC5/src/compiler/scala/tools/nsc/interpreter/session/package.scala	2012-12-07 19:51:05.784792216 +0100
 @@ -14,10 +14,10 @@ package object session {
    type JIterator[T]       = java.util.Iterator[T]
    type JListIterator[T]   = java.util.ListIterator[T]
diff --git a/scala.spec b/scala.spec
index 8f345cc..47951a1 100644
--- a/scala.spec
+++ b/scala.spec
@@ -17,10 +17,8 @@ Group:          Development/Languages
 License:        BSD
 URL:            http://www.scala-lang.org/
 # Source
-# Source archiv was built with
-# ./get-source.sh %{fullversion}
-# from git reposiroy
-Source0:	scala-%{fullversion}.tgz
+Source0:	http://www.scala-lang.org/downloads/distrib/files/scala-sources-%{fullversion}.tgz
+Source1:	scala-library-2.10.0-bnd.properties
 # Source0:        http://www.scala-lang.org/downloads/distrib/files/scala-sources-%{fullversion}.tgz
 # Change the default classpath (SCALA_HOME)
 Patch1:		scala-2.10.0-tooltemplate.patch
@@ -28,8 +26,8 @@ Patch1:		scala-2.10.0-tooltemplate.patch
 Patch2:	        scala-2.10.0-use_system_jline.patch
 # change org.scala-lang jline in org.sonatype.jline jline
 Patch3:	        scala-2.9.2-compiler-pom.patch
-
-Patch4:	        scala-2.9.2-java7.patch
+# Patch Swing module for JDK 1.7
+Patch4:	        scala-2.10.0-java7.patch
 
 Source21:       scala.keys
 Source22:       scala.mime
@@ -46,6 +44,7 @@ BuildRequires:  jline2
 BuildRequires:  jpackage-utils
 # BuildRequires:  maven-ant-tasks
 BuildRequires:  shtool
+BuildRequires:	aqute-bnd
 Requires:       java
 Requires:       jline2
 Requires:       jpackage-utils
@@ -90,11 +89,11 @@ object-oriented and functional programming. This package contains examples for
 the Scala programming language
 
 %prep
-%setup -q -n scala-%{fullversion}
+%setup -q -n scala-%{fullversion}-sources
 %patch1 -p1 -b .tool
 %patch2 -p1 -b .sysjline
 %patch3 -p0 -b .compiler-pom
-# %patch4 -p1 -b .jdk7
+%patch4 -p1 -b .jdk7
 
 pushd src
 rm -rf jline
@@ -125,6 +124,14 @@ popd
 export ANT_OPTS="-Xms1024m -Xmx1024m"
 ant build docs
 
+pushd build/pack/lib
+cp %{SOURCE1} bnd.properties
+java -jar $(build-classpath aqute-bnd) wrap -properties \
+    bnd.properties scala-library.jar
+mv scala-library.jar scala-library.jar.no
+mv scala-library.bar scala-library.jar
+popd
+
 %install
 
 install -d $RPM_BUILD_ROOT%{_bindir}
@@ -136,7 +143,7 @@ install -p -m 755 -d $RPM_BUILD_ROOT%{_javadir}/scala
 install -p -m 755 -d $RPM_BUILD_ROOT%{scaladir}/lib
 install -d -m 755 $RPM_BUILD_ROOT%{_mavenpomdir}
 
-for libname in scala-compiler scala-dbc scala-library scala-partest scalap scala-swing ; do
+for libname in scala-compiler scala-library scala-partest scala-reflect scalap scala-swing ; do
         install -m 644 build/pack/lib/$libname.jar $RPM_BUILD_ROOT%{_javadir}/scala/
         shtool mkln -s $RPM_BUILD_ROOT%{_javadir}/scala/$libname.jar $RPM_BUILD_ROOT%{scaladir}/lib
         sed -i "s|@VERSION@|%{fullversion}|" src/build/maven/$libname-pom.xml
@@ -181,7 +188,7 @@ update-mime-database %{_datadir}/mime &> /dev/null || :
 %{_mandir}/man1/*
 %{_mavenpomdir}/JPP.%{name}-*.pom
 %{_mavendepmapfragdir}/%{name}
-%doc docs/LICENSE README
+%doc docs/LICENSE
 
 %files -n ant-scala
 # Following is plain config because the ant task classpath could change from
@@ -198,8 +205,8 @@ update-mime-database %{_datadir}/mime &> /dev/null || :
 %doc docs/LICENSE
 
 %changelog
-* Sat Nov 24 2012 Jochen Schmitt <Jochen herr-schmitt de> 2.9.2-2
-- Enabel swing module (#879828)
+* Fri Dec  7 2012 Jochen Schmitt <Jochen herr-schmitt de> - 2.10.0-0.3
+- New upstream release
 
 * Thu Sep 13 2012 gil cattaneo <puntogil at libero.it> 2.9.2-1
 - update to 2.9.2
diff --git a/sources b/sources
index 8f92934..7550d58 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-e56dc20da89fe4e6a8f145f903962ded  scala-2.10.0-RC3.tgz
+031d1c3b16ddb130f7e65d5f7aa93b3e  scala-sources-2.10.0-RC3.tgz


More information about the scm-commits mailing list