23 |
$HOME/jdk/jdk9 |
$HOME/jdk/jdk9 |
24 |
$HOME/jdk/jdk10 |
$HOME/jdk/jdk10 |
25 |
$HOME/jdk/jdk11 |
$HOME/jdk/jdk11 |
26 |
|
$HOME/jdk/jdk12 |
27 |
where each of the above is a JDK or a symlink to same, and |
where each of the above is a JDK or a symlink to same, and |
28 |
$HOME/jdk/src/jdk8 |
$HOME/jdk/src/jdk8 |
29 |
$HOME/jdk/src/jdk9 |
$HOME/jdk/src/jdk9 |
30 |
$HOME/jdk/src/jdk10 |
$HOME/jdk/src/jdk10 |
31 |
$HOME/jdk/src/jdk11 |
$HOME/jdk/src/jdk11 |
32 |
|
$HOME/jdk/src/jdk12 |
33 |
where each of the above is a complete JDK source tree |
where each of the above is a complete JDK source tree |
34 |
(e.g. mercurial forest) or a symlink to same. |
(e.g. mercurial forest) or a symlink to same. |
35 |
|
|
106 |
<property name="jdk@{v}.src.dir" location="${jdk@{v}.src.home}/jdk/src/share/classes" |
<property name="jdk@{v}.src.dir" location="${jdk@{v}.src.home}/jdk/src/share/classes" |
107 |
unless:set="have.java.base"/> |
unless:set="have.java.base"/> |
108 |
<local name="modules"/> |
<local name="modules"/> |
109 |
<available property="modules" file="${jdk@{v}.home}/jmods" type="dir"/> |
<available property="modules" file="${jdk@{v}.home}/lib/modules" type="file"/> |
110 |
<local name="boot.jar.dir"/> |
<local name="boot.jar.dir"/> |
111 |
<property name="boot.jar.dir" location="${jdk@{v}.home}/jre/lib" unless:set="modules"/> |
<property name="boot.jar.dir" location="${jdk@{v}.home}/jre/lib" unless:set="modules"/> |
112 |
<path id="bootclasspath@{v}" unless:set="modules"> |
<path id="bootclasspath@{v}" unless:set="modules"> |
138 |
<defjdklocations v="9"/> |
<defjdklocations v="9"/> |
139 |
<defjdklocations v="10"/> |
<defjdklocations v="10"/> |
140 |
<defjdklocations v="11"/> |
<defjdklocations v="11"/> |
141 |
|
<defjdklocations v="12"/> |
142 |
|
|
143 |
<!-- Source locations --> |
<!-- Source locations --> |
144 |
<property name="src.dir" location="${basedir}/src/main"/> |
<property name="src.dir" location="${basedir}/src/main"/> |
150 |
<property name="jtreg9.src.dir" location="${test.src.dir}/jtreg"/> |
<property name="jtreg9.src.dir" location="${test.src.dir}/jtreg"/> |
151 |
<property name="jtreg10.src.dir" location="${test.src.dir}/jtreg"/> |
<property name="jtreg10.src.dir" location="${test.src.dir}/jtreg"/> |
152 |
<property name="jtreg11.src.dir" location="${test.src.dir}/jtreg"/> |
<property name="jtreg11.src.dir" location="${test.src.dir}/jtreg"/> |
153 |
|
<property name="jtreg12.src.dir" location="${test.src.dir}/jtreg"/> |
154 |
<property name="jtreg.src.dir" location="${jtreg9.src.dir}"/> |
<property name="jtreg.src.dir" location="${jtreg9.src.dir}"/> |
155 |
<property name="lib.dir" location="${basedir}/lib"/> |
<property name="lib.dir" location="${basedir}/lib"/> |
156 |
<property name="dist.dir" location="${basedir}/dist"/> |
<property name="dist.dir" location="${basedir}/dist"/> |
197 |
<property name="java8.docroot.url" value="https://docs.oracle.com/javase/8/docs"/> |
<property name="java8.docroot.url" value="https://docs.oracle.com/javase/8/docs"/> |
198 |
<property name="java9.docroot.url" value="https://docs.oracle.com/javase/9/docs"/> |
<property name="java9.docroot.url" value="https://docs.oracle.com/javase/9/docs"/> |
199 |
<property name="java10.docroot.url" value="https://docs.oracle.com/javase/10/docs"/> |
<property name="java10.docroot.url" value="https://docs.oracle.com/javase/10/docs"/> |
200 |
|
<property name="java11.docroot.url" value="https://docs.oracle.com/en/java/javase/11/docs"/> |
201 |
<!-- The location of jdk early access docs (RIP) --> |
<!-- The location of jdk early access docs (RIP) --> |
202 |
<!-- <property name="java9.docroot.url" value="http://download.java.net/java/jdk9/docs"/> --> |
<!-- <property name="java9.docroot.url" value="http://download.java.net/java/jdk9/docs"/> --> |
203 |
<!-- <property name="java10.docroot.url" value="http://download.java.net/java/jdk10/docs"/> --> |
<!-- <property name="java10.docroot.url" value="http://download.java.net/java/jdk10/docs"/> --> |
204 |
<property name="java11.docroot.url" value="http://download.java.net/java/jdk11/docs"/> |
<!-- <property name="java11.docroot.url" value="http://download.java.net/java/jdk11/docs"/> --> |
205 |
|
<property name="java12.docroot.url" value="https://download.java.net/java/jdk12/docs"/> |
206 |
<!-- Default jdk doc location (latest stable release seems best) --> |
<!-- Default jdk doc location (latest stable release seems best) --> |
207 |
|
<!-- But pin to jdk 10 until fix for --> |
208 |
|
<!-- 8211194: javadoc -link doesn't take module path into consideration --> |
209 |
<property name="java.docroot.url" value="${java10.docroot.url}"/> |
<property name="java.docroot.url" value="${java10.docroot.url}"/> |
210 |
|
|
211 |
<!-- Canonical location of jdk API docs, to use with javadoc link attribute --> |
<!-- Canonical location of jdk API docs, to use with javadoc link attribute --> |
216 |
<property name="java9.api.url" value="${java9.docroot.url}/api/"/> |
<property name="java9.api.url" value="${java9.docroot.url}/api/"/> |
217 |
<property name="java10.api.url" value="${java10.docroot.url}/api/"/> |
<property name="java10.api.url" value="${java10.docroot.url}/api/"/> |
218 |
<property name="java11.api.url" value="${java11.docroot.url}/api/"/> |
<property name="java11.api.url" value="${java11.docroot.url}/api/"/> |
219 |
|
<property name="java12.api.url" value="${java12.docroot.url}/api/"/> |
220 |
<property name="java.api.url" value="${java.docroot.url}/api/"/> |
<property name="java.api.url" value="${java.docroot.url}/api/"/> |
221 |
|
|
222 |
<!-- Define the "jtreg" task --> |
<!-- Define the "jtreg" task --> |
249 |
|
|
250 |
<local name="modules"/> |
<local name="modules"/> |
251 |
<condition property="modules"> |
<condition property="modules"> |
252 |
<available file="${jdk@{compile-target}.home}/jmods" type="dir"/> |
<available file="${jdk@{compile-target}.home}/lib/modules" type="file"/> |
253 |
</condition> |
</condition> |
254 |
|
|
255 |
<local name="use-doclint"/> |
<local name="use-doclint"/> |
330 |
</sequential> |
</sequential> |
331 |
</macrodef> |
</macrodef> |
332 |
|
|
333 |
|
<defjtregtests v="12"/> |
334 |
<defjtregtests v="11"/> |
<defjtregtests v="11"/> |
335 |
<defjtregtests v="10"/> |
<defjtregtests v="10"/> |
336 |
<defjtregtests v="9"/> |
<defjtregtests v="9"/> |
356 |
|
|
357 |
<local name="modules"/> |
<local name="modules"/> |
358 |
<condition property="modules"> |
<condition property="modules"> |
359 |
<available file="${jdk@{target}.home}/jmods" type="dir"/> |
<available file="${jdk@{target}.home}/lib/modules" type="file"/> |
360 |
</condition> |
</condition> |
361 |
|
|
362 |
<delete dir="@{workdir}/JTwork" quiet="true"/> |
<delete dir="@{workdir}/JTwork" quiet="true"/> |
391 |
|
|
392 |
<!-- Main targets --> |
<!-- Main targets --> |
393 |
|
|
394 |
<property name="build.main.java.version" value="9"/> |
<property name="build.main.java.version" value="11"/> |
395 |
<!-- Workaround "no nested properties in ant" --> |
<!-- Workaround "no nested properties in ant" --> |
396 |
<macrodef name="define-build-main-properties"> |
<macrodef name="define-build-main-properties"> |
397 |
<attribute name="v"/> |
<attribute name="v"/> |
398 |
<sequential> |
<sequential> |
399 |
<property name="build.main.java" value="${java@{v}}"/> |
<property name="build.main.java" value="${java@{v}}"/> |
400 |
<property name="build.main.javac" value="${javac@{v}}"/> |
<property name="build.main.javac" value="${javac@{v}}"/> |
401 |
<!-- Force javadoc version to be at least 10, |
<!-- Force javadoc version to be at least 10, so we can use override-methods=summary --> |
402 |
so we can use override-methods=summary --> |
<!-- Force javadoc version to be at least 12, due to JDK-8202628 --> |
403 |
<condition property="build.main.javadoc" |
<condition property="build.main.javadoc" |
404 |
value="${javadoc11}" |
value="${javadoc12}" |
405 |
else="${javadoc@{v}}"> |
else="${javadoc@{v}}"> |
406 |
<equals arg1="@{v}" arg2="9"/> |
<matches pattern="^(9|10|11)$" string="@{v}"/> |
407 |
</condition> |
</condition> |
408 |
</sequential> |
</sequential> |
409 |
</macrodef> |
</macrodef> |
412 |
<target name="dists" |
<target name="dists" |
413 |
depends="dist, 4jdk8dist" |
depends="dist, 4jdk8dist" |
414 |
description="Builds all public jars and docs"/> |
description="Builds all public jars and docs"/> |
415 |
<!-- |
<!-- no longer supported: 4jdk7dist, jsr166edist, jsr166ydist, extra166ydist, jsr166xdist --> |
|
depends="dist, 4jdk8dist, 4jdk7dist, jsr166edist, jsr166ydist, extra166ydist, jsr166xdist" |
|
|
--> |
|
416 |
|
|
417 |
<target name="compile" |
<target name="compile" |
418 |
depends="configure-compiler" |
depends="configure-compiler" |
481 |
<!-- TODO: <arg line="- -module-source-path ${jdk9.home}/src.zip"/> --> |
<!-- TODO: <arg line="- -module-source-path ${jdk9.home}/src.zip"/> --> |
482 |
<javadoc destdir="${docs.dir}" |
<javadoc destdir="${docs.dir}" |
483 |
packagenames="none" |
packagenames="none" |
484 |
link="${java9.api.url}" |
link="${java11.api.url}" |
485 |
overview="${src.dir}/intro.html" |
overview="${src.dir}/intro.html" |
486 |
access="${build.javadoc.access}" |
access="${build.javadoc.access}" |
487 |
sourcepath="${src.dir}" |
sourcepath="${src.dir}" |
488 |
classpath="" |
classpath="" |
489 |
source="9" |
source="11" |
490 |
executable="${build.main.javadoc}"> |
executable="${build.main.javadoc}"> |
491 |
<fileset dir="${src.dir}" defaultexcludes="yes"> |
<fileset dir="${src.dir}" defaultexcludes="yes"> |
492 |
<include name="**/*.java"/> |
<include name="**/*.java"/> |
493 |
</fileset> |
</fileset> |
494 |
<arg line="-Xdocrootparent ${java9.docroot.url}"/> |
<arg line="-Xdocrootparent ${java10.docroot.url}"/> |
495 |
<arg line="-Xmaxerrs 1000 -Xmaxwarns 1000"/> |
<arg line="-Xmaxerrs 1000 -Xmaxwarns 1000"/> |
496 |
<arg value="-XDignore.symbol.file=true"/> |
<arg value="-XDignore.symbol.file=true"/> |
497 |
<arg value="-html5"/> |
<arg value="-html5"/> |
498 |
<arg value="--patch-module=java.base=${src.dir}"/> |
<arg value="--patch-module=java.base=${src.dir}"/> |
499 |
|
<arg value="--frames"/> |
500 |
<arg value="--override-methods=summary"/> |
<arg value="--override-methods=summary"/> |
501 |
<arg value="-tag"/> <arg value="${javadoc.jls.option}"/> |
<arg value="-tag"/> <arg value="${javadoc.jls.option}"/> |
502 |
<arg value="-tag"/> <arg value="implSpec:a:Implementation Requirements:"/> |
<arg value="-tag"/> <arg value="implSpec:a:Implementation Requirements:"/> |
503 |
<arg value="-tag"/> <arg value="implNote:a:Implementation Note:"/> |
<arg value="-tag"/> <arg value="implNote:a:Implementation Note:"/> |
504 |
<!-- @apiNote tag currently unused --> |
<arg value="-tag"/> <arg value="apiNote:a:API Note:"/> |
|
<!-- <arg value="-tag"/> <arg value="apiNote:a:API Note:"/> --> |
|
505 |
<!-- tags added in jdk9: currently unused --> |
<!-- tags added in jdk9: currently unused --> |
506 |
<!-- <arg value="-tag"/> <arg value="revised:X"/> --> |
<!-- <arg value="-tag"/> <arg value="revised:X"/> --> |
507 |
<!-- <arg value="-tag"/> <arg value="spec:X"/> --> |
<!-- <arg value="-tag"/> <arg value="spec:X"/> --> |
514 |
description="Puts all distributable products in single hierarchy"/> |
description="Puts all distributable products in single hierarchy"/> |
515 |
|
|
516 |
|
|
|
<target name="release" |
|
|
depends="dist" |
|
|
description="Puts entire CVS tree, plus distribution productions, in a jar"> |
|
|
|
|
|
<property name="release.jar" value="dist/jsr166-${version}-dist.jar"/> |
|
|
|
|
|
<jar basedir="${basedir}" destfile="${release.jar}"> |
|
|
<!-- <exclude name="build/**"/> --> |
|
|
<exclude name="${release.jar}"/> |
|
|
<exclude name="user.properties"/> |
|
|
<exclude name="etc/notes/**"/> |
|
|
<exclude name="src/emulation/**"/> |
|
|
<exclude name="**/SyntaxTest.java"/> |
|
|
<exclude name="**/SuperfluousAbstract.java"/> |
|
|
<manifest> |
|
|
<attribute name="Built-By" value="${user.name}"/> |
|
|
<attribute name="Implementation-Vendor" value="JCP JSR-166 Expert Group."/> |
|
|
</manifest> |
|
|
</jar> |
|
|
</target> |
|
|
|
|
|
|
|
517 |
<target name="clean" |
<target name="clean" |
518 |
description="Removes all build products"> |
description="Removes all build products"> |
519 |
<delete dir="${build.dir}"/> |
<delete dir="${build.dir}"/> |
594 |
|
|
595 |
<!-- </target> --> |
<!-- </target> --> |
596 |
|
|
597 |
<target name="test91011" |
<target name="test9101112" |
598 |
description="Runs tck and jtreg tests for src/main for multiple java versions"> |
description="Runs tck and jtreg tests for src/main for multiple java versions"> |
599 |
|
|
600 |
<antcall target="clean"/> |
<antcall target="clean"/> |
601 |
<antcall target="test"> |
<antcall target="test"> |
602 |
<param name="build.main.java.version" value="9"/> |
<param name="build.main.java.version" value="9"/> |
603 |
|
<param name="build.main.java" value="${java9}"/> |
604 |
|
<param name="build.main.javac" value="${javac9}"/> |
605 |
</antcall> |
</antcall> |
606 |
|
|
607 |
<antcall target="clean"/> |
<antcall target="clean"/> |
608 |
<antcall target="test"> |
<antcall target="test"> |
609 |
<param name="build.main.java.version" value="10"/> |
<param name="build.main.java.version" value="10"/> |
610 |
|
<param name="build.main.java" value="${java10}"/> |
611 |
|
<param name="build.main.javac" value="${javac10}"/> |
612 |
</antcall> |
</antcall> |
613 |
|
|
614 |
<antcall target="clean"/> |
<antcall target="clean"/> |
615 |
<antcall target="test"> |
<antcall target="test"> |
616 |
<param name="build.main.java.version" value="11"/> |
<param name="build.main.java.version" value="11"/> |
617 |
|
<param name="build.main.java" value="${java11}"/> |
618 |
|
<param name="build.main.javac" value="${javac11}"/> |
619 |
|
</antcall> |
620 |
|
|
621 |
|
<antcall target="clean"/> |
622 |
|
<antcall target="test"> |
623 |
|
<param name="build.main.java.version" value="12"/> |
624 |
|
<param name="build.main.java" value="${java12}"/> |
625 |
|
<param name="build.main.javac" value="${javac12}"/> |
626 |
|
</antcall> |
627 |
|
<antcall target="docs"> |
628 |
|
<param name="build.main.java.version" value="12"/> |
629 |
|
<param name="build.main.java" value="${java12}"/> |
630 |
|
<param name="build.main.javac" value="${javac12}"/> |
631 |
|
<param name="build.main.javadoc" value="${javadoc12}"/> |
632 |
</antcall> |
</antcall> |
633 |
|
|
634 |
<!-- Clean up to avoid obscure wrong class file version bugs --> |
<!-- Clean up to avoid obscure wrong class file version bugs --> |
1377 |
|
|
1378 |
<!-- Find buglets that can be detected by static build tools --> |
<!-- Find buglets that can be detected by static build tools --> |
1379 |
|
|
1380 |
<target name="lint"> |
<!-- <target name="lint"> --> |
1381 |
<antcall target="dists"> |
<!-- <antcall target="dists"> --> |
1382 |
<param name="build.javadoc.access" value="public"/> |
<!-- <param name="build.javadoc.access" value="protected"/> --> |
1383 |
</antcall> |
<!-- </antcall> --> |
1384 |
</target> |
<!-- </target> --> |
1385 |
|
|
1386 |
<!-- Generates all doclint warnings, even for private methods (rarely useful) --> |
<!-- Generates all doclint warnings, even for private methods (rarely useful) --> |
1387 |
<target name="lint-private"> |
<target name="doclint-private"> |
1388 |
<antcall target="dist"> |
<antcall target="dist"> |
1389 |
<param name="build.javadoc.access" value="private"/> |
<param name="build.javadoc.access" value="private"/> |
1390 |
</antcall> |
</antcall> |
1392 |
|
|
1393 |
|
|
1394 |
<!-- ============================================================== |
<!-- ============================================================== |
1395 |
Experimental errorprone support - http://errorprone.info |
Experimental errorprone support - https://errorprone.info |
1396 |
=================================================================== --> |
=================================================================== --> |
1397 |
<property name="errorprone.jar" location="${lib.dir}/error_prone_ant-2.2.0.jar"/> |
<property name="errorprone.jar" location="${lib.dir}/error_prone_ant-2.3.1.jar"/> |
1398 |
<property name="errorprone.jsr166.user.flags" value=""/> |
<property name="errorprone.jsr166.user.flags" value=""/> |
1399 |
<property name="errorprone.jsr166.flags" |
<property name="errorprone.jsr166.flags" |
1400 |
value="-Xep:HashtableContains:OFF |
value="-Xep:HashtableContains:OFF |
1438 |
fork="true"> |
fork="true"> |
1439 |
|
|
1440 |
<include name="**/*.java"/> |
<include name="**/*.java"/> |
1441 |
|
<!-- Needed to silence -Xep:FutureReturnValueIgnored --> |
1442 |
|
<compilerarg value="-J--illegal-access=permit"/> |
1443 |
<compilerarg value="-XDcompilePolicy=simple"/> |
<compilerarg value="-XDcompilePolicy=simple"/> |
1444 |
<compilerarg line="-processorpath ${errorprone.jar}"/> |
<compilerarg line="-processorpath ${errorprone.jar}"/> |
1445 |
<compilerarg value="-Xplugin:ErrorProne |
<compilerarg value="-Xplugin:ErrorProne |
1462 |
workdir="${build.dir}" |
workdir="${build.dir}" |
1463 |
classes="${product.jar}"> |
classes="${product.jar}"> |
1464 |
<javac-elements> |
<javac-elements> |
1465 |
|
<!-- Needed to silence -Xep:FutureReturnValueIgnored --> |
1466 |
|
<compilerarg value="-J--illegal-access=permit"/> |
1467 |
<compilerarg value="-XDcompilePolicy=simple"/> |
<compilerarg value="-XDcompilePolicy=simple"/> |
1468 |
<compilerarg line="-processorpath ${errorprone.jar}"/> |
<compilerarg line="-processorpath ${errorprone.jar}"/> |
1469 |
<compilerarg value="-Xplugin:ErrorProne |
<compilerarg value="-Xplugin:ErrorProne |
1492 |
<arg value="-javacoption:-Xplugin:ErrorProne |
<arg value="-javacoption:-Xplugin:ErrorProne |
1493 |
${errorprone.jsr166.flags} |
${errorprone.jsr166.flags} |
1494 |
${errorprone.jsr166.test.flags} |
${errorprone.jsr166.test.flags} |
1495 |
|
-Xep:MultipleTopLevelClasses:WARN |
1496 |
-Xep:NonAtomicVolatileUpdate:OFF"/> |
-Xep:NonAtomicVolatileUpdate:OFF"/> |
1497 |
</jtreg-elements> |
</jtreg-elements> |
1498 |
</run-jtreg-tests> |
</run-jtreg-tests> |