ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/jsr166/jsr166/build.xml
(Generate patch)

Comparing jsr166/build.xml (file contents):
Revision 1.175 by jsr166, Fri Sep 4 19:37:34 2015 UTC vs.
Revision 1.182 by jsr166, Sun Sep 13 17:46:07 2015 UTC

# Line 1 | Line 1
1 < <project name="jsr166" default="usage">
1 > <project name="jsr166" default="usage"
2 >  xmlns:if="ant:if" xmlns:unless="ant:unless">
3  
4    <description>
5   ------------------------------------------------------------------------------
# Line 28 | Line 29
29    Alternatively, define ant variables thus:
30    ant -Djdk$N.home=...
31    for $N in 6 7 8 9 ...
32 +
33 +  As of 2015-09, there is incomplete hacky support for jigsaw
34 +  Build for jigsaw using something like:
35 +  ant -Djdk9.home="$HOME/jdk/jigsaw" -Djdk9.src.dir="$HOME/jdk/src/jigsaw" clean test dist
36 +  "docs" target is still broken.
37   ------------------------------------------------------------------------------
38    </description>
39  
# Line 38 | Line 44
44      </java>
45    </target>
46  
47 +  <!-- HOWTO printf debug: <echo message="prop=${prop}"/> -->
48  
49    <!-- User-specific settings -->
50    <property file="user.properties"/>
# Line 93 | Line 100
100      <property name="java@{v}"       location="${jdk@{v}.home}/bin/java"/>
101      <property name="javac@{v}"      location="${jdk@{v}.home}/bin/javac"/>
102      <property name="javadoc@{v}"    location="${jdk@{v}.home}/bin/javadoc"/>
103 <    <property name="jdk@{v}src.dir" location="${jdks.home}/src/jdk@{v}/jdk/src/share/classes"/>
103 >    <local name="have.java.base"/>
104 >    <available property="have.java.base"
105 >      file="${jdks.home}/src/jdk@{v}/jdk/src/java.base/share/classes" type="dir"/>
106 >    <property name="jdk@{v}src.dir" location="${jdks.home}/src/jdk@{v}/jdk/src/java.base/share/classes"
107 >      if:set="have.java.base"/>
108 >    <property name="jdk@{v}src.dir" location="${jdks.home}/src/jdk@{v}/jdk/src/share/classes"
109 >      unless:set="have.java.base"/>
110 >    <local name="modules"/>
111 >    <available property="modules" file="${jdk@{v}.home}/jmods" type="dir"/>
112      <local name="boot.jar.dir"/>
113 <    <property name="boot.jar.dir"   location="${jdk@{v}.home}/jre/lib"/>
114 <    <path id="bootclasspath@{v}">
113 >    <property name="boot.jar.dir"   location="${jdk@{v}.home}/jre/lib" unless:set="modules"/>
114 >    <path id="bootclasspath@{v}" unless:set="modules">
115        <pathelement path="${boot.jar.dir}/resources.jar"/>
116        <pathelement path="${boot.jar.dir}/rt.jar"/>
117        <pathelement path="${boot.jar.dir}/jsse.jar"/>
118        <pathelement path="${boot.jar.dir}/jce.jar"/>
119        <pathelement path="${boot.jar.dir}/charsets.jar"/>
120      </path>
121 <    <property name="bootclasspath@{v}" value="${toString:bootclasspath@{v}}"/>
121 >    <property name="bootclasspath@{v}" value="${toString:bootclasspath@{v}}" unless:set="modules"/>
122      </sequential>
123    </macrodef>
124  
# Line 204 | Line 219
219      <attribute name="classes"/>
220      <attribute name="jvmflags" default="-ea -esa -Djsr166.testImplementationDetails=true"/>
221      <element name="javac-elements" optional="true"/>
222 +
223      <sequential>
224  
225 +    <local name="modules"/>
226 +    <condition property="modules">
227 +      <available file="${jdk@{compile-target}.home}/jmods" type="dir"/>
228 +    </condition>
229 +
230      <mkdir dir="@{workdir}/tck-classes"/>
231  
232      <javac srcdir="@{tck.src.dir}"
# Line 224 | Line 245
245        <include name="*.java"/>
246        <compilerarg value="-XDignore.symbol.file=true"/>
247        <compilerarg value="-Xlint:all,-unchecked,-rawtypes,-serial,-deprecation"/>
248 <      <compilerarg value="-Xbootclasspath/p:@{classes}"/>
248 >      <compilerarg value="-Xbootclasspath/p:@{classes}" unless:set="modules"/>
249 >      <compilerarg value="-Xoverride:${build.classes.dir}" if:set="modules"/>
250        <compilerarg line="${build.args}"/>
251        <javac-elements/>
252  
# Line 234 | Line 256
256            failonerror="true"
257            jvm="${java@{target}}"
258            fork="true">
259 <        <jvmarg value="-Xbootclasspath/p:@{classes}"/>
259 >        <jvmarg value="-Xbootclasspath/p:@{classes}" unless:set="modules"/>
260 >        <jvmarg value="-Xoverride:${build.classes.dir}" if:set="modules"/>
261          <jvmarg line="@{jvmflags}"/>
262  
263          <!-- ant -Djava.util.concurrent.ForkJoinPool.common.parallelism=1 tck -->
# Line 283 | Line 306
306      <attribute name="workdir"/>
307      <attribute name="classes"/>
308      <attribute name="jtregflags" default=""/>
309 +
310      <sequential>
311 +
312 +    <local name="modules"/>
313 +    <condition property="modules">
314 +      <available file="${jdk@{target}.home}/jmods" type="dir"/>
315 +    </condition>
316 +
317      <delete dir="@{workdir}/JTwork"   quiet="true"/>
318      <delete dir="@{workdir}/JTreport" quiet="true"/>
319      <mkdir dir="@{workdir}/JTwork/scratch"/>
# Line 293 | Line 323
323             workDir="@{workdir}/JTwork"
324             reportDir="@{workdir}/JTreport">
325        <patternset refid="jdk@{target}.jtreg.tests"/>
326 <      <arg value="-Xbootclasspath/p:@{classes}"/>
326 >      <arg value="-Xbootclasspath/p:@{classes}" unless:set="modules"/>
327 >      <arg value="-Xoverride:${build.classes.dir}" if:set="modules"/>
328        <arg value="-agentvm"/>
329        <arg value="-v:nopass,fail"/>
330        <arg value="-vmoptions:-esa -ea"/>
# Line 326 | Line 357
357            depends="configure-compiler"
358            description="Compiles src/main sources to build dir">
359  
360 <    <mkdir dir="${build.classes.dir}"/>
360 >    <local name="modules"/>
361 >    <condition property="modules">
362 >      <and>
363 >        <available file="${jdk9.home}/jmods" type="dir"/>
364 >        <equals arg1="9" arg2="${build.main.java.version}"/>
365 >      </and>
366 >    </condition>
367 >
368 >    <local name="destdir"/>
369 >    <property name="destdir" value="${build.classes.dir}/java.base" if:set="modules"/>
370 >    <property name="destdir" value="${build.classes.dir}" unless:set="modules"/>
371 >
372 >    <mkdir dir="${destdir}"/>
373  
374      <javac srcdir="${src.dir}"
375 <           destdir="${build.classes.dir}"
375 >           destdir="${destdir}"
376             debug="${build.debug}"
377             debuglevel="${build.debuglevel}"
378             deprecation="${build.deprecation}"
# Line 340 | Line 383
383             fork="true">
384  
385        <include name="**/*.java"/>
386 +      <compilerarg value="-Xmodule:java.base" if:set="modules"/>
387        <compilerarg value="-Xprefer:source"/>
388        <compilerarg value="-XDignore.symbol.file=true"/>
389        <compilerarg value="-Xlint:all"/>
# Line 358 | Line 402
402  
403      <jar destfile="${product.jar}">
404        <fileset dir="${build.classes.dir}"/>
405 +      <manifest>
406 +        <attribute name="Built-By" value="${user.name}"/>
407 +        <attribute name="Implementation-Vendor" value="JCP JSR-166 Expert Group."/>
408 +      </manifest>
409      </jar>
410    </target>
411  
# Line 385 | Line 433
433        <arg line="-Xdocrootparent ${java9.docroot.url}"/>
434        <arg line="-Xmaxerrs 1000 -Xmaxwarns 1000"/>
435        <arg value="-XDignore.symbol.file=true"/>
436 + <!--  TODO     <arg value="-Xmodule:java.base"/> -->
437        <arg value="-tag"/>
438        <arg value="${javadoc.jls.option}"/>
439        <arg value="-tag"/>
# Line 416 | Line 465
465        <exclude name="src/emulation/**"/>
466        <exclude name="**/SyntaxTest.java"/>
467        <exclude name="**/SuperfluousAbstract.java"/>
468 +      <manifest>
469 +        <attribute name="Built-By" value="${user.name}"/>
470 +        <attribute name="Implementation-Vendor" value="JCP JSR-166 Expert Group."/>
471 +      </manifest>
472      </jar>
473    </target>
474  
# Line 514 | Line 567
567  
568  
569    <target name="configure-compiler">
570 +    <fail message="ant version too old">
571 +      <condition>
572 +        <not> <antversion atleast="1.9.1"/> </not>
573 +      </condition>
574 +    </fail>
575  
576      <property name="unchecked.option" value="-Xlint:unchecked"/>
577  
# Line 653 | Line 711
711  
712      <jar destfile="${4jdk7product.jar}">
713        <fileset dir="${build.4jdk7.classes.dir}"/>
714 +      <manifest>
715 +        <attribute name="Built-By" value="${user.name}"/>
716 +        <attribute name="Implementation-Vendor" value="JCP JSR-166 Expert Group."/>
717 +      </manifest>
718      </jar>
719  
720    </target>
# Line 670 | Line 732
732          <!-- JDK8+ test classes -->
733          <exclude name="*8Test.java"/>
734          <exclude name="*9Test.java"/>
735 +        <exclude name="*10Test.java"/>
736          <exclude name="DoubleAccumulatorTest.java"/>
737          <exclude name="DoubleAdderTest.java"/>
738          <exclude name="LongAccumulatorTest.java"/>
# Line 677 | Line 740
740          <exclude name="CompletableFutureTest.java"/>
741          <exclude name="SplittableRandomTest.java"/>
742          <exclude name="StampedLockTest.java"/>
743 +        <exclude name="SubmissionPublisherTest.java"/>
744        </javac-elements>
745      </run-tck-tests>
746    </target>
# Line 811 | Line 875
875  
876      <jar destfile="${jsr166x.jar}">
877        <fileset dir="${build.jsr166x.classes.dir}"/>
878 +      <manifest>
879 +        <attribute name="Built-By" value="${user.name}"/>
880 +        <attribute name="Implementation-Vendor" value="JCP JSR-166 Expert Group."/>
881 +      </manifest>
882      </jar>
883  
884    </target>
# Line 898 | Line 966
966  
967      <jar destfile="${jsr166y.jar}" index="true">
968        <fileset dir="${build.jsr166y.classes.dir}"/>
969 +      <manifest>
970 +        <attribute name="Built-By" value="${user.name}"/>
971 +        <attribute name="Implementation-Vendor" value="JCP JSR-166 Expert Group."/>
972 +      </manifest>
973      </jar>
974  
975    </target>
# Line 986 | Line 1058
1058  
1059      <jar destfile="${extra166y.jar}" index="true">
1060        <fileset dir="${build.extra166y.classes.dir}"/>
1061 +      <manifest>
1062 +        <attribute name="Built-By" value="${user.name}"/>
1063 +        <attribute name="Implementation-Vendor" value="JCP JSR-166 Expert Group."/>
1064 +      </manifest>
1065      </jar>
1066  
1067    </target>
# Line 1101 | Line 1177
1177  
1178      <jar destfile="${jsr166e.jar}" index="true">
1179        <fileset dir="${build.jsr166e.classes.dir}"/>
1180 +      <manifest>
1181 +        <attribute name="Built-By" value="${user.name}"/>
1182 +        <attribute name="Implementation-Vendor" value="JCP JSR-166 Expert Group."/>
1183 +      </manifest>
1184      </jar>
1185  
1186    </target>

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines