24 |
|
$HOME/jdk/jdk13 |
25 |
|
$HOME/jdk/jdk14 |
26 |
|
$HOME/jdk/jdk15 |
27 |
+ |
$HOME/jdk/jdk16 |
28 |
+ |
$HOME/jdk/jdk17 |
29 |
+ |
$HOME/jdk/jdk18 |
30 |
|
where each of the above is a JDK or a symlink to same, and |
31 |
|
$HOME/jdk/src/jdk11 |
32 |
|
$HOME/jdk/src/jdk12 |
33 |
|
$HOME/jdk/src/jdk13 |
34 |
|
$HOME/jdk/src/jdk14 |
35 |
|
$HOME/jdk/src/jdk15 |
36 |
+ |
$HOME/jdk/src/jdk16 |
37 |
+ |
$HOME/jdk/src/jdk17 |
38 |
+ |
$HOME/jdk/src/jdk18 |
39 |
|
where each of the above is a JDK source tree or a symlink to same. |
40 |
|
|
41 |
|
Alternatively, define ant variables thus: |
42 |
|
ant -Djdk$N.home=... -Djdk$N.src.home=... |
43 |
< |
for $N in 11 .. 15 ... |
43 |
> |
for $N in 11 .. 18 ... |
44 |
|
|
45 |
|
As of 2016-03, the sources in src/main are for jdk9+ only. |
46 |
|
As of 2019-08, the sources in src/main are for jdk11+ only. |
105 |
|
<defjdklocations v="13"/> |
106 |
|
<defjdklocations v="14"/> |
107 |
|
<defjdklocations v="15"/> |
108 |
+ |
<defjdklocations v="16"/> |
109 |
+ |
<defjdklocations v="17"/> |
110 |
+ |
<defjdklocations v="18"/> |
111 |
|
|
112 |
|
<!-- Source locations --> |
113 |
|
<property name="src.dir" location="${basedir}/src/main"/> |
119 |
|
<property name="jtreg13.src.dir" location="${test.src.dir}/jtreg"/> |
120 |
|
<property name="jtreg14.src.dir" location="${test.src.dir}/jtreg"/> |
121 |
|
<property name="jtreg15.src.dir" location="${test.src.dir}/jtreg"/> |
122 |
+ |
<property name="jtreg16.src.dir" location="${test.src.dir}/jtreg"/> |
123 |
+ |
<property name="jtreg17.src.dir" location="${test.src.dir}/jtreg"/> |
124 |
+ |
<property name="jtreg18.src.dir" location="${test.src.dir}/jtreg"/> |
125 |
|
<property name="jtreg.src.dir" location="${jtreg11.src.dir}"/> |
126 |
|
<property name="lib.dir" location="${basedir}/lib"/> |
127 |
|
<property name="dist.dir" location="${basedir}/dist"/> |
149 |
|
<property name="java12.docroot.url" value="https://docs.oracle.com/en/java/javase/12/docs"/> |
150 |
|
<property name="java13.docroot.url" value="https://docs.oracle.com/en/java/javase/13/docs"/> |
151 |
|
<property name="java14.docroot.url" value="https://docs.oracle.com/en/java/javase/14/docs"/> |
152 |
< |
<property name="java15.docroot.url" value="https://download.java.net/java/early_access/jdk15/docs"/> |
152 |
> |
<property name="java15.docroot.url" value="https://docs.oracle.com/en/java/javase/15/docs"/> |
153 |
> |
<property name="java16.docroot.url" value="https://docs.oracle.com/en/java/javase/16/docs"/> |
154 |
> |
<property name="java17.docroot.url" value="https://docs.oracle.com/en/java/javase/17/docs"/> |
155 |
> |
<property name="java18.docroot.url" value="https://download.java.net/java/early_access/jdk18/docs"/> |
156 |
|
<!-- Default jdk doc location (latest stable LTS release seems best) --> |
157 |
< |
<property name="java.docroot.url" value="${java11.docroot.url}"/> |
157 |
> |
<property name="java.docroot.url" value="${java17.docroot.url}"/> |
158 |
|
|
159 |
|
<!-- Canonical location of jdk API docs, to use with javadoc link attribute --> |
160 |
|
<property name="java11.api.url" value="${java11.docroot.url}/api/"/> |
162 |
|
<property name="java13.api.url" value="${java13.docroot.url}/api/"/> |
163 |
|
<property name="java14.api.url" value="${java14.docroot.url}/api/"/> |
164 |
|
<property name="java15.api.url" value="${java15.docroot.url}/api/"/> |
165 |
+ |
<property name="java16.api.url" value="${java16.docroot.url}/api/"/> |
166 |
+ |
<property name="java17.api.url" value="${java17.docroot.url}/api/"/> |
167 |
+ |
<property name="java18.api.url" value="${java18.docroot.url}/api/"/> |
168 |
|
<property name="java.api.url" value="${java.docroot.url}/api/"/> |
169 |
|
|
170 |
|
<!-- Define the "jtreg" task --> |
266 |
|
</sequential> |
267 |
|
</macrodef> |
268 |
|
|
269 |
+ |
<defjtregtests v="18"/> |
270 |
+ |
<defjtregtests v="17"/> |
271 |
+ |
<defjtregtests v="16"/> |
272 |
|
<defjtregtests v="15"/> |
273 |
|
<defjtregtests v="14"/> |
274 |
|
<defjtregtests v="13"/> |
292 |
|
<!-- ant -Djtreg.verbose=time,fail,error jtreg --> |
293 |
|
<property name="jtreg.verbose" value="nopass,fail,error"/> |
294 |
|
|
295 |
< |
<delete dir="@{workdir}/JTwork" quiet="true"/> |
295 |
> |
<!-- concurrency > 1 mitigates slowness of some jtreg tests --> |
296 |
> |
<!-- BUT concurrency:auto starts "too many" VMs; just 1 free core each --> |
297 |
> |
<!-- In 2020 concurrency:3 seems like a sweet spot --> |
298 |
> |
<!-- Override using: ant -Djtreg.concurrency="N" jtreg --> |
299 |
> |
<property name="jtreg.concurrency" value="3"/> |
300 |
> |
|
301 |
> |
<delete dir="@{workdir}/JTwork" quiet="true"/> |
302 |
|
<jtreg dir="${jtreg@{target}.src.dir}" |
303 |
|
jdk="${jdk@{target}.home}" |
304 |
|
workDir="@{workdir}/JTwork"> |
305 |
|
<patternset refid="jdk@{target}.jtreg.tests"/> |
306 |
< |
<arg value="-javacoptions:--patch-module=java.base=@{classes}"/> |
307 |
< |
<arg value="-vmoptions:--patch-module=java.base=@{classes}"/> |
306 |
> |
<arg value="-javacoption:--patch-module=java.base=@{classes}"/> |
307 |
> |
<arg value="-vmoption:--patch-module=java.base=@{classes}"/> |
308 |
> |
<arg value="-vmoption:-Xmx256m"/> |
309 |
> |
<arg value="-concurrency:${jtreg.concurrency}"/> |
310 |
> |
<arg value="-vmoptions:-esa -ea"/> |
311 |
|
<arg value="-vmoptions:${vmoptions}" if:set="vmoptions"/> |
312 |
|
<arg value="-agentvm"/> |
313 |
|
<arg value="-noreport"/> |
314 |
|
<arg value="-verbose:@{verbose}"/> |
285 |
– |
<arg value="-vmoptions:-esa -ea"/> |
315 |
|
<arg value="-automatic"/> |
316 |
|
<arg value="-k:!ignore"/> |
317 |
|
<arg line="@{jtregflags}"/> |
381 |
|
<!-- Xlint:-removal for jdk12 Unsafe Object -> Reference renaming --> |
382 |
|
<compilerarg value="-Xlint:all,-removal"/> |
383 |
|
<compilerarg line="--doclint-format html5"/> |
384 |
< |
<compilerarg value="-Xdoclint:all/protected,reference/private"/> |
384 |
> |
<!-- Temporarily disable doclint for private elements, due to --> |
385 |
> |
<!-- https://bugs.openjdk.java.net/browse/JDK-8214571 --> |
386 |
> |
<!-- which is expected to be fixed in openjdk 11.0.8 --> |
387 |
> |
<!-- <compilerarg value="-Xdoclint:all/protected,reference/private"/> --> |
388 |
> |
<compilerarg value="-Xdoclint:all/protected"/> |
389 |
|
<compilerarg value="-Xdoclint/package:java.util.*"/> |
390 |
|
<compilerarg value="-Werror"/> |
391 |
|
<compilerarg line="-Xmaxerrs 1000 -Xmaxwarns 1000"/> |
442 |
|
executable="${build.main.javadoc}"> |
443 |
|
<!-- TODO: JDK-8214571 failonerror = "true" --> |
444 |
|
<fileset dir="${src.dir}" defaultexcludes="yes"> |
445 |
< |
<include name="**/*.java"/> |
445 |
> |
<include name="java/**/*.java"/> |
446 |
|
</fileset> |
447 |
|
<arg line="-Xdocrootparent ${java.docroot.url}"/> |
448 |
|
<arg line="-Xmaxerrs 1000 -Xmaxwarns 1000"/> |
449 |
|
<arg value="-quiet"/> |
450 |
|
<arg value="-XDignore.symbol.file=true"/> |
451 |
|
<arg value="-html5"/> |
452 |
+ |
<arg value="-Xdoclint:all,-missing"/> |
453 |
|
<arg value="--patch-module=java.base=${src.dir}"/> |
454 |
|
<arg value="--frames" if:set="use-frames"/> |
455 |
|
<arg value="--override-methods=summary"/> |
541 |
|
description="Runs tck and jtreg tests for src/main"/> |
542 |
|
|
543 |
|
<target name="test-version-permutations" |
544 |
< |
depends="test11, test12, test13, test14, test15, test11-12, test11-13, test11-14, test11-15, clean, test, docs" |
544 |
> |
depends="test11, test12, test13, test14, test15, test16, |
545 |
> |
test11-12, test11-13, test11-14, test11-15, test11-16, |
546 |
> |
clean, test, docs" |
547 |
|
description="Runs tck and jtreg tests for various build-time and runtime java versions"/> |
548 |
|
|
549 |
|
<target name="test11"> |
606 |
|
</antcall> |
607 |
|
</target> |
608 |
|
|
609 |
+ |
<target name="test16"> |
610 |
+ |
<antcall> |
611 |
+ |
<param name="java.runtime.target" value="16"/> |
612 |
+ |
<param name="build.main.javac" value="${javac16}"/> |
613 |
+ |
<param name="build.main.javadoc" value="${javadoc16}"/> |
614 |
+ |
<param name="build.main.javadoc.source" value="16"/> |
615 |
+ |
<target name="clean"/> |
616 |
+ |
<target name="test"/> |
617 |
+ |
<target name="docs"/> |
618 |
+ |
</antcall> |
619 |
+ |
</target> |
620 |
+ |
|
621 |
|
<target name="test11-12"> |
622 |
|
<antcall> |
623 |
|
<param name="java.runtime.target" value="12"/> |
666 |
|
</antcall> |
667 |
|
</target> |
668 |
|
|
669 |
+ |
<target name="test11-16"> |
670 |
+ |
<antcall> |
671 |
+ |
<param name="java.runtime.target" value="16"/> |
672 |
+ |
<param name="build.main.javac" value="${javac11}"/> |
673 |
+ |
<param name="build.main.javadoc" value="${javadoc16}"/> |
674 |
+ |
<param name="build.main.javadoc.source" value="11"/> |
675 |
+ |
<target name="clean"/> |
676 |
+ |
<target name="test"/> |
677 |
+ |
<target name="docs"/> |
678 |
+ |
</antcall> |
679 |
+ |
</target> |
680 |
+ |
|
681 |
+ |
<target name="docs16"> |
682 |
+ |
<antcall> |
683 |
+ |
<param name="java.runtime.target" value="16"/> |
684 |
+ |
<param name="build.main.javac" value="${javac16}"/> |
685 |
+ |
<param name="build.main.javadoc" value="${javadoc16}"/> |
686 |
+ |
<param name="build.main.javadoc.source" value="16"/> |
687 |
+ |
<target name="clean"/> |
688 |
+ |
<target name="docs"/> |
689 |
+ |
</antcall> |
690 |
+ |
</target> |
691 |
+ |
|
692 |
|
|
693 |
|
<target name="configure-compiler"> |
694 |
|
<fail message="ant version too old"> |
776 |
|
<property name="errorprone.jsr166.user.flags" value=""/> |
777 |
|
<property name="errorprone.jsr166.flags" |
778 |
|
value="-Xep:HashtableContains:OFF |
779 |
+ |
-Xep:PreferJavaTimeOverload:OFF |
780 |
|
-Xep:JdkObsolete:OFF |
781 |
|
-Xep:MissingOverride:OFF |
782 |
|
-Xep:MissingFail:OFF |
796 |
|
<property name="errorprone.jsr166.test.flags" |
797 |
|
value="-Xep:StringSplitter:OFF |
798 |
|
-Xep:BoxedPrimitiveConstructor:OFF |
799 |
+ |
-Xep:UnnecessaryParentheses:OFF |
800 |
|
-Xep:ModifyingCollectionWithItself:OFF"/> |
801 |
|
<!-- ant -emacs errorprone |& grep -EA1 '(warning|error):|warnings' --> |
802 |
|
<target name="errorprone" |