diff options
author | Lukas Rytz <lukas.rytz@gmail.com> | 2015-05-08 15:37:14 +0200 |
---|---|---|
committer | Lukas Rytz <lukas.rytz@gmail.com> | 2015-05-11 14:25:26 +0200 |
commit | f7e1d7c35010fea6810d1917197cd6d5dde4822e (patch) | |
tree | 5ff7d8e38ffd39aeed9c2cc591743a81f329872a | |
parent | e12ba55589192fc3a3cc7b441569fbcabc04dd33 (diff) | |
download | scala-f7e1d7c35010fea6810d1917197cd6d5dde4822e.tar.gz scala-f7e1d7c35010fea6810d1917197cd6d5dde4822e.tar.bz2 scala-f7e1d7c35010fea6810d1917197cd6d5dde4822e.zip |
Include ASM as a dependency in ANT build
The classfiles are still integrated into scala-compiler.jar.
-rw-r--r-- | build-ant-macros.xml | 7 | ||||
-rwxr-xr-x | build.xml | 24 | ||||
-rw-r--r-- | versions.properties | 1 |
3 files changed, 20 insertions, 12 deletions
diff --git a/build-ant-macros.xml b/build-ant-macros.xml index 259d6a6eb6..ace86cac49 100644 --- a/build-ant-macros.xml +++ b/build-ant-macros.xml @@ -91,7 +91,7 @@ <macrodef name="simple-javac"> <attribute name="project"/> - <!-- project: asm/forkjoin --> + <!-- project: forkjoin --> <attribute name="args" default=""/> <attribute name="jar" default="yes"/> <sequential> @@ -371,6 +371,10 @@ <then> <mkdir dir="${build-pack.dir}/${@{project}.targetdir}"/> <pre/> + <!-- can't check if a fileset is defined, so we have an additional property --> + <if><not><isset property="pack.@{project}.include-jars.defined"/></not><then> + <fileset id="pack.@{project}.include-jars" dir="." excludes="**" /> + </then></if> <if> <not> <equals arg1="@{manifest}" arg2=""/> @@ -380,6 +384,7 @@ <!-- update="true" makes no difference on my machine, so starting from scratch--> <jar-opts/> <path refid="pack.@{project}.files"/> + <zipgroupfileset refid="pack.@{project}.include-jars"/> </jar> </then> <else> @@ -165,7 +165,6 @@ TODO: <property name="build.dir" value="${basedir}/build"/> <property name="build-deps.dir" value="${build.dir}/deps"/> <property name="build-libs.dir" value="${build.dir}/libs"/> - <property name="build-asm.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-quick.dir" value="${build.dir}/quick"/> @@ -353,6 +352,11 @@ TODO: <prepareCross name="partest"/> <prepareCross name="scalacheck"/> + <artifact:dependencies pathId="asm.classpath" filesetId="asm.fileset"> + <dependency groupId="org.scala-lang.modules" artifactId="scala-asm" version="${scala-asm.version}"/> + </artifact:dependencies> + <copy-deps project="asm"/> + <!-- TODO: delay until absolutely necessary to allow minimal build, also move out partest dependency from scaladoc --> <artifact:dependencies pathId="partest.classpath" filesetId="partest.fileset" versionsId="partest.versions"> <!-- uncomment the following if you're deploying your own partest locally --> @@ -624,9 +628,7 @@ TODO: </then></if> <path id="forkjoin.classpath" path="${build-forkjoin.dir}/classes/forkjoin"/> - <path id="asm.classpath" path="${build-asm.dir}/classes/asm"/> <property name="forkjoin-classes" refid="forkjoin.classpath"/> - <property name="asm-classes" refid="asm.classpath"/> <!-- the following properties fully define staged-docs, staged-pack, make-bundle, copy-bundle and mvn-package for each of the projects --> <property name="library.description" value="Scala Standard Library"/> @@ -693,7 +695,7 @@ TODO: <property name="partest-extras.description" value="Scala Compiler Testing Tool (compiler-specific extras)"/> <property name="partest-javaagent.description" value="Scala Compiler Testing Tool (compiler-specific java agent)"/> - <!-- projects without project-specific options: asm, forkjoin, manual, bin, repl --> + <!-- projects without project-specific options: forkjoin, manual, bin, repl --> <for list="actors,compiler,interactive,scaladoc,library,parser-combinators,partest,partest-extras,partest-javaagent,reflect,scalap,swing,xml,continuations-plugin,continuations-library" param="project"> <sequential> <!-- description is mandatory --> @@ -878,8 +880,9 @@ TODO: <fileset dir="${build-quick.dir}/classes/scaladoc"/> <fileset dir="${build-quick.dir}/classes/interactive"/> <fileset dir="${build-quick.dir}/classes/repl"/> - <fileset dir="${asm-classes}"/> </path> + <fileset id="pack.compiler.include-jars" refid="asm.fileset"/> + <property name="pack.compiler.include-jars.defined" value="yeah"/> <!-- TODO modularize compiler. <path id="pack.scaladoc.files"> <fileset dir="${build-quick.dir}/classes/scaladoc"/> </path> @@ -1078,9 +1081,9 @@ TODO: <!-- =========================================================================== CLEANLINESS =============================================================================--> - <target name="libs.clean"> <clean build="libs"/> <clean build="asm"/> </target> - <target name="quick.clean" depends="libs.clean"> <clean build="quick"/> <clean build="pack"/> <clean build="strap"/> </target> - <target name="locker.clean" depends="quick.clean"> <clean build="locker"/> </target> + <target name="libs.clean"> <clean build="libs"/> </target> + <target name="quick.clean" depends="libs.clean"> <clean build="quick"/> <clean build="pack"/> <clean build="strap"/> </target> + <target name="locker.clean" depends="quick.clean"> <clean build="locker"/> </target> <target name="docs.clean"> <clean build="docs"/> <delete dir="${build.dir}/manmaker" includeemptydirs="yes" quiet="yes" failonerror="no"/> </target> <target name="dist.clean"> <delete dir="${dists.dir}" includeemptydirs="yes" quiet="yes" failonerror="no"/> </target> @@ -1098,7 +1101,6 @@ TODO: LOCAL DEPENDENCIES ============================================================================ --> - <target name="asm.done" depends="init"> <simple-javac project="asm" jar="no"/> </target> <target name="forkjoin.done" depends="init"> <simple-javac project="forkjoin" args="-XDignore.symbol.file" jar="no"/></target> <!-- For local development only. We only allow released versions of Scala for STARR. @@ -1121,7 +1123,7 @@ TODO: <!-- =========================================================================== LOCAL REFERENCE BUILD (LOCKER) ============================================================================ --> - <target name="locker.start" depends="asm.done, forkjoin.done"> + <target name="locker.start" depends="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"> @@ -1189,7 +1191,7 @@ TODO: <target name="pack.reflect" depends="quick.reflect"> <staged-pack project="reflect"/> </target> <!-- TODO modularize compiler. Remove other quick targets when they become modules. --> - <target name="pack.comp" depends="quick.comp, quick.scaladoc, quick.interactive, quick.repl, asm.done"> + <target name="pack.comp" depends="quick.comp, quick.scaladoc, quick.interactive, quick.repl"> <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 todir="${build-pack.dir}/lib"> diff --git a/versions.properties b/versions.properties index 2ecfd23800..292c49d93b 100644 --- a/versions.properties +++ b/versions.properties @@ -25,6 +25,7 @@ scala-swing.version.number=1.0.1 akka-actor.version.number=2.3.4 actors-migration.version.number=1.1.0 jline.version=2.12.1 +scala-asm.version=5.0.3-scala-3 # external modules, used internally (not shipped) partest.version.number=1.0.6 |