diff options
Diffstat (limited to 'build.xml')
-rw-r--r-- | build.xml | 124 |
1 files changed, 54 insertions, 70 deletions
@@ -111,7 +111,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="msil.starr.jar" value="${lib.dir}/msil.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"/> @@ -120,7 +119,6 @@ TODO: <property name="build.dir" value="${basedir}/build"/> <property name="build-libs.dir" value="${build.dir}/libs"/> <property name="build-asm.dir" value="${build.dir}/asm"/> - <property name="build-fjbg.dir" value="${build-libs.dir}"/> <property name="build-forkjoin.dir" value="${build-libs.dir}"/> <property name="build-locker.dir" value="${build.dir}/locker"/> <property name="build-palo.dir" value="${build.dir}/palo"/> @@ -232,6 +230,7 @@ TODO: <property name="maven-deps-done" value="yep!"/> </then></if> + <!-- NOTE: ant properties are write-once: second writes are silently discarded; the logic below relies on this --> <!-- Compute defaults (i.e., if not specified on command-line) for OSGi/maven version suffixes. @@ -406,10 +405,8 @@ TODO: <fail unless="version.suffixes.consistent" message="Version suffixes inconsistent!"/> <path id="forkjoin.classpath" path="${build-libs.dir}/classes/forkjoin"/> - <path id="fjbg.classpath" path="${build-libs.dir}/classes/fjbg"/> <path id="asm.classpath" path="${build-asm.dir}/classes"/> <property name="forkjoin-classes" refid="forkjoin.classpath"/> - <property name="fjbg-classes" refid="fjbg.classpath"/> <property name="asm-classes" refid="asm.classpath"/> <!-- Compilers to use for the various stages. @@ -422,7 +419,7 @@ TODO: <path refid="aux.libs"/> </path> - <!-- Download STARR (see above) via maven if `starr.version` is specified. + <!-- Download STARR via maven if `starr.version` is specified. Want to slow down STARR changes, using only released versions. --> <if><isset property="starr.version"/><then> <echo message="Using Scala ${starr.version} for STARR."/> @@ -432,7 +429,6 @@ TODO: <pathelement location="${library.starr.jar}"/> <pathelement location="${reflect.starr.jar}"/> <pathelement location="${compiler.starr.jar}"/> - <pathelement location="${msil.starr.jar}"/> </path> </else></if> @@ -453,7 +449,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, swing, plugins, scalacheck, partest, scalap + when stage is quick, @{project} also includes: actors, repl, swing, plugins, scalacheck, interactive, scaladoc, partest, scalap --> <!-- LOCKER --> @@ -468,11 +464,6 @@ TODO: <pathelement location="${build-locker.dir}/classes/actors"/> </path> - <path id="locker.msil.build.path"> - <path refid="locker.compiler.build.path"/> - <pathelement location="${build-locker.dir}/classes/msil"/> - </path> - <path id="locker.reflect.build.path"> <path refid="locker.library.build.path"/> <pathelement location="${build-locker.dir}/classes/reflect"/> @@ -481,14 +472,9 @@ TODO: <path id="locker.compiler.build.path"> <path refid="locker.reflect.build.path"/> <pathelement location="${build-locker.dir}/classes/compiler"/> - <pathelement location="${build-locker.dir}/classes/msil"/> <path refid="asm.classpath"/> - <path refid="fjbg.classpath"/> - <pathelement location="${jline.jar}"/> </path> - <path id="locker.msil.build.path" refid="locker.compiler.build.path"/> - <!-- QUICK --> <path id="quick.library.build.path"> <pathelement location="${build-quick.dir}/classes/library"/> @@ -506,17 +492,15 @@ TODO: <pathelement location="${build-quick.dir}/classes/reflect"/> </path> - <path id="quick.msil.build.path"> - <path refid="quick.compiler.build.path"/> - <pathelement location="${build-quick.dir}/classes/msil"/> - </path> - <path id="quick.compiler.build.path"> <path refid="quick.reflect.build.path"/> <pathelement location="${build-quick.dir}/classes/compiler"/> - <pathelement location="${build-quick.dir}/classes/msil"/> <path refid="asm.classpath"/> - <path refid="fjbg.classpath"/> + </path> + + <path id="quick.repl.build.path"> + <path refid="quick.compiler.build.path"/> + <pathelement location="${build-quick.dir}/classes/repl"/> <pathelement location="${jline.jar}"/> </path> @@ -546,22 +530,28 @@ TODO: <path id="quick.partest.build.path"> <path refid="quick.scalap.build.path"/> <path refid="partest.extras.classpath"/> + <pathelement location="${build-quick.dir}/classes/repl"/> <pathelement location="${scalacheck.jar}"/> </path> + <path id="quick.scaladoc.build.path"> + <path refid="quick.compiler.build.path"/> + <pathelement location="${build-quick.dir}/classes/partest"/> + <pathelement location="${build-quick.dir}/classes/scaladoc"/> + </path> + + <path id="quick.interactive.build.path"> + <path refid="quick.compiler.build.path"/> + <pathelement location="${build-quick.dir}/classes/scaladoc"/> + <pathelement location="${build-quick.dir}/classes/interactive"/> + </path> + <path id="quick.bin.tool.path"> - <pathelement location="${build-quick.dir}/classes/library"/> - <pathelement location="${build-quick.dir}/classes/actors"/> - <pathelement location="${build-quick.dir}/classes/reflect"/> - <pathelement location="${build-quick.dir}/classes/compiler"/> - <pathelement location="${build-quick.dir}/classes/msil"/> + <path refid="quick.repl.build.path"/> + <path refid="quick.actors.build.path"/> <pathelement location="${build-quick.dir}/classes/scalap"/> <pathelement location="${build-quick.dir}/classes/continuations-library"/> - <pathelement location="${jline.jar}"/> - <path refid="asm.classpath"/> - <path refid="forkjoin.classpath"/> - <path refid="aux.libs"/> - </path> + </path> <!-- PACK --> <!-- also used for docs.* targets TODO: use separate paths for those --> @@ -573,7 +563,6 @@ TODO: <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}"/> <path refid="partest.extras.classpath"/> <path refid="aux.libs"/> </path> @@ -599,9 +588,10 @@ TODO: <path id="pack.compiler.files"> <fileset dir="${build-quick.dir}/classes/compiler"/> - <fileset dir="${build-quick.dir}/classes/msil"/> + <fileset dir="${build-quick.dir}/classes/repl"/> + <fileset dir="${build-quick.dir}/classes/scaladoc"/> + <fileset dir="${build-quick.dir}/classes/interactive"/> <fileset dir="${asm-classes}"/> - <fileset dir="${fjbg-classes}"/> </path> <path id="pack.swing.files"> <fileset dir="${build-quick.dir}/classes/swing"/> </path> @@ -630,11 +620,6 @@ TODO: <path refid="aux.libs"/> </path> - <path id="strap.msil.build.path"> - <path refid="strap.compiler.build.path"/> - <pathelement location="${build-strap.dir}/classes/msil"/> - </path> - <path id="strap.reflect.build.path"> <path refid="strap.library.build.path"/> <pathelement location="${build-strap.dir}/classes/reflect"/> @@ -643,15 +628,15 @@ TODO: <path id="strap.compiler.build.path"> <path refid="strap.reflect.build.path"/> <pathelement location="${build-strap.dir}/classes/compiler"/> - <pathelement location="${build-strap.dir}/classes/msil"/> <path refid="asm.classpath"/> - <path refid="fjbg.classpath"/> - <pathelement location="${jline.jar}"/> </path> <!-- MISC --> <path id="sbt.compile.build.path"> <path refid="quick.compiler.build.path"/> + <pathelement location="${build-quick.dir}/classes/repl"/> + <pathelement location="${build-quick.dir}/classes/scaladoc"/> + <pathelement location="${build-quick.dir}/classes/interactive"/> <pathelement location="${sbt.interface.jar}"/> </path> @@ -748,12 +733,11 @@ TODO: <delete dir="${build-@{build}.dir}" includeemptydirs="yes" quiet="yes" failonerror="no"/> </sequential> </macrodef> - <!-- =========================================================================== LOCAL DEPENDENCIES ============================================================================ --> <macrodef name="simple-javac" > - <attribute name="project"/> <!-- project: fjbg/asm/forkjoin --> + <attribute name="project"/> <!-- project: asm/forkjoin --> <attribute name="args" default=""/> <attribute name="jar" default="yes"/> <sequential> @@ -778,10 +762,9 @@ TODO: <touch file="${build-libs.dir}/@{project}.complete" verbose="no"/> </then></if> </sequential> - </macrodef> - + </macrodef> + <target name="asm.done" depends="init"> <simple-javac project="asm" jar="no"/> </target> - <target name="fjbg.done" depends="init"> <simple-javac project="fjbg"/> </target> <target name="forkjoin.done" depends="init"> <simple-javac project="forkjoin" args="-XDignore.symbol.file"/></target> <!-- =========================================================================== @@ -1088,7 +1071,7 @@ TODO: <!-- =========================================================================== LOCAL REFERENCE BUILD (LOCKER) ============================================================================ --> - <target name="locker.start" depends="asm.done, forkjoin.done, fjbg.done"> + <target name="locker.start" depends="asm.done, forkjoin.done"> <condition property="locker.locked"><available file="${build-locker.dir}/locker.locked"/></condition></target> <target name="locker.lib" depends="locker.start" unless="locker.locked"> @@ -1097,13 +1080,10 @@ TODO: <target name="locker.actors" depends="locker.lib" unless="locker.locked"> <staged-build with="starr" stage="locker" project="actors"/> </target> - <target name="locker.msil" depends="locker.lib" unless="locker.locked"> - <staged-build with="starr" stage="locker" project="msil" java-excludes="**/tests/**"/> </target> - <target name="locker.reflect" depends="locker.lib" unless="locker.locked"> <staged-build with="starr" stage="locker" project="reflect"/></target> - <target name="locker.comp" depends="locker.reflect, locker.msil" unless="locker.locked"> + <target name="locker.comp" depends="locker.reflect" unless="locker.locked"> <staged-build with="starr" stage="locker" project="compiler"/></target> <target name="locker.done" depends="locker.comp"> @@ -1124,24 +1104,30 @@ TODO: <target name="quick.actors" depends="quick.lib"> <staged-build with="locker" stage="quick" project="actors"/> </target> - <target name="quick.msil" depends="quick.lib"> - <staged-build with="locker" stage="quick" project="msil" java-excludes="**/tests/**"/> </target> - <target name="quick.reflect" depends="quick.lib"> <staged-build with="locker" stage="quick" project="reflect"/> </target> - <target name="quick.comp" depends="quick.reflect, quick.msil"> + <target name="quick.comp" depends="quick.reflect"> <staged-build with="locker" stage="quick" project="compiler"/> </target> + <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"> <staged-build with="locker" stage="quick" project="scalacheck" args="-nowarn"/> </target> - <target name="quick.scalap" depends="quick.comp"> + <target name="quick.scalap" depends="quick.repl"> <staged-build with="locker" stage="quick" project="scalap"/> </target> - <target name="quick.partest" depends="quick.scalap, quick.comp, asm.done"> + <target name="quick.partest" depends="quick.scalap, 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.interactive" depends="quick.comp, quick.scaladoc"> + <staged-build with="locker" stage="quick" project="interactive"/> </target> + <target name="quick.swing" depends="quick.actors, quick.lib" if="has.java6"> <staged-build with="locker" stage="quick" project="swing"/> </target> @@ -1182,7 +1168,7 @@ TODO: <staged-bin stage="quick" classpathref="quick.bin.tool.path"/> </target> - <target name="quick.done" depends="quick.lib, quick.reflect, quick.comp, quick.scalacheck, quick.scalap, quick.swing, quick.plugins, quick.partest, quick.bin"/> + <target name="quick.done" depends="quick.lib, quick.reflect, quick.comp, quick.repl, quick.scalacheck, quick.scalap, quick.interactive, quick.swing, quick.plugins, quick.partest, quick.scaladoc, quick.bin"/> <target name="quick-opt" description="Optimized version of quick.done."> <optimized name="quick.done"/></target> @@ -1196,7 +1182,7 @@ TODO: <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, asm.done"> + <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"/> @@ -1252,7 +1238,6 @@ TODO: ============================================================================ --> <target name="strap.done" depends="pack.done"> <staged-build with="pack" stage="strap" project="library" srcpath="${src.dir}/library" includes="lib.rootdoc.includes"/> - <staged-build with="pack" stage="strap" project="msil" java-excludes="**/tests/**"/> <staged-build with="pack" stage="strap" project="reflect"/> <staged-build with="pack" stage="strap" project="compiler"/> </target> @@ -1274,7 +1259,6 @@ TODO: <jar whenmanifestonly="fail" destfile="${build-palo.dir}/lib/scala-compiler.jar" manifest="${basedir}/META-INF/MANIFEST.MF"> <fileset dir="${build-locker.dir}/classes/compiler"/> <fileset dir="${asm-classes}"/> - <fileset dir="${fjbg-classes}"/> </jar> <copy file="${jline.jar}" toDir="${build-palo.dir}/lib"/> </target> @@ -1459,7 +1443,6 @@ TODO: <runtests dir="${partest.dir}/${partest.srcdir}/run" includes="*.scala"/> <jvmtests dir="${partest.dir}/${partest.srcdir}/jvm" includes="*.scala"/> <residenttests dir="${partest.dir}/${partest.srcdir}/res" includes="*.res"/> - <buildmanagertests dir="${partest.dir}/${partest.srcdir}/buildmanager" includes="*"/> <scalaptests dir="${partest.dir}/${partest.srcdir}/scalap" includes="**/*.scala"/> <scalachecktests dir="${partest.dir}/${partest.srcdir}/scalacheck"> <include name="*.scala"/> @@ -1513,7 +1496,7 @@ TODO: BINARY COMPATIBILITY TESTING ============================================================================ --> <target name="bc.init" depends="init" unless="maven-deps-done-mima"> - <property name="bc-reference-version" value="2.10.0"/> + <property name="bc-reference-version" value="2.11.0"/> <property name="bc-build.dir" value="${build.dir}/bc"/> <!-- Obtain mima --> @@ -1572,7 +1555,10 @@ TODO: </macrodef> <target name="test.bc-opt" description="Optimized version of test.bc."> <optimized name="test.bc"/></target> - <target name="test.bc" depends="bc.init, pack.lib, pack.reflect, pack.swing"> + + <!-- Enable after the release of the 2.11.0 or a prior RC that estabilishes the new baseline. --> + <target name="test.bc"></target> + <target name="test.bc.disabled" depends="bc.init, pack.lib, pack.reflect, pack.swing"> <bc.check jar-name="scala-library"/> <bc.check jar-name="scala-reflect"/> <bc.check jar-name="scala-swing"/> @@ -1821,8 +1807,6 @@ TODO: <jar whenmanifestonly="fail" destfile="${dist.dir}/src/scala-reflect-src.jar" basedir="${src.dir}/reflect"/> <jar whenmanifestonly="fail" destfile="${dist.dir}/src/scala-swing-src.jar" basedir="${src.dir}/swing"/> <jar whenmanifestonly="fail" destfile="${dist.dir}/src/scala-compiler-src.jar" basedir="${src.dir}/compiler"/> - <jar whenmanifestonly="fail" destfile="${dist.dir}/src/fjbg-src.jar" basedir="${src.dir}/fjbg"/> - <jar whenmanifestonly="fail" destfile="${dist.dir}/src/msil-src.jar" basedir="${src.dir}/msil"/> <jar whenmanifestonly="fail" destfile="${dist.dir}/src/scala-actors-src.jar" basedir="${src.dir}/actors"/> <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"/> |