diff options
Diffstat (limited to 'build.xml')
-rw-r--r-- | build.xml | 129 |
1 files changed, 66 insertions, 63 deletions
@@ -96,7 +96,6 @@ targets exercised: <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"/> @@ -105,7 +104,6 @@ targets exercised: <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"/> @@ -217,6 +215,7 @@ targets exercised: <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. @@ -391,10 +390,8 @@ targets exercised: <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. @@ -407,7 +404,7 @@ targets exercised: <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> <property name="strr" refid="starr.compiler.path"/> @@ -418,7 +415,6 @@ targets exercised: <pathelement location="${library.starr.jar}"/> <pathelement location="${reflect.starr.jar}"/> <pathelement location="${compiler.starr.jar}"/> - <pathelement location="${msil.starr.jar}"/> </path> </else></if> @@ -439,7 +435,7 @@ targets exercised: 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 --> @@ -458,12 +454,8 @@ targets exercised: <path refid="locker.reflect.build.path"/> <pathelement location="${build-locker.dir}/classes/compiler"/> <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"/> @@ -482,12 +474,18 @@ targets exercised: <path refid="quick.reflect.build.path"/> <pathelement location="${build-quick.dir}/classes/compiler"/> <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> - <path id="quick.swing.build.path" refid="quick.library.build.path"/> - <path id="quick.msil.build.path" refid="quick.compiler.build.path"/> + <path id="quick.swing.build.path"> + <path refid="quick.library.build.path"/> + <pathelement location="${build-quick.dir}/classes/swing"/> + </path> <path id="quick.plugins.build.path"> <path refid="quick.compiler.build.path"/> @@ -508,20 +506,27 @@ targets exercised: <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/reflect"/> - <pathelement location="${build-quick.dir}/classes/compiler"/> + <path refid="quick.repl.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 --> @@ -533,7 +538,6 @@ targets exercised: <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> @@ -564,8 +568,10 @@ targets exercised: <path id="pack.compiler.files"> <fileset dir="${build-quick.dir}/classes/compiler"/> + <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> @@ -593,8 +599,7 @@ targets exercised: <path refid="forkjoin.classpath"/> <path refid="aux.libs"/> </path> - <path id="strap.actors.build.path" refid="strap.library.build.path"/> - <path id="strap.msil.build.path" refid="strap.compiler.build.path"/> + <path id="strap.actors.build.path"><path refid="strap.library.build.path"/></path> <path id="strap.reflect.build.path"> <path refid="strap.library.build.path"/> @@ -605,13 +610,14 @@ targets exercised: <path refid="strap.reflect.build.path"/> <pathelement location="${build-strap.dir}/classes/compiler"/> <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> @@ -708,12 +714,11 @@ targets exercised: <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> @@ -738,10 +743,9 @@ targets exercised: <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> <!-- =========================================================================== @@ -995,7 +999,7 @@ targets exercised: <!-- =========================================================================== 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"> @@ -1004,14 +1008,7 @@ targets exercised: <!-- TODO: args="-XDignore.symbol.file" necessary?? --> <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" unless="locker.locked"> - <staged-build with="starr" stage="locker" project="compiler"> - <pre> - <staged-javac stage="locker" project="msil" destproject="compiler" excludes="**/tests/**"/> - <staged-scalac with="starr" stage="locker" project="msil" destproject="compiler"/> - </pre> - </staged-build> - </target> + <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"> <mkdir dir="${build-locker.dir}"/> @@ -1040,10 +1037,13 @@ targets exercised: <target name="quick.reflect" depends="quick.lib"> <staged-build with="locker" stage="quick" project="reflect"/> </target> <target name="quick.comp" depends="quick.reflect"> - <staged-build with="locker" stage="quick" project="compiler"> + <staged-build with="locker" stage="quick" project="compiler"/> + </target> + + <target name="quick.repl" depends="quick.comp"> + <staged-build with="locker" stage="quick" project="repl"> <pre> - <staged-javac stage="quick" project="msil" destproject="compiler" excludes="**/tests/**"/> - <staged-scalac with="locker" stage="quick" project="msil" destproject="compiler"/> + <staged-javac stage="quick" project="repl"/> </pre> </staged-build> </target> @@ -1052,16 +1052,24 @@ targets exercised: <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"> <pre><staged-javac stage="quick" project="partest"/></pre> </staged-build> </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.lib" if="has.java6"> <staged-build with="locker" stage="quick" project="swing"/> </target> @@ -1101,7 +1109,7 @@ targets exercised: <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> @@ -1115,7 +1123,7 @@ targets exercised: <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"/> @@ -1132,6 +1140,9 @@ targets exercised: </manifest> </pre> <jar-opts> + <fileset dir="${build-quick.dir}/classes/scaladoc"/> + <fileset dir="${build-quick.dir}/classes/interactive"/> + <fileset dir="${build-quick.dir}/classes/repl"/> <service type="javax.script.ScriptEngineFactory" provider="scala.tools.nsc.interpreter.IMain$Factory"/> </jar-opts> </staged-pack> @@ -1182,14 +1193,7 @@ targets exercised: </target> <target name="strap.reflect" depends="strap.lib"> <staged-build with="pack" stage="strap" project="reflect"/> </target> - <target name="strap.comp" depends="strap.reflect"> - <staged-build with="pack" stage="strap" project="compiler"> - <pre> - <staged-javac stage="strap" project="msil" destproject="compiler" excludes="**/tests/**"/> - <staged-scalac with="quick" stage="strap" project="msil" destproject="compiler"/> - </pre> - </staged-build> - </target> + <target name="strap.comp" depends="strap.reflect"> <staged-build with="pack" stage="strap" project="compiler"/> </target> <target name="strap.done" depends="strap.comp"/> <target name="strap-opt" description="Optimized version of strap.done."> <optimized name="strap.done"/></target> @@ -1208,7 +1212,6 @@ targets exercised: <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> @@ -1393,7 +1396,6 @@ targets exercised: <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"/> @@ -1447,7 +1449,7 @@ targets exercised: 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 --> @@ -1506,7 +1508,10 @@ targets exercised: </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"/> @@ -1755,8 +1760,6 @@ targets exercised: <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"/> |