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.259 by jsr166, Mon Dec 18 21:07:18 2017 UTC vs.
Revision 1.265 by jsr166, Sun Feb 4 20:00:47 2018 UTC

# Line 21 | Line 21
21    $HOME/jdk/jdk8
22    $HOME/jdk/jdk9
23    $HOME/jdk/jdk10
24 +  $HOME/jdk/jdk11
25    where each of the above is a JDK or a symlink to same, and
26    $HOME/jdk/src/jdk8
27    $HOME/jdk/src/jdk9
28    $HOME/jdk/src/jdk10
29 +  $HOME/jdk/src/jdk11
30    where each of the above is a complete JDK source tree
31    (e.g. mercurial forest) or a symlink to same.
32  
# Line 132 | Line 134
134    <defjdklocations v="8"/>
135    <defjdklocations v="9"/>
136    <defjdklocations v="10"/>
137 +  <defjdklocations v="11"/>
138  
139    <!-- Source locations -->
140    <property name="src.dir"              location="${basedir}/src/main"/>
# Line 142 | Line 145
145    <property name="jtreg8.src.dir"       location="${test.src.dir}/jtreg-jdk8"/>
146    <property name="jtreg9.src.dir"       location="${test.src.dir}/jtreg"/>
147    <property name="jtreg10.src.dir"      location="${test.src.dir}/jtreg"/>
148 +  <property name="jtreg11.src.dir"      location="${test.src.dir}/jtreg"/>
149    <property name="jtreg.src.dir"        location="${jtreg9.src.dir}"/>
150    <property name="lib.dir"              location="${basedir}/lib"/>
151    <property name="dist.dir"             location="${basedir}/dist"/>
# Line 191 | Line 195
195    <!-- <property name="java9.docroot.url" value="http://download.java.net/java/jdk9/docs"/> -->
196    <!-- Default jdk doc location (latest stable release seems best) -->
197    <property name="java10.docroot.url" value="http://download.java.net/java/jdk10/docs"/>
198 +  <property name="java11.docroot.url" value="http://download.java.net/java/jdk11/docs"/>
199    <property name="java.docroot.url"   value="${java9.docroot.url}"/>
200  
201    <!-- Canonical location of jdk API docs, to use with javadoc link attribute -->
# Line 200 | Line 205
205    <property name="java8.api.url"      value="${java8.docroot.url}/api/"/>
206    <property name="java9.api.url"      value="${java9.docroot.url}/api/"/>
207    <property name="java10.api.url"     value="${java10.docroot.url}/api/"/>
208 +  <property name="java11.api.url"     value="${java11.docroot.url}/api/"/>
209    <property name="java.api.url"       value="${java.docroot.url}/api/"/>
210  
211    <!-- Define the "jtreg" task -->
# Line 299 | Line 305
305    </macrodef>
306  
307    <!-- Define jtreg test sets for different jdk versions -->
308 +  <fileset dir="${jtreg11.src.dir}">
309 +    <patternset id="jdk11.jtreg.tests">
310 +      <include name="**/*.java"/>
311 +    </patternset>
312 +  </fileset>
313 +
314    <fileset dir="${jtreg10.src.dir}">
315      <patternset id="jdk10.jtreg.tests">
316        <include name="**/*.java"/>
# Line 384 | Line 396
396      <sequential>
397        <property name="build.main.java"    value="${java@{v}}"/>
398        <property name="build.main.javac"   value="${javac@{v}}"/>
399 <      <property name="build.main.javadoc" value="${javadoc@{v}}"/>
399 >      <!-- Force javadoc version to be at least 10,
400 >           so we can use override-methods=summary -->
401 >      <condition property="build.main.javadoc"
402 >                 value="${javadoc10}"
403 >                 else="${javadoc@{v}}">
404 >        <equals arg1="@{v}" arg2="9"/>
405 >      </condition>
406      </sequential>
407    </macrodef>
408    <define-build-main-properties v="${build.main.java.version}"/>
# Line 478 | Line 496
496        <arg value="-XDignore.symbol.file=true"/>
497        <arg value="-html5"/>
498        <arg value="--patch-module=java.base=${src.dir}"/>
499 <      <arg value="-tag"/>
500 <      <arg value="${javadoc.jls.option}"/>
501 < <!-- @apiNote currently unused -->
502 < <!--       <arg value="-tag"/> -->
503 < <!--       <arg value="apiNote:a:API Note:"/> -->
504 <      <arg value="-tag"/>
487 <      <arg value="implSpec:a:Implementation Requirements:"/>
488 <      <arg value="-tag"/>
489 <      <arg value="implNote:a:Implementation Note:"/>
499 >      <arg value="--override-methods=summary"/>
500 >      <arg value="-tag"/> <arg value="${javadoc.jls.option}"/>
501 >      <arg value="-tag"/> <arg value="implSpec:a:Implementation Requirements:"/>
502 >      <arg value="-tag"/> <arg value="implNote:a:Implementation Note:"/>
503 > <!-- @apiNote tag currently unused -->
504 > <!--  <arg value="-tag"/> <arg value="apiNote:a:API Note:"/> -->
505   <!-- tags added in jdk9: currently unused -->
506 < <!--       <arg value="-tag"/> -->
507 < <!--       <arg value="revised:X"/> -->
493 < <!--       <arg value="-tag"/> -->
494 < <!--       <arg value="spec:X"/> -->
506 > <!--  <arg value="-tag"/> <arg value="revised:X"/> -->
507 > <!--  <arg value="-tag"/> <arg value="spec:X"/> -->
508      </javadoc>
509    </target>
510  
# Line 603 | Line 616
616  
617   <!--   </target> -->
618  
619 <  <target name="test910"
619 >  <target name="test91011"
620            description="Runs tck and jtreg tests for src/main for multiple java versions">
621  
622      <antcall target="clean"/>
# Line 616 | Line 629
629        <param name="build.main.java.version" value="10"/>
630      </antcall>
631  
632 +    <antcall target="clean"/>
633 +    <antcall target="test">
634 +      <param name="build.main.java.version" value="11"/>
635 +    </antcall>
636 +
637      <!-- Clean up to avoid obscure wrong class file version bugs -->
638      <antcall target="clean"/>
639  
# Line 828 | Line 846
846        </fileset>
847        <arg line="-Xdocrootparent ${java8.docroot.url}"/>
848        <arg value="-XDignore.symbol.file=true"/>
849 <      <arg value="-tag"/>
850 <      <arg value="${javadoc.jls.option}"/>
851 < <!-- @apiNote currently unused -->
852 < <!--       <arg value="-tag"/> -->
853 < <!--       <arg value="apiNote:a:&lt;em&gt;API Note:&lt;/em&gt;"/> -->
836 <      <arg value="-tag"/>
837 <      <arg value="implSpec:a:&lt;em&gt;Implementation Requirements:&lt;/em&gt;"/>
838 <      <arg value="-tag"/>
839 <      <arg value="implNote:a:&lt;em&gt;Implementation Note:&lt;/em&gt;"/>
849 >      <arg value="-tag"/> <arg value="${javadoc.jls.option}"/>
850 >      <arg value="-tag"/> <arg value="implSpec:a:&lt;em&gt;Implementation Requirements:&lt;/em&gt;"/>
851 >      <arg value="-tag"/> <arg value="implNote:a:&lt;em&gt;Implementation Note:&lt;/em&gt;"/>
852 > <!-- @apiNote tag currently unused -->
853 > <!--  <arg value="-tag"/> <arg value="apiNote:a:&lt;em&gt;API Note:&lt;/em&gt;"/> -->
854      </javadoc>
855    </target>
856  
# Line 1383 | Line 1397
1397   <!-- ==============================================================
1398    Experimental errorprone support - http://errorprone.info
1399   =================================================================== -->
1400 <  <property name="errorprone.jar" location="${lib.dir}/error_prone_ant-2.1.2.jar"/>
1400 >  <property name="errorprone.jar" location="${lib.dir}/error_prone_ant-2.2.0.jar"/>
1401 >  <property name="errorprone.jsr166.flags"
1402 >            value="-Xep:HashtableContains:OFF
1403 >                   -Xep:JdkObsolete:OFF
1404 >                   -Xep:MissingOverride:OFF
1405 >                   -Xep:MissingFail:OFF
1406 >                   -Xep:MixedArrayDimensions:ERROR
1407 >                   -Xep:RemoveUnusedImports:ERROR
1408 >                   -Xep:EmptyIf:ERROR
1409 >                   -Xep:MultipleTopLevelClasses:ERROR
1410 >                   -Xep:ClassName:ERROR
1411 >                   -Xep:LongLiteralLowerCaseSuffix:ERROR
1412 >                   -Xep:RedundantThrows:ERROR
1413 >                   -Xep:IdentityBinaryExpression:WARN
1414 >                   -Xep:MethodCanBeStatic:WARN"/>
1415 >  <!-- -Xep:WildcardImport:ERROR -->
1416 >  <property name="errorprone.jsr166.test.flags"
1417 >            value="-Xep:StringSplitter:OFF
1418 >                   -Xep:BoxedPrimitiveConstructor:OFF
1419 >                   -Xep:ModifyingCollectionWithItself:OFF"/>
1420 >  <!-- ant -emacs errorprone |& grep -EA1 '(warning|error):|warnings' -->
1421    <target name="errorprone"
1422            depends="clean, configure-compiler"
1423            description="Run errorprone over jsr166 source code (experimental)">
# Line 1405 | Line 1439
1439             fork="true">
1440  
1441        <include name="**/*.java"/>
1442 +      <compilerarg value="-XDcompilePolicy=simple"/>
1443        <compilerarg line="-processorpath ${errorprone.jar}"/>
1444        <compilerarg value="-Xplugin:ErrorProne
1445 <                          -Xep:IdentityBinaryExpression:WARN
1411 <                          -Xep:MissingOverride:OFF
1412 <                          -Xep:MixedArrayDimensions:ERROR
1413 <                          -Xep:RemoveUnusedImports:ERROR
1414 <                          -Xep:ClassName:ERROR
1415 <                          -Xep:MultipleTopLevelClasses:ERROR
1416 <                          -Xep:EmptyIf:ERROR
1417 <                          -Xep:LongLiteralLowerCaseSuffix:ERROR
1418 <                          -Xep:RedundantThrows:ERROR
1419 <                          -Xep:MethodCanBeStatic:WARN"/>
1445 >                          ${errorprone.jsr166.flags}"/>
1446        <compilerarg value="--patch-module=java.base=${src.dir}"/>
1447        <compilerarg value="-Xprefer:source"/>
1448        <compilerarg value="-XDignore.symbol.file=true"/>
# Line 1435 | Line 1461
1461        workdir="${build.dir}"
1462        classes="${product.jar}">
1463        <javac-elements>
1464 +        <compilerarg value="-XDcompilePolicy=simple"/>
1465          <compilerarg line="-processorpath ${errorprone.jar}"/>
1466          <compilerarg value="-Xplugin:ErrorProne
1467 <                            -Xep:IdentityBinaryExpression:WARN
1468 <                            -Xep:BoxedPrimitiveConstructor:OFF
1442 <                            -Xep:HashtableContains:OFF
1443 <                            -Xep:ModifyingCollectionWithItself:OFF
1444 <                            -Xep:MissingOverride:OFF
1445 <                            -Xep:MissingFail:OFF
1446 <                            -Xep:JdkObsolete:OFF
1447 <                            -Xep:MixedArrayDimensions:ERROR
1448 <                            -Xep:RemoveUnusedImports:ERROR
1449 <                            -Xep:ClassName:ERROR
1450 <                            -Xep:MultipleTopLevelClasses:ERROR
1451 <                            -Xep:EmptyIf:ERROR
1452 <                            -Xep:LongLiteralLowerCaseSuffix:ERROR
1453 <                            -Xep:RedundantThrows:ERROR
1454 <                            -Xep:MethodCanBeStatic:WARN"/>
1467 >                            ${errorprone.jsr166.flags}
1468 >                            ${errorprone.jsr166.test.flags}"/>
1469          <compilerarg line="-Xmaxerrs 3000 -Xmaxwarns 3000"/>
1470        </javac-elements>
1471      </run-tck-tests>
1472    </target>
1473  
1474 <  <!-- ant errorprone-jtreg |& grep -EA1 '(warning|error):' -->
1474 >  <!-- ant -emacs errorprone-jtreg |& grep -EA1 '(warning|error):' -->
1475 >  <!-- -XDcompilePolicy=simple or byfile avoids confusing UnusedImports -->
1476    <target name="errorprone-jtreg"
1477            depends="jar"
1478            description="Run errorprone over jtreg tests (experimental)">
# Line 1468 | Line 1483
1483         classes="${product.jar}"
1484         verbose="all">
1485        <jtreg-elements>
1486 +        <arg value="-javacoption:-XDcompilePolicy=simple"/>
1487          <arg value="-javacoption:-processorpath"/>
1488          <arg value="-javacoption:${errorprone.jar}"/>
1489          <arg value="-javacoption:-Xplugin:ErrorProne
1490 <                            -Xep:IdentityBinaryExpression:WARN
1491 <                            -Xep:BoxedPrimitiveConstructor:OFF
1492 <                            -Xep:HashtableContains:OFF
1477 <                            -Xep:ModifyingCollectionWithItself:OFF
1478 <                            -Xep:MissingOverride:OFF
1479 <                            -Xep:JdkObsolete:OFF
1480 <                            -Xep:NonAtomicVolatileUpdate:OFF
1481 <                            -Xep:MixedArrayDimensions:ERROR
1482 <                            -Xep:RemoveUnusedImports:ERROR
1483 <                            -Xep:ClassName:ERROR
1484 <                            -Xep:MultipleTopLevelClasses:ERROR
1485 <                            -Xep:EmptyIf:ERROR
1486 <                            -Xep:LongLiteralLowerCaseSuffix:ERROR
1487 <                            -Xep:RedundantThrows:ERROR
1488 <                            -Xep:MethodCanBeStatic:WARN"/>
1490 >                            ${errorprone.jsr166.flags}
1491 >                            ${errorprone.jsr166.test.flags}
1492 >                            -Xep:NonAtomicVolatileUpdate:OFF"/>
1493        </jtreg-elements>
1494      </run-jtreg-tests>
1495    </target>

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines