summaryrefslogtreecommitdiff
path: root/build.xml
diff options
context:
space:
mode:
Diffstat (limited to 'build.xml')
-rwxr-xr-xbuild.xml144
1 files changed, 108 insertions, 36 deletions
diff --git a/build.xml b/build.xml
index 2af335d6ab..1282c3b45b 100755
--- a/build.xml
+++ b/build.xml
@@ -123,7 +123,6 @@ TODO:
<property name="library.starr.jar" value="${lib.dir}/scala-library.jar"/>
<property name="reflect.starr.jar" value="${lib.dir}/scala-reflect.jar"/>
<property name="compiler.starr.jar" value="${lib.dir}/scala-compiler.jar"/>
- <property name="jline.jar" value="${lib.dir}/jline.jar"/>
<property name="ant.jar" value="${ant.home}/lib/ant.jar"/>
<property name="scalacheck.jar" value="${lib.dir}/scalacheck.jar"/>
@@ -153,6 +152,8 @@ TODO:
<property name="copyright.string" value="Copyright 2002-2013, LAMP/EPFL"/>
<property name="partest.version.number" value="0.9.3"/>
+ <property name="jline.version" value="2.11"/>
+
<!-- These are NOT the flags used to run SuperSabbus, but the ones written
into the script runners created with scala.tools.ant.ScalaTool -->
<property name="java.flags" value="-Xmx256M -Xms32M"/>
@@ -238,6 +239,10 @@ TODO:
<dependency groupId="org.scala-tools.testing" artifactId="test-interface" version="0.5" />
</artifact:dependencies>
+ <artifact:dependencies pathId="repl.deps.classpath" filesetId="repl.deps.fileset" versionsId="repl.deps.versions">
+ <dependency groupId="jline" artifactId="jline" version="${jline.version}"/>
+ </artifact:dependencies>
+
<!-- BND support -->
<typedef resource="aQute/bnd/ant/taskdef.properties" classpathref="extra.tasks.classpath" />
@@ -472,7 +477,7 @@ TODO:
There must be a variable of the shape @{stage}.@{project}.build.path
for all @{stage} in locker, quick, strap
and all @{project} in library, reflect, compiler
- when stage is quick, @{project} also includes: actors, repl, swing, plugins, scalacheck, interactive, scaladoc, partest, scalap
+ when stage is quick, @{project} also includes: actors, parser-combinators, xml, repl, swing, plugins, scalacheck, interactive, scaladoc, partest, scalap
-->
<!-- LOCKER -->
@@ -510,6 +515,11 @@ TODO:
<pathelement location="${build-quick.dir}/classes/actors"/>
</path>
+ <path id="quick.parser-combinators.build.path">
+ <path refid="quick.library.build.path"/>
+ <pathelement location="${build-quick.dir}/classes/parser-combinators"/>
+ </path>
+
<path id="quick.reflect.build.path">
<path refid="quick.library.build.path"/>
<pathelement location="${build-quick.dir}/classes/reflect"/>
@@ -524,12 +534,16 @@ TODO:
<path id="quick.repl.build.path">
<path refid="quick.compiler.build.path"/>
<pathelement location="${build-quick.dir}/classes/repl"/>
- <pathelement location="${jline.jar}"/>
+ <path refid="repl.deps.classpath"/>
+ </path>
+
+ <path id="quick.xml.build.path">
+ <path refid="quick.library.build.path"/>
+ <pathelement location="${build-quick.dir}/classes/xml"/>
</path>
<path id="quick.swing.build.path">
<path refid="quick.library.build.path"/>
- <path refid="quick.actors.build.path"/>
<pathelement location="${build-quick.dir}/classes/swing"/>
</path>
@@ -541,6 +555,7 @@ TODO:
<path id="quick.scalacheck.build.path">
<pathelement location="${build-quick.dir}/classes/library"/>
<pathelement location="${build-quick.dir}/classes/actors"/>
+ <pathelement location="${build-quick.dir}/classes/parser-combinators"/>
<pathelement location="${build-quick.dir}/classes/scalacheck"/>
<path refid="partest.extras.classpath"/>
</path>
@@ -548,18 +563,21 @@ TODO:
<path id="quick.scalap.build.path">
<path refid="quick.compiler.build.path"/>
<pathelement location="${build-quick.dir}/classes/scalap"/>
- <pathelement location="${build-quick.dir}/classes/partest"/>
</path>
<path id="quick.partest.build.path">
+ <path refid="quick.xml.build.path"/>
<path refid="quick.scalap.build.path"/>
<path refid="partest.extras.classpath"/>
<pathelement location="${build-quick.dir}/classes/repl"/>
<pathelement location="${scalacheck.jar}"/>
+ <pathelement location="${build-quick.dir}/classes/partest"/>
</path>
<path id="quick.scaladoc.build.path">
+ <path refid="quick.xml.build.path"/>
<path refid="quick.compiler.build.path"/>
+ <path refid="quick.parser-combinators.build.path"/>
<pathelement location="${build-quick.dir}/classes/partest"/>
<pathelement location="${build-quick.dir}/classes/scaladoc"/>
</path>
@@ -571,6 +589,8 @@ TODO:
</path>
<path id="quick.bin.tool.path">
+ <path refid="quick.parser-combinators.build.path"/>
+ <path refid="quick.xml.build.path"/>
<path refid="quick.repl.build.path"/>
<path refid="quick.actors.build.path"/>
<pathelement location="${build-quick.dir}/classes/scalap"/>
@@ -578,25 +598,24 @@ TODO:
</path>
<!-- PACK -->
- <!-- also used for docs.* targets TODO: use separate paths for those -->
<path id="pack.compiler.path">
<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/scala-partest.jar"/>
- <pathelement location="${build-pack.dir}/lib/scalap.jar"/>
- <pathelement location="${build-pack.dir}/lib/scala-actors.jar"/>
<pathelement location="${ant.jar}"/>
- <path refid="partest.extras.classpath"/>
+ <path refid="forkjoin.classpath"/>
<path refid="aux.libs"/>
</path>
<path id="pack.bin.tool.path">
<pathelement location="${build-pack.dir}/lib/scala-library.jar"/>
+ <pathelement location="${build-pack.dir}/lib/scala-actors.jar"/>
+ <pathelement location="${build-pack.dir}/lib/scala-parser-combinators.jar"/>
+ <pathelement location="${build-pack.dir}/lib/scala-xml.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/scalap.jar"/>
- <pathelement location="${build-pack.dir}/lib/jline.jar"/>
+ <path refid="repl.deps.classpath"/>
<path refid="aux.libs"/>
</path>
@@ -618,6 +637,8 @@ TODO:
<fileset dir="${asm-classes}"/>
</path>
+ <path id="pack.parser-combinators.files"> <fileset dir="${build-quick.dir}/classes/parser-combinators"/> </path>
+ <path id="pack.xml.files"> <fileset dir="${build-quick.dir}/classes/xml"/> </path>
<path id="pack.swing.files"> <fileset dir="${build-quick.dir}/classes/swing"/> </path>
<path id="pack.reflect.files"> <fileset dir="${build-quick.dir}/classes/reflect"/> </path>
<path id="pack.plugins.files"> <fileset dir="${build-quick.dir}/classes/continuations-plugin"/> </path>
@@ -656,6 +677,20 @@ TODO:
</path>
<!-- MISC -->
+ <path id="docs.compiler.path">
+ <pathelement location="${build-pack.dir}/lib/scala-library.jar"/>
+ <pathelement location="${build-pack.dir}/lib/scala-parser-combinators.jar"/>
+ <pathelement location="${build-pack.dir}/lib/scala-xml.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/scala-partest.jar"/>
+ <pathelement location="${build-pack.dir}/lib/scalap.jar"/>
+ <pathelement location="${build-pack.dir}/lib/scala-actors.jar"/>
+ <pathelement location="${ant.jar}"/>
+ <path refid="partest.extras.classpath"/>
+ <path refid="aux.libs"/>
+ </path>
+
<path id="sbt.compile.build.path">
<path refid="quick.compiler.build.path"/>
<pathelement location="${build-quick.dir}/classes/repl"/>
@@ -671,6 +706,11 @@ TODO:
<path id="partest.classpath">
<path refid="pack.compiler.path"/>
+ <pathelement location="${build-pack.dir}/lib/scala-parser-combinators.jar"/>
+ <pathelement location="${build-pack.dir}/lib/scala-xml.jar"/>
+ <pathelement location="${build-pack.dir}/lib/scala-partest.jar"/>
+ <pathelement location="${build-pack.dir}/lib/scalap.jar"/>
+ <pathelement location="${build-pack.dir}/lib/scala-actors.jar"/>
<path refid="partest.extras.classpath"/>
</path>
@@ -696,6 +736,7 @@ TODO:
<pathelement location="${build-osgi.dir}/org.scala-lang.scala-reflect.jar"/>
<pathelement location="${build-osgi.dir}/org.scala-lang.scala-compiler.jar"/>
<pathelement location="${build-osgi.dir}/org.scala-lang.scala-actors.jar"/>
+ <pathelement location="${build-osgi.dir}/org.scala-lang.scala-parser-combinators.jar"/>
<path refid="pax.exam.classpath"/>
<path refid="forkjoin.classpath"/>
</path>
@@ -704,7 +745,7 @@ TODO:
<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"/>
+ <path refid="repl.deps.classpath"/>
</path>
<path id="test.positions.sub.build.path" path="${build-quick.dir}/classes/library"/>
@@ -1070,7 +1111,7 @@ TODO:
doctitle="@{title}"
docversion="${version.number}"
sourcepath="${src.dir}"
- classpathref="pack.compiler.path"
+ classpathref="docs.compiler.path"
srcdir="${src.dir}/@{dir}"
addparams="${scalac.args.all}"
implicits="on"
@@ -1086,7 +1127,7 @@ TODO:
doctitle="@{title}"
docversion="${version.number}"
sourcepath="${src.dir}"
- classpathref="pack.compiler.path"
+ classpathref="docs.compiler.path"
srcdir="${src.dir}/@{dir}"
docRootContent="${src.dir}/@{project}/@{docroot}"
addparams="${scalac.args.all}"
@@ -1140,6 +1181,9 @@ TODO:
<target name="quick.actors" depends="quick.lib">
<staged-build with="locker" stage="quick" project="actors"/> </target>
+ <target name="quick.parser-combinators" depends="quick.lib">
+ <staged-build with="locker" stage="quick" project="parser-combinators"/> </target>
+
<target name="quick.reflect" depends="quick.lib">
<staged-build with="locker" stage="quick" project="reflect"/> </target>
@@ -1149,20 +1193,23 @@ TODO:
<target name="quick.repl" depends="quick.comp">
<staged-build with="locker" stage="quick" project="repl"/> </target>
- <target name="quick.scalacheck" depends="quick.actors, quick.lib">
+ <target name="quick.scalacheck" depends="quick.actors, quick.parser-combinators, quick.lib">
<staged-build with="locker" stage="quick" project="scalacheck" args="-nowarn"/> </target>
<target name="quick.scalap" depends="quick.repl">
<staged-build with="locker" stage="quick" project="scalap"/> </target>
- <target name="quick.partest" depends="quick.scalap, quick.repl, asm.done">
+ <target name="quick.partest" depends="quick.scalap, quick.xml, quick.repl, asm.done">
<staged-build with="locker" stage="quick" project="partest" version="partest"/> </target>
- <target name="quick.scaladoc" depends="quick.comp, quick.partest">
- <staged-build with="locker" stage="quick" project="scaladoc" version="scaladoc"/> </target>
+ <target name="quick.scaladoc" depends="quick.comp, quick.partest, quick.parser-combinators">
+ <staged-build with="locker" stage="quick" project="scaladoc" version="scaladoc"/> </target>
<target name="quick.interactive" depends="quick.comp, quick.scaladoc">
- <staged-build with="locker" stage="quick" project="interactive"/> </target>
+ <staged-build with="locker" stage="quick" project="interactive"/> </target>
+
+ <target name="quick.xml" depends="quick.lib">
+ <staged-build with="locker" stage="quick" project="xml"/> </target>
<target name="quick.swing" depends="quick.actors, quick.lib" if="has.java6">
<staged-build with="locker" stage="quick" project="swing"/> </target>
@@ -1200,7 +1247,7 @@ TODO:
</staged-uptodate>
</target>
- <target name="quick.bin" depends="quick.lib, quick.reflect, quick.comp, quick.repl, quick.scalacheck, quick.scalap, quick.interactive, quick.swing, quick.plugins, quick.partest, quick.scaladoc">
+ <target name="quick.bin" depends="quick.lib, quick.reflect, quick.comp, quick.repl, quick.scalacheck, quick.scalap, quick.interactive, quick.xml, quick.parser-combinators, quick.swing, quick.plugins, quick.partest, quick.scaladoc">
<staged-bin stage="quick" classpathref="quick.bin.tool.path"/>
</target>
@@ -1215,13 +1262,18 @@ TODO:
<staged-pack project="library"/></target>
<target name="pack.actors" depends="quick.lib"> <staged-pack project="actors"/> </target>
+ <target name="pack.xml" depends="quick.xml"> <staged-pack project="xml"/> </target>
+ <target name="pack.parser-combinators" depends="quick.parser-combinators"> <staged-pack project="parser-combinators"/> </target>
<target name="pack.swing" if="has.java6" depends="quick.swing"> <staged-pack project="swing"/> </target>
<target name="pack.reflect" depends="quick.reflect"> <staged-pack project="reflect"/> </target>
<target name="pack.comp" depends="quick.comp, quick.scaladoc, quick.interactive, quick.repl, asm.done">
<staged-pack project="compiler" manifest="${build-pack.dir}/META-INF/MANIFEST.MF">
<pre> <!-- TODO the files copied here do not influence actuality of this target (nor does the manifest) -->
- <copy file="${jline.jar}" toDir="${build-pack.dir}/lib"/>
+ <copy todir="${build-pack.dir}/lib">
+ <resources refid="repl.deps.fileset"/>
+ <mapper classpathref="maven-ant-tasks.classpath" classname="org.apache.maven.artifact.ant.VersionMapper" from="${repl.deps.versions}" to="flatten"/>
+ </copy>
<copy todir="${build-pack.dir}/lib">
<fileset dir="${lib-extra.dir}">
<include name="**/*.jar"/>
@@ -1251,7 +1303,7 @@ TODO:
<target name="pack.scalap" depends="quick.scalap"> <staged-pack project="scalap" targetjar="scalap.jar"/> </target>
- <target name="pack.bin" depends="pack.comp, pack.lib, pack.actors, pack.partest, pack.plugins, pack.reflect, pack.scalacheck, pack.scalap, pack.swing">
+ <target name="pack.bin" depends="pack.comp, pack.lib, pack.actors, pack.partest, pack.plugins, pack.reflect, pack.scalacheck, pack.scalap, pack.xml, pack.swing, pack.parser-combinators">
<staged-bin stage="pack"/>
</target>
@@ -1264,7 +1316,7 @@ TODO:
from="${partest.extras.versions}" to="flatten"/>
</copy>
- <taskdef resource="scala/tools/ant/antlib.xml" classpathref="pack.compiler.path"/>
+ <taskdef resource="scala/tools/ant/antlib.xml" classpathref="docs.compiler.path"/>
<taskdef resource="scala/tools/partest/antlib.xml" classpathref="partest.classpath"/>
</target>
@@ -1296,7 +1348,10 @@ TODO:
<fileset dir="${build-locker.dir}/classes/compiler"/>
<fileset dir="${asm-classes}"/>
</jar>
- <copy file="${jline.jar}" toDir="${build-palo.dir}/lib"/>
+ <copy todir="${build-palo.dir}/lib">
+ <resources refid="repl.deps.fileset"/>
+ <mapper classpathref="maven-ant-tasks.classpath" classname="org.apache.maven.artifact.ant.VersionMapper" from="${repl.deps.versions}" to="flatten"/>
+ </copy>
</target>
<target name="palo.bin" depends="palo.done"> <staged-bin stage="palo"/></target>
@@ -1355,16 +1410,18 @@ TODO:
<stopwatch name="osgi.bundle.timer"/>
<make-bundle name="scala-library" version="${osgi.version.number}" />
<make-bundle name="scala-actors" version="${osgi.version.number}" />
+ <make-bundle name="scala-parser-combinators" version="${osgi.version.number}" />
<make-bundle name="scala-reflect" version="${osgi.version.number}" />
<make-bundle name="scala-compiler" version="${osgi.version.number}" />
<make-plugin-bundle name="continuations" version="${osgi.version.number}" />
+ <make-bundle name="scala-xml" version="${osgi.version.number}"/>
<touch file="${build-osgi.dir}/bundles.complete" verbose="no"/>
<if><isset property="has.java6"/><then>
<make-bundle name="scala-swing" version="${osgi.version.number}"/></then>
</if>
- <stopwatch name="osgi.bundle.timer" action="total"/></then>
- </if>
+ <stopwatch name="osgi.bundle.timer" action="total"/>
+ </then></if>
</target>
@@ -1641,7 +1698,7 @@ TODO:
docversion="${version.number}"
docsourceurl="${scaladoc.url}€{FILE_PATH}.scala#L1"
sourcepath="${src.dir}"
- classpathref="pack.compiler.path"
+ classpathref="docs.compiler.path"
addparams="${scalac.args.all}"
docRootContent="${src.dir}/library/rootdoc.txt"
implicits="on"
@@ -1674,16 +1731,21 @@ TODO:
</staged-uptodate>
</target>
- <target name="docs.comp" depends="docs.start">
- <staged-docs project="compiler" title="Scala Compiler" docroot="rootdoc.txt">
+ <target name="docs.xml" depends="docs.start">
+ <staged-docs project="xml" title="Scala XML Library" docroot="rootdoc.txt">
+ <include name="**/*.scala"/>
+ </staged-docs>
+ </target>
+
+ <target name="docs.parser-combinators" depends="docs.start">
+ <staged-docs project="parser-combinators" title="Scala Parser Combinator Library" docroot="rootdoc.txt">
<include name="**/*.scala"/>
</staged-docs>
</target>
- <target name="docs.jline" depends="docs.start">
- <staged-docs project="jline" dir="jline/src/main/java" title="Scala JLine">
+ <target name="docs.comp" depends="docs.start">
+ <staged-docs project="compiler" title="Scala Compiler" docroot="rootdoc.txt">
<include name="**/*.scala"/>
- <include name="**/*.java"/>
</staged-docs>
</target>
@@ -1712,7 +1774,7 @@ TODO:
<mkdir dir="${build.dir}/manmaker/classes"/>
<scalac
destdir="${build.dir}/manmaker/classes"
- classpathref="pack.compiler.path"
+ classpathref="docs.compiler.path"
srcdir="${src.dir}/manual"
includes="**/*.scala"
addparams="${scalac.args.all}"/>
@@ -1742,8 +1804,7 @@ TODO:
</staged-uptodate>
</target>
- <target name="docs.done" depends="docs.jline, docs.comp, docs.man, docs.lib, docs.scalap, docs.partest, docs.continuations-plugin"/>
-
+ <target name="docs.done" depends="docs.comp, docs.man, docs.lib, docs.xml, docs.parser-combinators, docs.scalap, docs.partest, docs.continuations-plugin"/>
<!-- ===========================================================================
DISTRIBUTION
@@ -1771,7 +1832,6 @@ TODO:
<mkdir dir="${dist.dir}/lib"/>
<copy toDir="${dist.dir}/lib">
<fileset dir="${build-pack.dir}/lib">
- <include name="jline.jar"/>
<include name="scalacheck.jar"/>
<include name="scala-partest.jar"/>
<include name="scalap.jar"/>
@@ -1784,12 +1844,20 @@ TODO:
from="${partest.extras.versions}" to="flatten"/>
</copy>
+ <copy todir="${dist.dir}/lib">
+ <resources refid="repl.deps.fileset"/>
+ <mapper classpathref="maven-ant-tasks.classpath" classname="org.apache.maven.artifact.ant.VersionMapper"
+ from="${repl.deps.versions}" to="flatten"/>
+ </copy>
+
<mkdir dir="${dist.dir}/bin"/>
<!-- TODO - Stop being inefficient and don't copy OSGi bundles overtop other jars. -->
<copy-bundle name="scala-library"/>
<copy-bundle name="scala-reflect"/>
+ <copy-bundle name="scala-xml"/>
<copy-bundle name="scala-swing"/>
<copy-bundle name="scala-actors"/>
+ <copy-bundle name="scala-parser-combinators"/>
<copy-bundle name="scala-compiler"/>
<copy toDir="${dist.dir}/bin">
<fileset dir="${build-pack.dir}/bin"/>
@@ -1846,8 +1914,10 @@ TODO:
<fileset dir="${src.dir}/interactive"/>
<fileset dir="${src.dir}/continuations/plugin"/>
</jar>
+ <jar whenmanifestonly="fail" destfile="${dist.dir}/src/scala-xml-src.jar" basedir="${src.dir}/xml"/>
<jar whenmanifestonly="fail" destfile="${dist.dir}/src/scala-swing-src.jar" basedir="${src.dir}/swing"/>
<jar whenmanifestonly="fail" destfile="${dist.dir}/src/scala-reflect-src.jar" basedir="${src.dir}/reflect"/>
+ <jar whenmanifestonly="fail" destfile="${dist.dir}/src/scala-parser-combinators-src.jar" basedir="${src.dir}/parser-combinators"/>
<jar whenmanifestonly="fail" destfile="${dist.dir}/src/scalap-src.jar" basedir="${src.dir}/scalap"/>
<jar whenmanifestonly="fail" destfile="${dist.dir}/src/scala-partest-src.jar" basedir="${src.dir}/partest"/>
</target>
@@ -1896,8 +1966,10 @@ TODO:
<target name="starr.src" depends="starr.jars">
<jar whenmanifestonly="fail" destfile="${lib.dir}/scala-library-src.jar">
<fileset dir="${src.dir}/library"/>
+ <fileset dir="${src.dir}/xml"/>
<fileset dir="${src.dir}/swing"/>
<fileset dir="${src.dir}/actors"/>
+ <fileset dir="${src.dir}/parser-combinators"/>
<fileset dir="${src.dir}/forkjoin"/>
</jar>
<jar whenmanifestonly="fail" destfile="${lib.dir}/scala-reflect-src.jar" basedir="${src.dir}/reflect"/>