Skip to content

Commit 36885b0

Browse files
committed
Merge pull request scala#3394 from cunei/wip-cross-suffix
Add cross suffix customizability for modules
2 parents f22ddce + d3cc913 commit 36885b0

File tree

2 files changed

+40
-10
lines changed

2 files changed

+40
-10
lines changed

build-ant-macros.xml

Lines changed: 23 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,15 +23,35 @@
2323
</sequential>
2424
</macrodef>
2525

26+
<!-- Set a property @{name}.cross to the actual cross suffix that should be
27+
used when resolving the module "@{name}". If the (user-supplied)
28+
@{name}.cross.suffix property exists then use that value, otherwise use
29+
"_${scala.binary.version}". -->
30+
<macrodef name="prepareCross">
31+
<attribute name="name" />
32+
<sequential>
33+
<if>
34+
<isset property="@{name}.cross.suffix" />
35+
<then>
36+
<property name="@{name}.cross" value="${@{name}.cross.suffix}" />
37+
</then>
38+
<else>
39+
<property name="@{name}.cross" value="_${scala.binary.version}" />
40+
</else>
41+
</if>
42+
</sequential>
43+
</macrodef>
44+
2645
<!-- Set property named @{name} to the jar resolved as @{jar}_${scala.binary.version}:jar.
2746
@{jar}_${scala.binary.version} must be a maven dependency. -->
2847
<macrodef name="propertyForCrossedArtifact">
2948
<attribute name="name"/>
3049
<attribute name="jar"/>
50+
<attribute name="suffix" default="${@{name}.cross}"/>
3151
<sequential>
32-
<readProperty name="@{name}" property="@{jar}_${scala.binary.version}:jar"/>
33-
<readProperty name="@{name}-sources" property="@{jar}_${scala.binary.version}:java-source:sources"/>
34-
<readProperty name="@{name}-javadoc" property="@{jar}_${scala.binary.version}:java-source:javadoc"/>
52+
<readProperty name="@{name}" property="@{jar}@{suffix}:jar"/>
53+
<readProperty name="@{name}-sources" property="@{jar}@{suffix}:java-source:sources"/>
54+
<readProperty name="@{name}-javadoc" property="@{jar}@{suffix}:java-source:javadoc"/>
3555
</sequential>
3656
</macrodef>
3757

build.xml

Lines changed: 17 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -276,6 +276,16 @@ TODO:
276276

277277
<artifact:remoteRepository id="extra-repo" url="${extra.repo.url}"/>
278278

279+
<!-- prepare, for each of the names below, the property "@{name}.cross", set to the
280+
necessary cross suffix (usually something like "_2.11.0-M6". -->
281+
<prepareCross name="scala-xml" />
282+
<prepareCross name="scala-parser-combinators" />
283+
<prepareCross name="scala-continuations-plugin" />
284+
<prepareCross name="scala-continuations-library"/>
285+
<prepareCross name="scala-swing"/>
286+
<prepareCross name="partest"/>
287+
<prepareCross name="scalacheck"/>
288+
279289
<!-- TODO: delay until absolutely necessary to allow minimal build, also move out partest dependency from scaladoc -->
280290
<artifact:dependencies pathId="partest.classpath" filesetId="partest.fileset" versionsId="partest.versions">
281291
<!-- uncomment the following if you're deploying your own partest locally -->
@@ -284,13 +294,13 @@ TODO:
284294
(we don't distribute partest with Scala, so the risk of sonatype and maven being out of synch is irrelevant):
285295
-->
286296
<artifact:remoteRepository refid="extra-repo"/>
287-
<dependency groupId="org.scala-lang.modules" artifactId="scala-partest_${scala.binary.version}" version="${partest.version.number}" />
297+
<dependency groupId="org.scala-lang.modules" artifactId="scala-partest${partest.cross}" version="${partest.version.number}" />
288298
</artifact:dependencies>
289299
<copy-deps project="partest"/>
290300

291301
<artifact:dependencies pathId="scalacheck.classpath" filesetId="scalacheck.fileset" versionsId="scalacheck.versions">
292302
<artifact:remoteRepository refid="extra-repo"/>
293-
<dependency groupId="org.scalacheck" artifactId="scalacheck_${scala.binary.version}" version="${scalacheck.version.number}" />
303+
<dependency groupId="org.scalacheck" artifactId="scalacheck${scalacheck.cross}" version="${scalacheck.version.number}" />
294304
</artifact:dependencies>
295305

296306
<artifact:dependencies pathId="repl.deps.classpath" filesetId="repl.fileset" versionsId="repl.deps.versions">
@@ -302,11 +312,11 @@ TODO:
302312
must specify sourcesFilesetId, javadocFilesetId to download these types of artifacts -->
303313
<artifact:dependencies pathId="external-modules.deps.classpath" sourcesFilesetId="external-modules.sources.fileset" javadocFilesetId="external-modules.javadoc.fileset">
304314
<artifact:remoteRepository refid="extra-repo"/>
305-
<dependency groupId="org.scala-lang.modules" artifactId="scala-xml_${scala.binary.version}" version="${scala-xml.version.number}"/>
306-
<dependency groupId="org.scala-lang.modules" artifactId="scala-parser-combinators_${scala.binary.version}" version="${scala-parser-combinators.version.number}"/>
307-
<dependency groupId="org.scala-lang.plugins" artifactId="scala-continuations-plugin_${scala.binary.version}" version="${scala-continuations-plugin.version.number}"/>
308-
<dependency groupId="org.scala-lang.plugins" artifactId="scala-continuations-library_${scala.binary.version}" version="${scala-continuations-library.version.number}"/>
309-
<dependency groupId="org.scala-lang.modules" artifactId="scala-swing_${scala.binary.version}" version="${scala-swing.version.number}"/>
315+
<dependency groupId="org.scala-lang.modules" artifactId="scala-xml${scala-xml.cross}" version="${scala-xml.version.number}"/>
316+
<dependency groupId="org.scala-lang.modules" artifactId="scala-parser-combinators${scala-parser-combinators.cross}" version="${scala-parser-combinators.version.number}"/>
317+
<dependency groupId="org.scala-lang.plugins" artifactId="scala-continuations-plugin${scala-continuations-plugin.cross}" version="${scala-continuations-plugin.version.number}"/>
318+
<dependency groupId="org.scala-lang.plugins" artifactId="scala-continuations-library${scala-continuations-library.cross}" version="${scala-continuations-library.version.number}"/>
319+
<dependency groupId="org.scala-lang.modules" artifactId="scala-swing${scala-swing.cross}" version="${scala-swing.version.number}"/>
310320
</artifact:dependencies>
311321

312322
<!-- External modules, excluding the core -->

0 commit comments

Comments
 (0)