[cvs] / jsr166 / build.xml Repository:
ViewVC logotype

Diff of /jsr166/build.xml

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.149, Sat Jul 20 20:40:24 2013 UTC revision 1.162, Mon Feb 2 07:30:53 2015 UTC
# Line 16  Line 16 
16    $HOME/jdk/jdk6    $HOME/jdk/jdk6
17    $HOME/jdk/jdk7    $HOME/jdk/jdk7
18    $HOME/jdk/jdk8    $HOME/jdk/jdk8
19      $HOME/jdk/jdk9
20    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
21    $HOME/jdk/src/jdk6    $HOME/jdk/src/jdk6
22    $HOME/jdk/src/jdk7    $HOME/jdk/src/jdk7
23    $HOME/jdk/src/jdk8    $HOME/jdk/src/jdk8
24      $HOME/jdk/src/jdk9
25    where each of the above is a complete JDK source tree    where each of the above is a complete JDK source tree
26    (e.g. mercurial forest) or a symlink to same.    (e.g. mercurial forest) or a symlink to same.
27  As of 2013-02, the very latest lambda 8 jdk is needed for jdk8.  
28      Alternatively, define ant variables thus:
29      ant -Djdk$N.home=...
30      for $N in 6 7 8 9 ...
31  ------------------------------------------------------------------------------  ------------------------------------------------------------------------------
32    </description>    </description>
33    
# Line 45  Line 50 
50    <property name="build.deprecation"    value="false"/>    <property name="build.deprecation"    value="false"/>
51    <property name="build.javadoc.access" value="protected"/>    <property name="build.javadoc.access" value="protected"/>
52    
53    <!-- Tck options; see JSR166TestCase.java -->    <!-- Tck options; see JSR166TestCase.java
54    <!-- ant -Djsr166.profileTests=true -Djsr166.runsPerTest=100 test-tck -->     To profile a single tck test class:
55       ant -Djsr166.profileTests=true -Djsr166.profileThreshold=100 -Djsr166.tckTestClass=CompletableFutureTest test-tck
56       To stress test a single tck test class:
57       ant -Djsr166.tckTestClass=CountedCompleterTest -Djsr166.runsPerTest=100 test-tck
58      -->
59    <property name="jsr166.profileTests"     value="false"/>    <property name="jsr166.profileTests"     value="false"/>
60    <property name="jsr166.profileThreshold" value="100"/>    <property name="jsr166.profileThreshold" value="100"/>
61    <property name="jsr166.runsPerTest"      value="1"/>    <property name="jsr166.runsPerTest"      value="1"/>
   <!-- Allow running an individual tck test class -->  
   <!-- ant -Djsr166.tckTestClass=CountedCompleterTest -Djsr166.runsPerTest=100 test-tck -->  
62    <property name="jsr166.tckTestClass"     value="JSR166TestCase"/>    <property name="jsr166.tckTestClass"     value="JSR166TestCase"/>
63    
64    <!-- Build locations -->    <!-- Build locations -->
# Line 115  Line 122 
122    <defjdklocations v="6"/>    <defjdklocations v="6"/>
123    <defjdklocations v="7"/>    <defjdklocations v="7"/>
124    <defjdklocations v="8"/>    <defjdklocations v="8"/>
125      <defjdklocations v="9"/>
126    
127    <!-- Source locations -->    <!-- Source locations -->
128    <property name="src.dir"              location="${basedir}/src/main"/>    <property name="src.dir"              location="${basedir}/src/main"/>
# Line 155  Line 163 
163    <property name="extra166y.jar"    location="${build.extra166y.dir}/extra166y.jar"/>    <property name="extra166y.jar"    location="${build.extra166y.dir}/extra166y.jar"/>
164    <property name="junit.jar"        location="${lib.dir}/junit.jar"/>    <property name="junit.jar"        location="${lib.dir}/junit.jar"/>
165    
166    <!-- Canonical location of jdk API docs, to use with javadoc link attribute -->    <!-- Canonical location of jdk docs root, to use with javadoc -Xdocrootparent flag -->
167    <property name="jdkapi5docs.url"      value="http://docs.oracle.com/javase/1.5.0/docs/api/"/>    <property name="java5.docroot.url"      value="http://docs.oracle.com/javase/1.5.0/docs"/>
168    <property name="jdkapi6docs.url"      value="http://docs.oracle.com/javase/6/docs/api/"/>    <property name="java6.docroot.url"      value="http://docs.oracle.com/javase/6/docs"/>
169    <property name="jdkapi7docs.url"      value="http://docs.oracle.com/javase/7/docs/api/"/>    <property name="java7.docroot.url"      value="http://docs.oracle.com/javase/7/docs"/>
170      <property name="java8.docroot.url"      value="http://docs.oracle.com/javase/8/docs"/>
171    <property name="jdkapi8docs.url"      value="http://download.java.net/jdk8/docs/api/"/>    <!-- The expected canonical location does not yet exist as of 2014-07 -->
172    <!-- The below does not yet exist as of 2013-01 -->    <!-- <property name="java9.docroot.url" value="http://docs.oracle.com/javase/9/docs"/> -->
173    <!-- <property name="jdkapi8docs.url" value="http://docs.oracle.com/javase/8/docs/api/"/> -->    <property name="java9.docroot.url"      value="http://download.java.net/jdk9/docs"/>
174      <!-- Default jdk doc location (latest stable release seems best) -->
175      <property name="java.docroot.url"       value="${java8.docroot.url}"/>
176    
177    <!-- Default jdk api doc location (latest stable release seems best) -->    <!-- Canonical location of jdk API docs, to use with javadoc link attribute -->
178    <property name="jdkapidocs.url"       value="${jdkapi7docs.url}"/>    <property name="java5.api.url"      value="${java5.docroot.url}/api/"/>
179      <property name="java6.api.url"      value="${java6.docroot.url}/api/"/>
180      <property name="java7.api.url"      value="${java7.docroot.url}/api/"/>
181      <property name="java8.api.url"      value="${java8.docroot.url}/api/"/>
182      <property name="java9.api.url"      value="${java9.docroot.url}/api/"/>
183      <property name="java.api.url"       value="${java.docroot.url}/api/"/>
184    
185    <!-- Define the "jtreg" task -->    <!-- Define the "jtreg" task -->
186    <!-- See the docs in "jtreg -onlineHelp" -->    <!-- See the docs in "jtreg -onlineHelp" -->
# Line 184  Line 199 
199      <attribute name="compile-target" default="@{target}"/>      <attribute name="compile-target" default="@{target}"/>
200      <attribute name="workdir"/>      <attribute name="workdir"/>
201      <attribute name="classes"/>      <attribute name="classes"/>
202      <attribute name="jvmflags" default=""/>      <attribute name="jvmflags" default="-ea -esa -Djsr166.testImplementationDetails=true"/>
203      <element name="javac-elements" optional="true"/>      <element name="javac-elements" optional="true"/>
204      <sequential>      <sequential>
205    
# Line 198  Line 213 
213             source="@{compile-target}"             source="@{compile-target}"
214             target="@{compile-target}"             target="@{compile-target}"
215             classpath="${junit.jar}"             classpath="${junit.jar}"
            bootclasspath="@{classes}:${bootclasspath@{compile-target}}"  
216             includeAntRuntime="false"             includeAntRuntime="false"
217             includeJavaRuntime="false"             includeJavaRuntime="false"
218             executable="${javac@{compile-target}}"             executable="${javac@{compile-target}}"
# Line 207  Line 221 
221        <include name="*.java"/>        <include name="*.java"/>
222        <compilerarg value="-XDignore.symbol.file=true"/>        <compilerarg value="-XDignore.symbol.file=true"/>
223        <compilerarg value="-Xlint:all,-unchecked,-rawtypes,-serial,-deprecation"/>        <compilerarg value="-Xlint:all,-unchecked,-rawtypes,-serial,-deprecation"/>
224          <compilerarg value="-Xbootclasspath/p:@{classes}"/>
225        <compilerarg line="${build.args}"/>        <compilerarg line="${build.args}"/>
226        <javac-elements/>        <javac-elements/>
227    
# Line 218  Line 233 
233            fork="true">            fork="true">
234          <jvmarg value="-Xbootclasspath/p:@{classes}"/>          <jvmarg value="-Xbootclasspath/p:@{classes}"/>
235          <jvmarg line="@{jvmflags}"/>          <jvmarg line="@{jvmflags}"/>
236    
237            <!-- ant -Djava.util.concurrent.ForkJoinPool.common.parallelism=1 test-tck -->
238            <syspropertyset id="java.util.concurrent.ForkJoinPool-properties">
239              <propertyref prefix="java.util.concurrent.ForkJoinPool"/>
240            </syspropertyset>
241    
242          <sysproperty key="jsr166.profileTests"     value="${jsr166.profileTests}"/>          <sysproperty key="jsr166.profileTests"     value="${jsr166.profileTests}"/>
243          <sysproperty key="jsr166.profileThreshold" value="${jsr166.profileThreshold}"/>          <sysproperty key="jsr166.profileThreshold" value="${jsr166.profileThreshold}"/>
244          <sysproperty key="jsr166.runsPerTest"      value="${jsr166.runsPerTest}"/>          <sysproperty key="jsr166.runsPerTest"      value="${jsr166.runsPerTest}"/>
# Line 231  Line 252 
252    </macrodef>    </macrodef>
253    
254    <macrodef name="run-jtreg-tests">    <macrodef name="run-jtreg-tests">
255        <!-- ant -Djtreg.src.dir=src/test/jtreg/util/concurrent/CompletableFuture test-jtreg -->
256      <attribute name="jtreg.src.dir" default="${jtreg.src.dir}"/>      <attribute name="jtreg.src.dir" default="${jtreg.src.dir}"/>
257      <attribute name="source" default="7"/>      <attribute name="source" default="7"/>
258      <attribute name="target"/>      <attribute name="target"/>
# Line 269  Line 291 
291    
292    <!-- Main targets -->    <!-- Main targets -->
293    
294      <property name="build.main.java.version" value="9"/>
295      <property name="build.main.javac" value="${javac9}"/>
296    
297    <target name="dists"    <target name="dists"
298            depends="dist, 4jdk7dist, jsr166edist, jsr166ydist, extra166ydist, jsr166xdist"            depends="dist, 4jdk7dist, jsr166edist, jsr166ydist, extra166ydist, jsr166xdist"
299            description="Builds all public jars and docs"/>            description="Builds all public jars and docs"/>
# Line 287  Line 312 
312             classpath=""             classpath=""
313             includeAntRuntime="false"             includeAntRuntime="false"
314             includeJavaRuntime="false"             includeJavaRuntime="false"
315             executable="${javac8}"             executable="${build.main.javac}"
316             fork="true">             fork="true">
317    
318        <include name="**/*.java"/>        <include name="**/*.java"/>
# Line 323  Line 348 
348    
349      <javadoc destdir="${docs.dir}"      <javadoc destdir="${docs.dir}"
350               packagenames="none"               packagenames="none"
351               link="${jdkapi8docs.url}"               link="${java9.api.url}"
352               overview="${src.dir}/intro.html"               overview="${src.dir}/intro.html"
353               access="${build.javadoc.access}"               access="${build.javadoc.access}"
354               sourcepath="${src.dir}:${jdk8src.dir}"               sourcepath="${src.dir}:${jdk9src.dir}"
355               classpath=""               classpath=""
356               executable="${javadoc8}">               executable="${javadoc9}">
357        <fileset dir="${src.dir}" defaultexcludes="yes">        <fileset dir="${src.dir}" defaultexcludes="yes">
358          <include name="**/*.java"/>          <include name="**/*.java"/>
359        </fileset>        </fileset>
360          <arg line="-Xdocrootparent ${java9.docroot.url}"/>
361        <arg line="-Xmaxerrs 1000 -Xmaxwarns 1000"/>        <arg line="-Xmaxerrs 1000 -Xmaxwarns 1000"/>
362        <arg value="-XDignore.symbol.file=true"/>        <arg value="-XDignore.symbol.file=true"/>
363        <arg value="-tag"/>        <arg value="-tag"/>
# Line 402  Line 428 
428            description="Runs tck tests for main directly">            description="Runs tck tests for main directly">
429    
430      <run-tck-tests      <run-tck-tests
431        target="8"        target="${build.main.java.version}"
432        workdir="${build.dir}"        workdir="${build.dir}"
433        classes="${product.jar}"/>        classes="${product.jar}"/>
434    </target>    </target>
435    
436      <target name="test-tck-parallelism-1"
437              description="Runs test-tck with given common pool parallelism">
438        <antcall target="test-tck">
439          <param name="java.util.concurrent.ForkJoinPool.common.parallelism" value="1"/>
440        </antcall>
441      </target>
442    
443      <target name="test-tck-parallelism-0"
444              description="Runs test-tck with given common pool parallelism">
445        <antcall target="test-tck">
446          <param name="java.util.concurrent.ForkJoinPool.common.parallelism" value="0"/>
447        </antcall>
448      </target>
449    
450    <target name="test-jtreg"    <target name="test-jtreg"
451            depends="jar"            depends="jar"
452            description="Runs jtreg tests for main using the jtreg ant task">            description="Runs jtreg tests for main using the jtreg ant task">
453      <run-jtreg-tests      <run-jtreg-tests
454         target="8"         target="${build.main.java.version}"
455         workdir="${build.dir}"         workdir="${build.dir}"
456         classes="${product.jar}"/>         classes="${product.jar}"/>
457    </target>    </target>
458    
459    <target name="test"    <target name="test"
460            depends="test-tck, test-jtreg"            depends="test-tck, test-tck-parallelism-1, test-jtreg"
461            description="Runs tck and jtreg tests for main">            description="Runs tck and jtreg tests for main">
462    </target>    </target>
463    
464      <target name="test89"
465              description="Runs tck and jtreg tests for main for multiple java versions">
466    
467        <antcall target="clean"/>
468        <antcall target="test">
469          <param name="build.main.java.version" value="8"/>
470          <param name="build.main.javac" value="${javac8}"/>
471        </antcall>
472    
473        <antcall target="clean"/>
474        <antcall target="test">
475          <param name="build.main.java.version" value="9"/>
476          <param name="build.main.javac" value="${javac9}"/>
477        </antcall>
478    
479      </target>
480    
481    
482    
483    <target name="configure-compiler">    <target name="configure-compiler">
# Line 552  Line 609 
609        <javac-elements>        <javac-elements>
610          <!-- JDK8+ test classes -->          <!-- JDK8+ test classes -->
611          <exclude name="*8Test.java"/>          <exclude name="*8Test.java"/>
612            <exclude name="*9Test.java"/>
613          <exclude name="DoubleAccumulatorTest.java"/>          <exclude name="DoubleAccumulatorTest.java"/>
614          <exclude name="DoubleAdderTest.java"/>          <exclude name="DoubleAdderTest.java"/>
615          <exclude name="LongAccumulatorTest.java"/>          <exclude name="LongAccumulatorTest.java"/>
# Line 617  Line 675 
675    
676      <javadoc destdir="${4jdk7docs.dir}"      <javadoc destdir="${4jdk7docs.dir}"
677               packagenames="none"               packagenames="none"
678               link="${jdkapi7docs.url}"               link="${java7.api.url}"
679               overview="${4jdk7src.dir}/intro.html"               overview="${4jdk7src.dir}/intro.html"
680               access="${build.javadoc.access}"               access="${build.javadoc.access}"
681               sourcepath="${4jdk7src.dir}:${jdk7src.dir}"               sourcepath="${4jdk7src.dir}:${jdk7src.dir}"
# Line 626  Line 684 
684        <fileset dir="${4jdk7src.dir}" defaultexcludes="yes">        <fileset dir="${4jdk7src.dir}" defaultexcludes="yes">
685          <include name="**/*.java"/>          <include name="**/*.java"/>
686        </fileset>        </fileset>
687          <arg line="-Xdocrootparent ${java7.docroot.url}"/>
688        <arg value="-XDignore.symbol.file=true"/>        <arg value="-XDignore.symbol.file=true"/>
689      </javadoc>      </javadoc>
690    </target>    </target>
# Line 705  Line 764 
764    
765      <javadoc destdir="${jsr166xdocs.dir}"      <javadoc destdir="${jsr166xdocs.dir}"
766               packagenames="jsr166x.*"               packagenames="jsr166x.*"
767               link="${jdkapidocs.url}"               link="${java.api.url}"
768               access="${build.javadoc.access}"               access="${build.javadoc.access}"
769               sourcepath="${topsrc.dir}:${jdk6src.dir}"               sourcepath="${topsrc.dir}:${jdk6src.dir}"
770               bootclasspath="${bootclasspath6}"               bootclasspath="${bootclasspath6}"
771               source="5"               source="5"
772               executable="${javadoc7}">               executable="${javadoc7}">
773          <arg line="-Xdocrootparent ${java.docroot.url}"/>
774        <arg value="-XDignore.symbol.file=true"/>        <arg value="-XDignore.symbol.file=true"/>
775    
776      </javadoc>      </javadoc>
# Line 790  Line 850 
850    
851      <javadoc destdir="${jsr166ydocs.dir}"      <javadoc destdir="${jsr166ydocs.dir}"
852               packagenames="jsr166y.*"               packagenames="jsr166y.*"
853               link="${jdkapidocs.url}"               link="${java.api.url}"
854               access="${build.javadoc.access}"               access="${build.javadoc.access}"
855               sourcepath="${topsrc.dir}:${jdk6src.dir}"               sourcepath="${topsrc.dir}:${jdk6src.dir}"
856               bootclasspath="${bootclasspath6}"               bootclasspath="${bootclasspath6}"
857               source="6"               source="6"
858               executable="${javadoc7}">               executable="${javadoc7}">
859          <arg line="-Xdocrootparent ${java.docroot.url}"/>
860        <arg value="-XDignore.symbol.file=true"/>        <arg value="-XDignore.symbol.file=true"/>
861    
862      </javadoc>      </javadoc>
# Line 876  Line 937 
937    
938      <javadoc destdir="${extra166ydocs.dir}"      <javadoc destdir="${extra166ydocs.dir}"
939               packagenames="extra166y.*"               packagenames="extra166y.*"
940               link="${jdkapidocs.url}"               link="${java.api.url}"
941               access="${build.javadoc.access}"               access="${build.javadoc.access}"
942               sourcepath="${topsrc.dir}:${jdk6src.dir}"               sourcepath="${topsrc.dir}:${jdk6src.dir}"
943               bootclasspath="${bootclasspath6}"               bootclasspath="${bootclasspath6}"
944               source="6"               source="6"
945               executable="${javadoc7}">               executable="${javadoc7}">
946          <arg line="-Xdocrootparent ${java.docroot.url}"/>
947        <arg value="-XDignore.symbol.file=true"/>        <arg value="-XDignore.symbol.file=true"/>
948    
949      </javadoc>      </javadoc>
# Line 942  Line 1004 
1004      </javac>      </javac>
1005    </target>    </target>
1006    
1007      <!-- jsr166e: find doclint errors -->
1008      <target name="jsr166edoclint">
1009    
1010        <mkdir dir="${build.jsr166e.classes.dir}"/>
1011    
1012        <javac srcdir="${topsrc.dir}"
1013               destdir="${build.jsr166e.classes.dir}"
1014               debug="${build.debug}"
1015               debuglevel="${build.debuglevel}"
1016               deprecation="${build.deprecation}"
1017               source="${build.jsr166e.java.version}"
1018               classpath=""
1019               bootclasspath="${bootclasspath7}"
1020               includeAntRuntime="false"
1021               includeJavaRuntime="false"
1022               executable="${javac8}"
1023               fork="true">
1024    
1025          <include name="jsr166e/**/*.java"/>
1026          <compilerarg value="-XDignore.symbol.file=true"/>
1027          <compilerarg value="-Xlint:all"/>
1028          <compilerarg value="-Xdoclint:all/protected"/>
1029    
1030        </javac>
1031      </target>
1032    
1033    
1034    <target name="jsr166ejar"    <target name="jsr166ejar"
1035            depends="jsr166ecompile"            depends="jsr166ecompile"
# Line 962  Line 1050 
1050    
1051      <javadoc destdir="${jsr166edocs.dir}"      <javadoc destdir="${jsr166edocs.dir}"
1052               packagenames="jsr166e.*"               packagenames="jsr166e.*"
1053               link="${jdkapidocs.url}"               link="${java.api.url}"
1054               access="${build.javadoc.access}"               access="${build.javadoc.access}"
1055               sourcepath="${topsrc.dir}:${jdk6src.dir}"               sourcepath="${topsrc.dir}:${jdk6src.dir}"
1056               source="${build.jsr166e.java.version}"               source="${build.jsr166e.java.version}"
1057               executable="${javadoc7}">               executable="${javadoc7}">
1058          <arg line="-Xdocrootparent ${java.docroot.url}"/>
1059        <arg value="-XDignore.symbol.file=true"/>        <arg value="-XDignore.symbol.file=true"/>
1060    
1061      </javadoc>      </javadoc>
# Line 1039  Line 1128 
1128    
1129    <target name="lint">    <target name="lint">
1130      <antcall target="dists">      <antcall target="dists">
1131          <param name="build.javadoc.access" value="public"/>
1132        </antcall>
1133      </target>
1134    
1135    <!-- Generates all doclint warnings, even for private methods (rarely useful) -->
1136      <target name="lint-private">
1137        <antcall target="dist">
1138        <param name="build.javadoc.access" value="private"/>        <param name="build.javadoc.access" value="private"/>
1139      </antcall>      </antcall>
1140    </target>    </target>

Legend:
Removed from v.1.149  
changed lines
  Added in v.1.162

Doug Lea
ViewVC Help
Powered by ViewVC 1.0.8