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

Diff of /jsr166/build.xml

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

revision 1.99 by jsr166, Sat Jan 19 01:37:44 2013 UTC revision 1.181 by jsr166, Sun Sep 13 05:26:02 2015 UTC
# Line 1  Line 1 
1  <project name="jsr166" default="usage">  <project name="jsr166" default="usage"
2      xmlns:if="ant:if" xmlns:unless="ant:unless">
3    
4    <description>    <description>
5  ------------------------------------------------------------------------------  ------------------------------------------------------------------------------
# Line 16  Line 17 
17    $HOME/jdk/jdk6    $HOME/jdk/jdk6
18    $HOME/jdk/jdk7    $HOME/jdk/jdk7
19    $HOME/jdk/jdk8    $HOME/jdk/jdk8
20      $HOME/jdk/jdk9
21    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
22    $HOME/jdk/src/jdk6    $HOME/jdk/src/jdk6
23    $HOME/jdk/src/jdk7    $HOME/jdk/src/jdk7
24    $HOME/jdk/src/jdk8    $HOME/jdk/src/jdk8
25      $HOME/jdk/src/jdk9
26    where each of the above is a complete JDK source tree    where each of the above is a complete JDK source tree
27    (e.g. mercurial forest) or a symlink to same.    (e.g. mercurial forest) or a symlink to same.
28    
29      Alternatively, define ant variables thus:
30      ant -Djdk$N.home=...
31      for $N in 6 7 8 9 ...
32  ------------------------------------------------------------------------------  ------------------------------------------------------------------------------
33    </description>    </description>
34    
35    <target name="usage" description="Advises user to run with -projecthelp">    <!-- Display main targets by running 'ant -projecthelp' -->
36      <echo>Run "ant -projecthelp" for full usage information.</echo>    <target name="usage">
37        <java classname="org.apache.tools.ant.Main">
38          <arg value="-projecthelp" />
39        </java>
40    </target>    </target>
41    
42      <!-- HOWTO printf debug: <echo message="prop=${prop}"/> -->
43    
44    <!-- User-specific settings -->    <!-- User-specific settings -->
45    <property file="user.properties"/>    <property file="user.properties"/>
46    
47    
48    <!-- Compilation options -->    <!-- Compilation options -->
49    <property name="build.sourcelevel"    value="1.6"/>    <property name="build.sourcelevel"    value="6"/>
50    <property name="build.debug"          value="true"/>    <property name="build.debug"          value="true"/>
51    <property name="build.debuglevel"     value="source,lines,vars"/>    <property name="build.debuglevel"     value="source,lines,vars"/>
52    <property name="build.deprecation"    value="false"/>    <property name="build.deprecation"    value="false"/>
53      <property name="build.javadoc.access" value="protected"/>
54    
55      <!-- Tck options; see JSR166TestCase.java
56       To profile a single tck test class:
57       ant -Djsr166.profileTests=true -Djsr166.profileThreshold=10 -Djsr166.tckTestClass=CompletableFutureTest tck
58       To stress test a single tck test class:
59       ant -Djsr166.tckTestClass=CountedCompleterTest -Djsr166.runsPerTest=100 tck
60      -->
61      <property name="jsr166.profileTests"     value="false"/>
62      <property name="jsr166.profileThreshold" value="100"/>
63      <property name="jsr166.runsPerTest"      value="1"/>
64      <property name="jsr166.tckTestClass"     value="JSR166TestCase"/>
65    
66    <!-- Build locations -->    <!-- Build locations -->
67    <property name="build.dir"                   location="build"/>    <property name="build.dir"                   location="build"/>
68    <property name="build.classes.dir"           location="${build.dir}/classes"/>    <property name="build.classes.dir"           location="${build.dir}/classes"/>
69    <property name="build.testcases.dir"         location="${build.dir}/testcases"/>    <property name="build.testcases.dir"         location="${build.dir}/testcases"/>
70    <property name="build.loops.dir"             location="${build.dir}/loops"/>    <property name="build.loops.dir"             location="${build.dir}/loops"/>
   <property name="build.lib.dir"               location="${build.dir}/lib"/>  
   <property name="build.javadocs.dir"          location="${build.dir}/javadocs"/>  
71    <property name="build.reports.dir"           location="${build.dir}/reports"/>    <property name="build.reports.dir"           location="${build.dir}/reports"/>
72    
73    <property name="build.4jdk7.dir"              location="${build.dir}/4jdk7"/>    <property name="build.4jdk7.dir"             location="${build.dir}/jsr166-4jdk7"/>
74    <property name="build.4jdk7.lib.dir"          location="${build.4jdk7.dir}"/>    <property name="build.4jdk7.classes.dir"     location="${build.4jdk7.dir}/classes"/>
75    <property name="build.4jdk7.classes.dir"      location="${build.4jdk7.dir}/classes"/>    <property name="build.4jdk7.tck.classes.dir" location="${build.4jdk7.dir}/tck-classes"/>
76    <property name="build.4jdk7.tck.classes.dir"  location="${build.4jdk7.dir}/tck/classes"/>    <property name="build.4jdk7.docs.dir"        location="${build.4jdk7.dir}/docs"/>
   <property name="build.4jdk7.docs.dir"         location="${build.4jdk7.dir}/docs"/>  
77    
78    <property name="build.jsr166x.dir"           location="${build.dir}/jsr166x"/>    <property name="build.jsr166x.dir"           location="${build.dir}/jsr166x"/>
   <property name="build.jsr166xlib.dir"        location="${build.dir}/jsr166xlib"/>  
   <property name="build.jsr166xjavadocs.dir"   location="${build.dir}/jsr166xjavadocs"/>  
   
79    <property name="build.jsr166y.dir"           location="${build.dir}/jsr166y"/>    <property name="build.jsr166y.dir"           location="${build.dir}/jsr166y"/>
   <property name="build.jsr166ylib.dir"        location="${build.dir}/jsr166ylib"/>  
   <property name="build.jsr166yjavadocs.dir"   location="${build.dir}/jsr166yjavadocs"/>  
   
80    <property name="build.jsr166e.dir"           location="${build.dir}/jsr166e"/>    <property name="build.jsr166e.dir"           location="${build.dir}/jsr166e"/>
   <property name="build.jsr166elib.dir"        location="${build.dir}/jsr166elib"/>  
   <property name="build.jsr166ejavadocs.dir"   location="${build.dir}/jsr166ejavadocs"/>  
   
81    <property name="build.extra166y.dir"         location="${build.dir}/extra166y"/>    <property name="build.extra166y.dir"         location="${build.dir}/extra166y"/>
   <property name="build.extra166ylib.dir"      location="${build.dir}/extra166ylib"/>  
   <property name="build.extra166yjavadocs.dir" location="${build.dir}/extra166yjavadocs"/>  
82    
83    <!-- JDK binary locations -->    <property name="build.jsr166x.classes.dir"   location="${build.jsr166x.dir}/classes"/>
84      <property name="build.jsr166y.classes.dir"   location="${build.jsr166y.dir}/classes"/>
85      <property name="build.jsr166e.classes.dir"   location="${build.jsr166e.dir}/classes"/>
86      <property name="build.extra166y.classes.dir" location="${build.extra166y.dir}/classes"/>
87    
88      <!-- JDK locations -->
89    <property name="jdks.home"  location="${user.home}/jdk"/>    <property name="jdks.home"  location="${user.home}/jdk"/>
90    
91    <macrodef name="defjdklocations">    <macrodef name="defjdklocations">
# Line 81  Line 95 
95      <property name="java@{v}"       location="${jdk@{v}.home}/bin/java"/>      <property name="java@{v}"       location="${jdk@{v}.home}/bin/java"/>
96      <property name="javac@{v}"      location="${jdk@{v}.home}/bin/javac"/>      <property name="javac@{v}"      location="${jdk@{v}.home}/bin/javac"/>
97      <property name="javadoc@{v}"    location="${jdk@{v}.home}/bin/javadoc"/>      <property name="javadoc@{v}"    location="${jdk@{v}.home}/bin/javadoc"/>
98      <property name="bootdir@{v}"    location="${jdk@{v}.home}/jre/lib"/>      <local name="have.java.base"/>
99      <property name="jdk@{v}src.dir" location="${jdks.home}/src/jdk@{v}/jdk/src/share/classes"/>      <available property="have.java.base"
100      <property name="bootclasspath@{v}"        file="${jdks.home}/src/jdk@{v}/jdk/src/java.base/share/classes" type="dir"/>
101       value="${bootdir@{v}}/resources.jar:${bootdir@{v}}/rt.jar:${bootdir@{v}}/jsse.jar:${bootdir@{v}}/jce.jar:${bootdir@{v}}/:${bootdir@{v}}/charsets.jar"/>      <property name="jdk@{v}src.dir" location="${jdks.home}/src/jdk@{v}/jdk/src/java.base/share/classes"
102          if:set="have.java.base"/>
103        <property name="jdk@{v}src.dir" location="${jdks.home}/src/jdk@{v}/jdk/src/share/classes"
104          unless:set="have.java.base"/>
105        <local name="boot.jar.dir"/>
106        <property name="boot.jar.dir"   location="${jdk@{v}.home}/jre/lib"/>
107        <path id="bootclasspath@{v}">
108          <pathelement path="${boot.jar.dir}/resources.jar"/>
109          <pathelement path="${boot.jar.dir}/rt.jar"/>
110          <pathelement path="${boot.jar.dir}/jsse.jar"/>
111          <pathelement path="${boot.jar.dir}/jce.jar"/>
112          <pathelement path="${boot.jar.dir}/charsets.jar"/>
113        </path>
114        <property name="bootclasspath@{v}" value="${toString:bootclasspath@{v}}"/>
115      </sequential>      </sequential>
116    </macrodef>    </macrodef>
117    
118    <defjdklocations v="6"/>    <macrodef name="mirror-dir">
119    <defjdklocations v="7"/>      <attribute name="src"/>
120    <defjdklocations v="8"/>      <attribute name="dst"/>
   
   <macrodef name="run-tck-tests">  
     <attribute name="jvm"/>  
     <attribute name="tck.classes"/>  
     <attribute name="product.jar" default="${product.jar}"/>  
     <attribute name="jvmflags" default=""/>  
121      <sequential>      <sequential>
122      <java classname="JSR166TestCase"      <delete dir="@{dst}"/>
123            jvm="@{jvm}" fork="true">      <mkdir dir="@{dst}"/>
124          <jvmarg value="-Xbootclasspath/p:@{product.jar}"/>      <copy todir="@{dst}" preservelastmodified="true">
125          <jvmarg line="@{jvmflags}"/>        <fileset dir="@{src}"/>
126          <classpath>      </copy>
           <pathelement location="${junit.jar}"/>  
           <pathelement location="@{tck.classes}"/>  
         </classpath>  
     </java>  
127      </sequential>      </sequential>
128    </macrodef>    </macrodef>
129    
130      <defjdklocations v="6"/>
131      <defjdklocations v="7"/>
132      <defjdklocations v="8"/>
133      <defjdklocations v="9"/>
134    
135    <!-- Source locations -->    <!-- Source locations -->
136    <property name="src.dir"              location="${basedir}/src/main"/>    <property name="src.dir"              location="${basedir}/src/main"/>
137    <property name="test.src.dir"         location="${basedir}/src/test"/>    <property name="test.src.dir"         location="${basedir}/src/test"/>
138    <property name="loops.src.dir"        location="${basedir}/src/loops"/>    <property name="loops.src.dir"        location="${basedir}/src/loops"/>
139    <property name="tck.src.dir"          location="${test.src.dir}/tck"/>    <property name="tck.src.dir"          location="${test.src.dir}/tck"/>
140    <property name="jtreg.src.dir"        location="${test.src.dir}/jtreg"/>    <property name="jtreg7.src.dir"       location="${test.src.dir}/jtreg-jdk7"/>
141      <property name="jtreg8.src.dir"       location="${test.src.dir}/jtreg"/>
142      <property name="jtreg9.src.dir"       location="${test.src.dir}/jtreg"/>
143      <property name="jtreg.src.dir"        location="${jtreg9.src.dir}"/>
144    <property name="lib.dir"              location="${basedir}/lib"/>    <property name="lib.dir"              location="${basedir}/lib"/>
145    <property name="dist.dir"             location="${basedir}/dist"/>    <property name="dist.dir"             location="${basedir}/dist"/>
146    <property name="topsrc.dir"           location="${basedir}/src"/>    <property name="topsrc.dir"           location="${basedir}/src"/>
# Line 124  Line 149 
149    <property name="jsr166ysrc.dir"       location="${topsrc.dir}/jsr166y"/>    <property name="jsr166ysrc.dir"       location="${topsrc.dir}/jsr166y"/>
150    <property name="jsr166esrc.dir"       location="${topsrc.dir}/jsr166e"/>    <property name="jsr166esrc.dir"       location="${topsrc.dir}/jsr166e"/>
151    <property name="extra166ysrc.dir"     location="${topsrc.dir}/extra166y"/>    <property name="extra166ysrc.dir"     location="${topsrc.dir}/extra166y"/>
   <property name="jdksrc.dir"           location="/home/dl/1.6.0/j2se/martin/j2se/src/share/classes"/>  
152    
153    <!-- Distribution locations -->    <!-- Javadoc locations -->
154    <property name="dist.javadocs.dir"           location="${dist.dir}/docs"/>    <property name="docs.dir"          location="${build.dir}/docs"/>
155    <property name="dist.4jdk7.docs.dir"         location="${dist.dir}/jsr166-4jdk7docs"/>    <property name="4jdk7docs.dir"     location="${build.4jdk7.dir}/docs"/>
156    <property name="dist.jsr166xjavadocs.dir"    location="${dist.dir}/jsr166xdocs"/>    <property name="jsr166xdocs.dir"   location="${build.jsr166x.dir}/docs"/>
157    <property name="dist.jsr166yjavadocs.dir"    location="${dist.dir}/jsr166ydocs"/>    <property name="jsr166ydocs.dir"   location="${build.jsr166y.dir}/docs"/>
158    <property name="dist.jsr166ejavadocs.dir"    location="${dist.dir}/jsr166edocs"/>    <property name="jsr166edocs.dir"   location="${build.jsr166e.dir}/docs"/>
159    <property name="dist.extra166yjavadocs.dir"  location="${dist.dir}/extra166ydocs"/>    <property name="extra166ydocs.dir" location="${build.extra166y.dir}/docs"/>
160    
161      <property name="dist.docs.dir"          location="${dist.dir}/docs"/>
162      <property name="dist.4jdk7docs.dir"     location="${dist.dir}/jsr166-4jdk7docs"/>
163      <property name="dist.jsr166xdocs.dir"   location="${dist.dir}/jsr166xdocs"/>
164      <property name="dist.jsr166ydocs.dir"   location="${dist.dir}/jsr166ydocs"/>
165      <property name="dist.jsr166edocs.dir"   location="${dist.dir}/jsr166edocs"/>
166      <property name="dist.extra166ydocs.dir" location="${dist.dir}/extra166ydocs"/>
167    
168    <!-- Jar locations -->    <!-- Jar locations -->
169    <property name="product.jar"          location="${build.lib.dir}/jsr166.jar"/>    <property name="product.jar"      location="${build.dir}/jsr166.jar"/>
170    <property name="4jdk7product.jar"     location="${build.4jdk7.lib.dir}/jsr166-4jdk7.jar"/>    <property name="4jdk7product.jar" location="${build.4jdk7.dir}/jsr166-4jdk7.jar"/>
171    <property name="jsr166xproduct.jar"   location="${build.jsr166xlib.dir}/jsr166x.jar"/>    <property name="jsr166x.jar"      location="${build.jsr166x.dir}/jsr166x.jar"/>
172    <property name="jsr166yproduct.jar"   location="${build.jsr166ylib.dir}/jsr166y.jar"/>    <property name="jsr166y.jar"      location="${build.jsr166y.dir}/jsr166y.jar"/>
173    <property name="jsr166eproduct.jar"   location="${build.jsr166elib.dir}/jsr166e.jar"/>    <property name="jsr166e.jar"      location="${build.jsr166e.dir}/jsr166e.jar"/>
174    <property name="extra166yproduct.jar" location="${build.extra166ylib.dir}/extra166y.jar"/>    <property name="extra166y.jar"    location="${build.extra166y.dir}/extra166y.jar"/>
175    <property name="junit.jar"            location="${lib.dir}/junit.jar"/>    <property name="junit.jar"        location="${lib.dir}/junit.jar"/>
176    
177    <!-- Bootclasspath argument -->    <!-- Canonical location of jdk docs root, to use with javadoc -Xdocrootparent flag -->
178    <property name="bootclasspath.args"   value="-Xbootclasspath/p:${product.jar}"/>    <property name="java5.docroot.url"      value="http://docs.oracle.com/javase/1.5.0/docs"/>
179      <property name="java6.docroot.url"      value="http://docs.oracle.com/javase/6/docs"/>
180      <property name="java7.docroot.url"      value="http://docs.oracle.com/javase/7/docs"/>
181      <property name="java8.docroot.url"      value="http://docs.oracle.com/javase/8/docs"/>
182      <!-- The expected canonical location does not yet exist as of 2014-07 -->
183      <!-- <property name="java9.docroot.url" value="http://docs.oracle.com/javase/9/docs"/> -->
184      <property name="java9.docroot.url"      value="http://download.java.net/jdk9/docs"/>
185      <!-- Default jdk doc location (latest stable release seems best) -->
186      <property name="java.docroot.url"       value="${java8.docroot.url}"/>
187    
188    <!-- Canonical location of jdk API docs, to use with javadoc link attribute -->    <!-- Canonical location of jdk API docs, to use with javadoc link attribute -->
189    <property name="jdkapi5docs.url"      value="http://docs.oracle.com/javase/1.5.0/docs/api/"/>    <property name="java5.api.url"      value="${java5.docroot.url}/api/"/>
190    <property name="jdkapi6docs.url"      value="http://docs.oracle.com/javase/6/docs/api/"/>    <property name="java6.api.url"      value="${java6.docroot.url}/api/"/>
191    <property name="jdkapi7docs.url"      value="http://docs.oracle.com/javase/7/docs/api/"/>    <property name="java7.api.url"      value="${java7.docroot.url}/api/"/>
192      <property name="java8.api.url"      value="${java8.docroot.url}/api/"/>
193    <property name="jdkapi8docs.url"      value="http://download.java.net/jdk8/docs/api/"/>    <property name="java9.api.url"      value="${java9.docroot.url}/api/"/>
194    <!-- The below does not yet exist as of 2012-11 -->    <property name="java.api.url"       value="${java.docroot.url}/api/"/>
195    <!-- <property name="jdkapi8docs.url" value="http://docs.oracle.com/javase/8/docs/api/"/> -->  
196    <property name="jdkapidocs.url"       value="${jdkapi7docs.url}"/>    <!-- Define the "jtreg" task -->
197      <!-- See the docs in "jtreg -onlineHelp" -->
198      <taskdef name="jtreg" classname="com.sun.javatest.regtest.Main$$Ant"
199               classpath="${lib.dir}/jtreg.jar" />
200    
201    <!-- Test classpath -->    <!-- Test classpath -->
202    <path id="test.classpath">    <path id="test.classpath">
# Line 162  Line 204 
204      <pathelement location="${junit.jar}"/>      <pathelement location="${junit.jar}"/>
205    </path>    </path>
206    
207      <macrodef name="run-tck-tests">
208        <attribute name="tck.src.dir" default="${tck.src.dir}"/>
209        <attribute name="target"/>
210        <attribute name="compile-target" default="@{target}"/>
211        <attribute name="workdir"/>
212        <attribute name="classes"/>
213        <attribute name="jvmflags" default="-ea -esa -Djsr166.testImplementationDetails=true"/>
214        <element name="javac-elements" optional="true"/>
215        <sequential>
216    
217        <mkdir dir="@{workdir}/tck-classes"/>
218    
219        <javac srcdir="@{tck.src.dir}"
220               destdir="@{workdir}/tck-classes"
221               debug="${build.debug}"
222               debuglevel="${build.debuglevel}"
223               deprecation="${build.deprecation}"
224               source="@{compile-target}"
225               target="@{compile-target}"
226               classpath="${junit.jar}"
227               includeAntRuntime="false"
228               includeJavaRuntime="false"
229               executable="${javac@{compile-target}}"
230               fork="true">
231    
232          <include name="*.java"/>
233          <compilerarg value="-XDignore.symbol.file=true"/>
234          <compilerarg value="-Xlint:all,-unchecked,-rawtypes,-serial,-deprecation"/>
235          <compilerarg value="-Xbootclasspath/p:@{classes}"/>
236          <compilerarg line="${build.args}"/>
237          <javac-elements/>
238    
239        </javac>
240    
241        <java classname="${jsr166.tckTestClass}"
242              failonerror="true"
243              jvm="${java@{target}}"
244              fork="true">
245            <jvmarg value="-Xbootclasspath/p:@{classes}"/>
246            <jvmarg line="@{jvmflags}"/>
247    
248            <!-- ant -Djava.util.concurrent.ForkJoinPool.common.parallelism=1 tck -->
249            <syspropertyset id="java.util.concurrent.ForkJoinPool-properties">
250              <propertyref prefix="java.util.concurrent.ForkJoinPool"/>
251            </syspropertyset>
252    
253            <sysproperty key="jsr166.profileTests"     value="${jsr166.profileTests}"/>
254            <sysproperty key="jsr166.profileThreshold" value="${jsr166.profileThreshold}"/>
255            <sysproperty key="jsr166.runsPerTest"      value="${jsr166.runsPerTest}"/>
256            <classpath>
257              <pathelement location="${junit.jar}"/>
258              <pathelement location="@{workdir}/tck-classes"/>
259            </classpath>
260        </java>
261    
262        </sequential>
263      </macrodef>
264    
265      <!-- Define jtreg test sets for different jdk versions -->
266      <fileset dir="${jtreg9.src.dir}">
267        <patternset id="jdk9.jtreg.tests">
268          <include name="**/*.java"/>
269        </patternset>
270      </fileset>
271    
272      <fileset dir="${jtreg8.src.dir}">
273        <patternset id="jdk8.jtreg.tests">
274          <include name="**/*.java"/>
275          <exclude name="**/SpliteratorCharacteristics.java"/>
276          <!-- https://bugs.openjdk.java.net/browse/JDK-6842353 -->
277          <exclude name="**/GCDuringIteration.java"/>
278        </patternset>
279      </fileset>
280    
281      <fileset dir="${jtreg7.src.dir}">
282        <patternset id="jdk7.jtreg.tests">
283          <include name="**/*.java"/>
284        </patternset>
285      </fileset>
286    
287      <macrodef name="run-jtreg-tests">
288        <!-- ant -Djtreg9.src.dir=src/test/jtreg/util/concurrent/CompletableFuture jtreg -->
289        <attribute name="source" default="7"/>
290        <attribute name="target"/>
291        <attribute name="workdir"/>
292        <attribute name="classes"/>
293        <attribute name="jtregflags" default=""/>
294        <sequential>
295        <delete dir="@{workdir}/JTwork"   quiet="true"/>
296        <delete dir="@{workdir}/JTreport" quiet="true"/>
297        <mkdir dir="@{workdir}/JTwork/scratch"/>
298        <mkdir dir="@{workdir}/JTreport"/>
299        <jtreg dir="${jtreg@{target}.src.dir}"
300               jdk="${jdk@{target}.home}"
301               workDir="@{workdir}/JTwork"
302               reportDir="@{workdir}/JTreport">
303          <patternset refid="jdk@{target}.jtreg.tests"/>
304          <arg value="-Xbootclasspath/p:@{classes}"/>
305          <arg value="-agentvm"/>
306          <arg value="-v:nopass,fail"/>
307          <arg value="-vmoptions:-esa -ea"/>
308          <arg value="-automatic"/>
309          <arg value="-k:!ignore"/>
310          <arg line="@{jtregflags}"/>
311        </jtreg>
312        </sequential>
313      </macrodef>
314    
315    <!-- ALoops classpath -->    <!-- ALoops classpath -->
316    <path id="loops.classpath">    <path id="loops.classpath">
317      <pathelement location="${build.loops.dir}"/>      <pathelement location="${build.loops.dir}"/>
318    </path>    </path>
319    
320      <!-- Support @jls tag, used in jdk8+ javadoc -->
321      <property name="javadoc.jls.cite" value="The Java&amp;trade; Language Specification"/>
322      <property name="javadoc.jls.option" value="jls:a:See &lt;cite&gt;${javadoc.jls.cite}&lt;/cite&gt;:"/>
323    
324    <!-- Main targets -->    <!-- Main targets -->
325    
326      <property name="build.main.java.version" value="9"/>
327      <property name="build.main.javac" value="${javac9}"/>
328    
329    <target name="dists"    <target name="dists"
330            depends="dist, jsr166xdist, jsr166ydist,jsr166edist,  extra166ydist"            depends="dist, 4jdk7dist, jsr166edist, jsr166ydist, extra166ydist, jsr166xdist"
331            description="Builds all public jars and docs"/>            description="Builds all public jars and docs"/>
332    
333    <target name="compile"    <target name="compile"
334            depends="init, configure-compiler"            depends="configure-compiler"
335            description="Compiles main sources to build folder">            description="Compiles src/main sources to build dir">
336    
337      <mkdir dir="${build.classes.dir}"/>      <mkdir dir="${build.classes.dir}"/>
338    
339      <javac srcdir="${src.dir}"      <javac srcdir="${src.dir}"
340            destdir="${build.classes.dir}"             destdir="${build.classes.dir}"
341              debug="${build.debug}"             debug="${build.debug}"
342         debuglevel="${build.debuglevel}"             debuglevel="${build.debuglevel}"
343        deprecation="${build.deprecation}"             deprecation="${build.deprecation}"
344             source="${build.sourcelevel}"             classpath=""
345               fork="true">             includeAntRuntime="false"
346               includeJavaRuntime="false"
347               executable="${build.main.javac}"
348               fork="true">
349    
350        <include name="**/*.java"/>        <include name="**/*.java"/>
351          <compilerarg value="-Xprefer:source"/>
352        <compilerarg value="-XDignore.symbol.file=true"/>        <compilerarg value="-XDignore.symbol.file=true"/>
353          <compilerarg value="-Xlint:all"/>
354  <!--        <compilerarg value="-Werror"/>
355        <exclude name="java/lang/**"/>        <compilerarg value="-Xdoclint:all/protected"/>
356          <compilerarg line="-Xmaxerrs 1000 -Xmaxwarns 1000"/>
357        <compilerarg line="${build.args}"/>        <compilerarg line="${build.args}"/>
       <compilerarg line="-Xlint -Xmaxwarns 1000"/>  
 -->  
358    
359      </javac>      </javac>
   
360    </target>    </target>
361    
362    
   
363    <target name="jar"    <target name="jar"
364            depends="compile"            depends="compile"
365            description="Builds library jar from compiled sources">            description="Builds library jar from compiled sources">
366    
     <mkdir dir="${build.lib.dir}"/>  
   
367      <jar destfile="${product.jar}">      <jar destfile="${product.jar}">
368        <fileset dir="${build.classes.dir}"/>        <fileset dir="${build.classes.dir}"/>
369          <manifest>
370            <attribute name="Built-By" value="${user.name}"/>
371            <attribute name="Implementation-Vendor" value="JCP JSR-166 Expert Group."/>
372          </manifest>
373      </jar>      </jar>
   
374    </target>    </target>
375    
376    
   
   <target name="test"  
           depends="init, configure-tests, report-tests"  
           description="Runs all tests (requires JUnit 3.8.1 in ${ant.home}/lib)" />  
   
   
   
377    <target name="docs"    <target name="docs"
378            description="Builds javadocs with custom tags to build folder">            description="Builds javadocs for src/main to dist dir">
379    
380      <delete dir="${build.javadocs.dir}"/>      <delete dir="${docs.dir}"/>
381      <mkdir dir="${build.javadocs.dir}"/>      <mkdir dir="${docs.dir}"/>
382    
383      <!-- the packagenames="none" hack below prevents scanning the -->      <!-- the packagenames="none" hack below prevents scanning the -->
384      <!-- sourcepath for packages -->      <!-- sourcepath for packages -->
385    
386      <javadoc destdir="${build.javadocs.dir}"      <javadoc destdir="${docs.dir}"
387               packagenames="none"               packagenames="none"
388               link="${jdkapidocs.url}"               link="${java9.api.url}"
389               overview="${src.dir}/intro.html"               overview="${src.dir}/intro.html"
390               sourcepath="${src.dir}:${jdksrc.dir}"               access="${build.javadoc.access}"
391               additionalparam="-XDignore.symbol.file=true" >               sourcepath="${src.dir}:${jdk9src.dir}"
392                 classpath=""
393                 executable="${javadoc9}">
394        <fileset dir="${src.dir}" defaultexcludes="yes">        <fileset dir="${src.dir}" defaultexcludes="yes">
395          <include name="**/*.java"/>          <include name="**/*.java"/>
396        </fileset>        </fileset>
397          <arg line="-Xdocrootparent ${java9.docroot.url}"/>
398          <arg line="-Xmaxerrs 1000 -Xmaxwarns 1000"/>
399          <arg value="-XDignore.symbol.file=true"/>
400          <arg value="-tag"/>
401          <arg value="${javadoc.jls.option}"/>
402          <arg value="-tag"/>
403          <arg value="apiNote:a:&lt;em&gt;API Note:&lt;/em&gt;"/>
404          <arg value="-tag"/>
405          <arg value="implSpec:a:&lt;em&gt;Implementation Requirements:&lt;/em&gt;"/>
406          <arg value="-tag"/>
407          <arg value="implNote:a:&lt;em&gt;Implementation Note:&lt;/em&gt;"/>
408      </javadoc>      </javadoc>
   
409    </target>    </target>
410    
411    
   
412    <target name="dist"    <target name="dist"
413            depends="init, dist-clean, dist-jar, dist-docs"            depends="dist-clean, dist-jar, dist-docs"
414            description="Puts all distributable products in single hierarchy"/>            description="Puts all distributable products in single hierarchy"/>
415    
416    
# Line 266  Line 428 
428        <exclude name="src/emulation/**"/>        <exclude name="src/emulation/**"/>
429        <exclude name="**/SyntaxTest.java"/>        <exclude name="**/SyntaxTest.java"/>
430        <exclude name="**/SuperfluousAbstract.java"/>        <exclude name="**/SuperfluousAbstract.java"/>
431          <manifest>
432            <attribute name="Built-By" value="${user.name}"/>
433            <attribute name="Implementation-Vendor" value="JCP JSR-166 Expert Group."/>
434          </manifest>
435      </jar>      </jar>
   
436    </target>    </target>
437    
438    
   
439    <target name="clean"    <target name="clean"
440            description="Removes all build products">            description="Removes all build products">
441    
442      <delete dir="${build.dir}"/>      <delete dir="${build.dir}"/>
     <delete dir="${build.classes.dir}"/>  
     <delete dir="${build.lib.dir}"/>  
443    
444    </target>    </target>
445    
446    
   
447    <target name="dist-clean"    <target name="dist-clean"
448            description="Removes all build and distribution products">            description="Removes all build and distribution products">
449    
450        <delete dir="${build.dir}"/>
451      <delete dir="${dist.dir}"/>      <delete dir="${dist.dir}"/>
452    
453    </target>    </target>
454    
455    
   
   <target name="dist-docs"  
           description="Builds javadocs without custom tags to dist folder">  
   
     <delete dir="${dist.javadocs.dir}"/>  
     <mkdir dir="${dist.javadocs.dir}"/>  
   
     <!-- the packagenames="none" hack below prevents scanning the -->  
     <!-- sourcepath for packages -->  
   
     <javadoc destdir="${dist.javadocs.dir}"  
              packagenames="none"  
              link="${jdkapidocs.url}"  
              overview="${src.dir}/intro.html"  
              sourcepath="${src.dir}:${jdksrc.dir}"  
              additionalparam="-XDignore.symbol.file=true" >  
       <fileset dir="${src.dir}" defaultexcludes="yes">  
         <include name="**/*.java"/>  
       </fileset>  
     </javadoc>  
   
   </target>  
   
   
   
   <!-- Internal targets -->  
   
   
   <target name="init">  
   
     <!-- Version is kept in a separate file -->  
     <loadfile property="version" srcFile="version.properties"/>  
     <echo>Building JSR-166 version ${version}</echo>  
     <echo>java.home is ${java.home}</echo>  
   
   </target>  
   
   
456    <target name="dist-jar"    <target name="dist-jar"
457            depends="clean, jar">            depends="clean, jar">
   
458      <copy file="${product.jar}" todir="${dist.dir}"/>      <copy file="${product.jar}" todir="${dist.dir}"/>
   
459    </target>    </target>
460    
461      <target name="dist-docs"
462    <target name="compile-tests"            depends="clean, docs">
463            depends="jar">      <mirror-dir src="${docs.dir}" dst="${dist.docs.dir}"/>
   
     <mkdir dir="${build.testcases.dir}"/>  
   
     <javac srcdir="${tck.src.dir}"  
           destdir="${build.testcases.dir}"  
             debug="${build.debug}"  
        debuglevel="${build.debuglevel}"  
       deprecation="${build.deprecation}"  
            source="${build.sourcelevel}"  
              fork="true">  
   
       <compilerarg value="${bootclasspath.args}"/>  
       <compilerarg line="${build.args}"/>  
       <compilerarg value="-XDignore.symbol.file=true"/>  
   
       <classpath refid="test.classpath"/>  
   
     </javac>  
   
     <javac srcdir="${test.src.dir}"  
           destdir="${build.testcases.dir}"  
             debug="${build.debug}"  
        debuglevel="${build.debuglevel}"  
       deprecation="${build.deprecation}"  
            source="${build.sourcelevel}"  
              fork="true">  
   
       <include name="jsr166/test/**"/>  
   
       <compilerarg value="${bootclasspath.args}"/>  
       <compilerarg line="${build.args}"/>  
       <compilerarg value="-XDignore.symbol.file=true"/>  
   
       <classpath refid="test.classpath"/>  
   
     </javac>  
   
 <!--  
     <javac srcdir="${jtreg.src.dir}"  
           destdir="${build.testcases.dir}"  
             debug="${build.debug}"  
        debuglevel="${build.debuglevel}"  
       deprecation="${build.deprecation}"  
            source="${build.sourcelevel}"  
              fork="true">  
   
       <compilerarg value="${bootclasspath.args}"/>  
       <compilerarg line="${build.args}"/>  
       <compilerarg value="-XDignore.symbol.file=true"/>  
   
       <classpath refid="test.classpath"/>  
   
     </javac>  
 -->  
   
464    </target>    </target>
465    
466      <target name="tck"
467              depends="jar"
468              description="Runs tck tests for main directly">
469    
470    <target name="run-tests"      <run-tck-tests
471            depends="compile-tests">        target="${build.main.java.version}"
472          workdir="${build.dir}"
473      <!-- May be overridden by user.properties -->        classes="${product.jar}"/>
474      <property name="testcase" value="*"/>    </target>
475    
476      <mkdir dir="${build.reports.dir}"/>    <target name="tck-parallelism-1"
477              description="Runs tck with given common pool parallelism">
478      <junit printsummary="true"      <antcall target="tck">
479               showoutput="true"        <param name="java.util.concurrent.ForkJoinPool.common.parallelism" value="1"/>
480            errorProperty="junit.failed"      </antcall>
481          failureProperty="junit.failed"    </target>
482                      dir="${build.reports.dir}"  
483                     fork="true">    <target name="tck-parallelism-0"
484              description="Runs tck with given common pool parallelism">
485        <jvmarg value="${bootclasspath.args}"/>      <antcall target="tck">
486        <jvmarg value="-server"/>        <param name="java.util.concurrent.ForkJoinPool.common.parallelism" value="0"/>
487        <jvmarg value="-showversion"/>      </antcall>
488      </target>
489        <classpath refid="test.classpath"/>  
490      <target name="jtreg"
491              depends="jar"
492              description="Runs jtreg tests for main using the jtreg ant task">
493        <run-jtreg-tests
494           target="${build.main.java.version}"
495           workdir="${build.dir}"
496           classes="${product.jar}"/>
497      </target>
498    
499        <formatter type="xml"/>    <target name="test"
500              depends="tck, tck-parallelism-1, jtreg"
501              description="Runs tck and jtreg tests for main">
502      </target>
503    
504        <batchtest todir="${build.reports.dir}" unless="no.test.tck">    <target name="jtreg8" description="Runs jtreg tests with jdk8">
         <fileset dir="${tck.src.dir}">  
           <include name="**/${testcase}Test.java"/>  
         </fileset>  
       </batchtest>  
   
       <batchtest todir="${build.reports.dir}" if="do.test.old">  
         <fileset dir="${test.src.dir}">  
           <include name="jsr166/test/**/${testcase}Test.java"/>  
         </fileset>  
       </batchtest>  
   
 <!--  
       <batchtest todir="${build.reports.dir}" if="do.test.jtreg">  
         <fileset dir="${jtreg.src.dir}">  
           <include name="**/${testcase}Test.java"/>  
         </fileset>  
       </batchtest>  
 -->  
505    
506      </junit>      <antcall target="jtreg">
507          <param name="build.main.java.version" value="8"/>
508          <param name="build.main.javac" value="${javac8}"/>
509        </antcall>
510    
511    </target>    </target>
512    
513      <target name="test89"
514              description="Runs tck and jtreg tests for main for multiple java versions">
515    
516    <target name="report-tests"      <antcall target="clean"/>
517            depends="run-tests">      <antcall target="test">
518          <param name="build.main.java.version" value="8"/>
519      <!-- Sets junit.report.format to frames if redirection is present,        <param name="build.main.javac" value="${javac8}"/>
520           otherwise sets it to noframes. -->      </antcall>
     <available property="junit.report.format"  
                   value="frames"  
               classname="org.apache.xalan.lib.Redirect"  
     />  
     <property name="junit.report.format" value="noframes"/>  
   
     <junitreport todir="${build.reports.dir}">  
       <fileset dir="${build.reports.dir}">  
         <include name="TEST-*.xml"/>  
       </fileset>  
       <report format="${junit.report.format}" todir="${build.reports.dir}"  
       />  
     </junitreport>  
521    
522      <fail message="Test Cases Failed" if="junit.failed"/>      <antcall target="clean"/>
523        <antcall target="test">
524          <param name="build.main.java.version" value="9"/>
525          <param name="build.main.javac" value="${javac9}"/>
526        </antcall>
527    
528    </target>    </target>
529    
530    
531    
532    <target name="configure-compiler">    <target name="configure-compiler">
533        <fail message="ant version too old">
534          <condition>
535            <not> <antversion atleast="1.9.1"/> </not>
536          </condition>
537        </fail>
538    
539      <property name="unchecked.option" value="-Xlint:unchecked"/>      <property name="unchecked.option" value="-Xlint:unchecked"/>
540    
# Line 486  Line 551 
551    </target>    </target>
552    
553    
   <target name="configure-tests"  
        depends="configure-compiler">  
   
     <!-- junit.framework.Protectable is in JUnit 3.8.1 but not in 3.7 -->  
     <available property="junit.available"  
                classname="junit.framework.Protectable"/>  
   
     <!-- Xalan -->  
     <available property="xalan.available"  
                classname="org.apache.xalan.Version"/>  
   
   
     <!-- Ant 1.6beta and later don't need or want this check -->  
     <!--  
     <fail message="Need JUnit 3.8.1 in ${ant.home}${file.separator}lib to run tests"  
           unless="junit.available"/>  
   
     <fail message="Need Xalan 2.5.1 jar in ${ant.home}${file.separator}lib to run tests"  
           unless="xalan.available"/>  
     -->  
   
   </target>  
   
554    
555    <!-- Various demos and test programs -->    <!-- Various demos and test programs -->
556    
557    
558    <target name="loops" depends="init, configure-compiler"    <target name="loops" depends="configure-compiler"
559            description="Benchmark from Doug Lea's AQS paper">            description="Benchmark from Doug Lea's AQS paper">
560    
561      <mkdir dir="${build.loops.dir}"/>      <mkdir dir="${build.loops.dir}"/>
# Line 539  Line 581 
581    </target>    </target>
582    
583    
584    <!-- jsr166 4jdk7 -->    <target name="compile-test-loops" depends="jar"
585              description="compile all the perf tests in src/test/loops">
586    
587        <mkdir dir="${build.dir}/test/loops"/>
588    
589        <javac srcdir="${basedir}/src/test/loops"
590               destdir="${build.dir}/test/loops"
591               debug="${build.debug}"
592               debuglevel="${build.debuglevel}"
593               deprecation="${build.deprecation}"
594               includeAntRuntime="false"
595               includeJavaRuntime="false"
596               executable="${javac9}"
597               fork="true">
598    
599          <include name="*.java"/>
600          <compilerarg value="-XDignore.symbol.file=true"/>
601          <compilerarg value="-Xlint:all,-unchecked,-rawtypes,-serial"/>
602          <compilerarg value="-Xbootclasspath/p:${product.jar}"/>
603          <compilerarg line="${build.args}"/>
604    
605        </javac>
606    
607      </target>
608    
609    
610      <!-- jsr166 4jdk7 -->
611    
612    <target name="4jdk7compile"    <target name="4jdk7compile"
613            depends="configure-compiler"            depends="configure-compiler"
614            description="Compiles src/jdk7 sources, targeting jdk7">            description="Compiles src/jdk7 sources, targeting jdk7">
# Line 553  Line 620 
620             debug="${build.debug}"             debug="${build.debug}"
621             debuglevel="${build.debuglevel}"             debuglevel="${build.debuglevel}"
622             deprecation="${build.deprecation}"             deprecation="${build.deprecation}"
623             source="1.6"             source="6"
624             classpath=""             classpath=""
625             bootclasspath="${bootclasspath6}"             bootclasspath="${bootclasspath6}"
626             includeAntRuntime="false"             includeAntRuntime="false"
# Line 562  Line 629 
629             fork="true">             fork="true">
630    
631        <include name="**/*.java"/>        <include name="**/*.java"/>
632        <compilerarg line="${build.args}"/>        <compilerarg value="-Xprefer:source"/>
633        <compilerarg value="-XDignore.symbol.file=true"/>        <compilerarg value="-XDignore.symbol.file=true"/>
634        <compilerarg value="-Xlint:all"/>        <compilerarg value="-Xlint:all"/>
635          <compilerarg value="-Werror"/>
636          <compilerarg line="${build.args}"/>
637    
638      </javac>      </javac>
639      </target>
640    
641      <mkdir dir="${build.4jdk7.lib.dir}"/>    <target name="4jdk7doclint"
642              depends="configure-compiler"
643      <jar destfile="${4jdk7product.jar}" index="true">            description="Finds doclint warnings">
       <fileset dir="${build.4jdk7.classes.dir}"/>  
     </jar>  
644    
645      <mkdir dir="${build.4jdk7.tck.classes.dir}"/>      <mkdir dir="${build.4jdk7.classes.dir}"/>
646    
647      <javac srcdir="${tck.src.dir}"      <javac srcdir="${4jdk7src.dir}"
648             destdir="${build.4jdk7.tck.classes.dir}"             destdir="${build.4jdk7.classes.dir}"
649             debug="${build.debug}"             debug="${build.debug}"
650             debuglevel="${build.debuglevel}"             debuglevel="${build.debuglevel}"
651             deprecation="${build.deprecation}"             deprecation="${build.deprecation}"
652             source="1.6"             source="6"
653             classpath="${junit.jar}"             classpath=""
654             bootclasspath="${4jdk7product.jar}:${bootclasspath6}"             bootclasspath="${bootclasspath7}"
655             includeAntRuntime="false"             includeAntRuntime="false"
656             includeJavaRuntime="false"             includeJavaRuntime="false"
657             executable="${javac7}"             executable="${javac8}"
658             fork="true">             fork="true">
659    
660        <include name="**/*.java"/>        <include name="**/*.java"/>
661        <compilerarg line="${build.args}"/>        <compilerarg value="-Xprefer:source"/>
662        <compilerarg value="-XDignore.symbol.file=true"/>        <compilerarg value="-XDignore.symbol.file=true"/>
663        <compilerarg value="-Xlint:all,-unchecked,-rawtypes,-serial,-deprecation"/>        <compilerarg value="-Xlint:all"/>
664          <compilerarg value="-Xdoclint:all/protected"/>
665          <compilerarg line="${build.args}"/>
666    
667      </javac>      </javac>
668      </target>
669    
670    
671      <target name="4jdk7jar"
672              depends="4jdk7compile"
673              description="Builds library jar from compiled sources">
674    
675        <jar destfile="${4jdk7product.jar}">
676          <fileset dir="${build.4jdk7.classes.dir}"/>
677          <manifest>
678            <attribute name="Built-By" value="${user.name}"/>
679            <attribute name="Implementation-Vendor" value="JCP JSR-166 Expert Group."/>
680          </manifest>
681        </jar>
682    
683    </target>    </target>
684    
685    
686    <target name="4jdk7-test-tck"    <target name="4jdk7-tck"
687            depends="4jdk7compile"            depends="4jdk7jar"
688            description="Runs tck tests for jsr166-4jdk7 directly">            description="Runs tck tests for jsr166-4jdk7 directly">
689    
690      <run-tck-tests      <run-tck-tests
691        jvm="${java7}"        target="7"
692        tck.classes="${build.4jdk7.tck.classes.dir}"        workdir="${build.4jdk7.dir}"
693        product.jar="${4jdk7product.jar}"/>        classes="${4jdk7product.jar}">
694          <javac-elements>
695            <!-- JDK8+ test classes -->
696            <exclude name="*8Test.java"/>
697            <exclude name="*9Test.java"/>
698            <exclude name="*10Test.java"/>
699            <exclude name="DoubleAccumulatorTest.java"/>
700            <exclude name="DoubleAdderTest.java"/>
701            <exclude name="LongAccumulatorTest.java"/>
702            <exclude name="LongAdderTest.java"/>
703            <exclude name="CompletableFutureTest.java"/>
704            <exclude name="SplittableRandomTest.java"/>
705            <exclude name="StampedLockTest.java"/>
706            <exclude name="SubmissionPublisherTest.java"/>
707          </javac-elements>
708        </run-tck-tests>
709    </target>    </target>
710    
711    
712    <target name="4jdk7-test-tck-junit"    <target name="4jdk7-tck-junit"
713            depends="4jdk7compile"            depends="4jdk7compile"
714            description="Runs tck tests for jsr166-4jdk7 via junit task (experimental)">            description="Runs tck tests for jsr166-4jdk7 via junit task (experimental)">
715    
# Line 631  Line 731 
731    
732        <formatter type="brief"/>        <formatter type="brief"/>
733    
734        <test name="JSR166TestCase" haltonfailure="no">        <test name="${jsr166.tckTestClass}" haltonfailure="no">
735        </test>        </test>
736    
737      </junit>      </junit>
738    </target>    </target>
739    
740      <target name="4jdk7-jtreg"
741              depends="4jdk7jar"
742              description="Runs jtreg tests for jsr166-4jdk7 using the jtreg ant task">
743        <run-jtreg-tests
744           target="7"
745           workdir="${build.4jdk7.dir}"
746           classes="${4jdk7product.jar}"/>
747      </target>
748    
749    
750      <target name="4jdk7-test"
751              depends="4jdk7-tck, 4jdk7-jtreg"
752              description="Runs tck and jtreg tests for jsr166-4jdk7">
753      </target>
754    
755    
756    <target name="4jdk7docs"    <target name="4jdk7docs"
757            description="Builds javadocs with custom tags to build folder">            description="Builds javadocs for src/jdk7 to dist dir">
758    
759      <delete dir="${build.4jdk7.docs.dir}"/>      <delete dir="${4jdk7docs.dir}"/>
760      <mkdir dir="${build.4jdk7.docs.dir}"/>      <mkdir dir="${4jdk7docs.dir}"/>
761    
762      <javadoc destdir="${build.4jdk7.docs.dir}"      <javadoc destdir="${4jdk7docs.dir}"
763               packagenames="none"               packagenames="none"
764               link="${jdkapi7docs.url}"               link="${java7.api.url}"
765               overview="${4jdk7src.dir}/intro.html"               overview="${4jdk7src.dir}/intro.html"
766                 access="${build.javadoc.access}"
767               sourcepath="${4jdk7src.dir}:${jdk7src.dir}"               sourcepath="${4jdk7src.dir}:${jdk7src.dir}"
768               classpath=""               classpath=""
769               executable="${javadoc7}">               executable="${javadoc7}">
       <arg value="-XDignore.symbol.file=true"/>  
770        <fileset dir="${4jdk7src.dir}" defaultexcludes="yes">        <fileset dir="${4jdk7src.dir}" defaultexcludes="yes">
771          <include name="**/*.java"/>          <include name="**/*.java"/>
772        </fileset>        </fileset>
773          <arg line="-Xdocrootparent ${java7.docroot.url}"/>
774          <arg value="-XDignore.symbol.file=true"/>
775      </javadoc>      </javadoc>
   
776    </target>    </target>
777    
778    
779    <target name="4jdk7dist"    <target name="4jdk7dist"
780            depends="4jdk7dist-clean, 4jdk7dist-jar, 4jdk7dist-docs"            depends="4jdk7dist-jar, 4jdk7dist-docs"
781            description="Puts all distributable products in single hierarchy"/>            description="Puts all distributable products in single hierarchy"/>
782    
783    
   
784    <target name="4jdk7clean"    <target name="4jdk7clean"
785            description="Removes all build products">            description="Removes all 4jdk7 build products">
786    
787      <delete dir="${build.4jdk7.dir}"/>      <delete dir="${build.4jdk7.dir}"/>
788    
789    </target>    </target>
790    
791    
792      <target name="4jdk7dist-jar"
793    <target name="4jdk7dist-clean"            depends="4jdk7clean, 4jdk7jar">
794            description="Removes all build and distribution products">      <copy file="${4jdk7product.jar}" todir="${dist.dir}"/>
   
795    </target>    </target>
796    
   <target name="4jdk7dist-docs"  
           description="Builds javadocs without custom tags to dist folder">  
   
     <delete dir="${dist.4jdk7.docs.dir}"/>  
     <mkdir dir="${dist.4jdk7.docs.dir}"/>  
   
     <javadoc destdir="${dist.4jdk7.docs.dir}"  
              packagenames="none"  
              link="${jdkapi7docs.url}"  
              overview="${4jdk7src.dir}/intro.html"  
              sourcepath="${4jdk7src.dir}:${jdk7src.dir}"  
              classpath=""  
              executable="${javadoc7}">  
       <arg value="-XDignore.symbol.file=true"/>  
       <fileset dir="${4jdk7src.dir}" defaultexcludes="yes">  
         <include name="**/*.java"/>  
       </fileset>  
     </javadoc>  
797    
798      <target name="4jdk7dist-docs"
799              depends="4jdk7clean, 4jdk7docs">
800        <mirror-dir src="${4jdk7docs.dir}" dst="${dist.4jdk7docs.dir}"/>
801    </target>    </target>
802    
   <target name="4jdk7dist-jar"  
           depends="4jdk7clean, 4jdk7compile">  
   
     <copy file="${4jdk7product.jar}" todir="${dist.dir}"/>  
   
   </target>  
803    
804    <!-- jsr166x -->    <!-- jsr166x -->
805    
   
806    <target name="jsr166xcompile"    <target name="jsr166xcompile"
807            depends="init, configure-compiler"            depends="configure-compiler"
808            description="Compiles jsr166x sources">            description="Compiles jsr166x sources to build dir">
809    
810      <mkdir dir="${build.jsr166x.dir}"/>      <mkdir dir="${build.jsr166x.classes.dir}"/>
811    
812      <javac srcdir="${jsr166xsrc.dir}"      <javac srcdir="${topsrc.dir}"
813            destdir="${build.jsr166x.dir}"             destdir="${build.jsr166x.classes.dir}"
814              debug="${build.debug}"             debug="${build.debug}"
815         debuglevel="${build.debuglevel}"             debuglevel="${build.debuglevel}"
816        deprecation="${build.deprecation}"             deprecation="${build.deprecation}"
817             source="${build.sourcelevel}"             classpath=""
818               fork="true">             bootclasspath="${bootclasspath6}"
819               source="5"
820               includeAntRuntime="false"
821               includeJavaRuntime="false"
822               executable="${javac7}"
823               fork="true">
824    
825        <include name="**/*.java"/>        <include name="jsr166x/**/*.java"/>
       <compilerarg line="${build.args}"/>  
826        <compilerarg value="-XDignore.symbol.file=true"/>        <compilerarg value="-XDignore.symbol.file=true"/>
827          <compilerarg value="-Xlint:all,-unchecked,-rawtypes"/>
828          <compilerarg value="-Werror"/>
829          <compilerarg line="${build.args}"/>
830    
831      </javac>      </javac>
   
832    </target>    </target>
833    
834    
   
835    <target name="jsr166xjar"    <target name="jsr166xjar"
836            depends="jsr166xcompile"            depends="jsr166xcompile"
837            description="Builds library jar from compiled sources">            description="Builds library jar from compiled sources">
838    
839      <mkdir dir="${build.jsr166xlib.dir}"/>      <jar destfile="${jsr166x.jar}">
840          <fileset dir="${build.jsr166x.classes.dir}"/>
841      <jar destfile="${jsr166xproduct.jar}">        <manifest>
842        <fileset dir="${build.jsr166x.dir}"/>          <attribute name="Built-By" value="${user.name}"/>
843            <attribute name="Implementation-Vendor" value="JCP JSR-166 Expert Group."/>
844          </manifest>
845      </jar>      </jar>
846    
847    </target>    </target>
848    
849    
   
850    <target name="jsr166xdocs"    <target name="jsr166xdocs"
851            description="Builds javadocs with custom tags to build folder">            description="Builds javadocs to dist dir">
852    
853      <delete dir="${build.jsr166xjavadocs.dir}"/>      <delete dir="${jsr166xdocs.dir}"/>
854      <mkdir dir="${build.jsr166xjavadocs.dir}"/>      <mkdir dir="${jsr166xdocs.dir}"/>
855    
856      <javadoc destdir="${build.jsr166xjavadocs.dir}"      <javadoc destdir="${jsr166xdocs.dir}"
857               packagenames="jsr166x"               packagenames="jsr166x.*"
858               link="${jdkapidocs.url}"               link="${java.api.url}"
859               source="${build.sourcelevel}"               access="${build.javadoc.access}"
860               sourcepath="${topsrc.dir}:${jdksrc.dir}"               sourcepath="${topsrc.dir}:${jdk6src.dir}"
861               additionalparam="-XDignore.symbol.file=true" />               bootclasspath="${bootclasspath6}"
862                 source="5"
863                 executable="${javadoc7}">
864          <arg line="-Xdocrootparent ${java.docroot.url}"/>
865          <arg value="-XDignore.symbol.file=true"/>
866    
867        </javadoc>
868    </target>    </target>
869    
870    
871    <target name="jsr166xdist"    <target name="jsr166xdist"
872            depends="jsr166xdist-clean, jsr166xdist-jar, jsr166xdist-docs"            depends="jsr166xdist-jar, jsr166xdist-docs"
873            description="Puts all distributable products in single hierarchy"/>            description="Puts all distributable products in single hierarchy"/>
874    
875    
   
876    <target name="jsr166xclean"    <target name="jsr166xclean"
877            description="Removes all build products">            description="Removes all jsr166x build products">
878    
879      <delete dir="${build.jsr166x.dir}"/>      <delete dir="${build.jsr166x.dir}"/>
     <delete dir="${build.jsr166xlib.dir}"/>  
   
   </target>  
   
   
   
   <target name="jsr166xdist-clean"  
           description="Removes all build and distribution products">  
880    
881    </target>    </target>
882    
883    
   
   <target name="jsr166xdist-docs"  
           description="Builds javadocs without custom tags to dist folder">  
   
     <delete dir="${dist.jsr166xjavadocs.dir}"/>  
     <mkdir dir="${dist.jsr166xjavadocs.dir}"/>  
   
     <javadoc destdir="${dist.jsr166xjavadocs.dir}"  
              packagenames="jsr166x"  
              link="${jdkapidocs.url}"  
              source="${build.sourcelevel}"  
              sourcepath="${topsrc.dir}:${jdksrc.dir}"  
              additionalparam="-XDignore.symbol.file=true" />  
   
   </target>  
   
884    <target name="jsr166xdist-jar"    <target name="jsr166xdist-jar"
885            depends="jsr166xclean, jsr166xjar">            depends="jsr166xclean, jsr166xjar">
886        <copy file="${jsr166x.jar}" todir="${dist.dir}"/>
887      </target>
888    
889      <copy file="${jsr166xproduct.jar}" todir="${dist.dir}"/>    <target name="jsr166xdist-docs"
890              depends="jsr166xclean, jsr166xdocs">
891        <mirror-dir src="${jsr166xdocs.dir}" dst="${dist.jsr166xdocs.dir}"/>
892    </target>    </target>
893    
894    <!-- jsr166y -->    <!-- jsr166y -->
895    
896    
897    <target name="jsr166ycompile"    <target name="jsr166ycompile"
898            depends="init, configure-compiler"            depends="configure-compiler"
899            description="Compiles jsr166y sources">            description="Compiles jsr166y sources">
900    
901      <mkdir dir="${build.jsr166y.dir}"/>      <mkdir dir="${build.jsr166y.classes.dir}"/>
902    
903      <javac srcdir="${jsr166ysrc.dir}"      <javac srcdir="${topsrc.dir}"
904            destdir="${build.jsr166y.dir}"             destdir="${build.jsr166y.classes.dir}"
905              debug="${build.debug}"             debug="${build.debug}"
906         debuglevel="${build.debuglevel}"             debuglevel="${build.debuglevel}"
907        deprecation="${build.deprecation}"             deprecation="${build.deprecation}"
908             source="${build.sourcelevel}"             source="6"
909               fork="true">             classpath=""
910               bootclasspath="${bootclasspath6}"
911               includeAntRuntime="false"
912               includeJavaRuntime="false"
913               executable="${javac7}"
914               fork="true">
915    
916        <include name="**/*.java"/>        <include name="jsr166y/**/*.java"/>
       <compilerarg line="${build.args}"/>  
917        <compilerarg value="-XDignore.symbol.file=true"/>        <compilerarg value="-XDignore.symbol.file=true"/>
918        <compilerarg value="${bootclasspath.args}"/>        <compilerarg value="-Xlint:all"/>
919          <compilerarg value="-Werror"/>
920  <!--       <compilerarg line="-Xlint -Xmaxwarns 1000"/> -->        <compilerarg line="${build.args}"/>
921    
922      </javac>      </javac>
   
923    </target>    </target>
924    
925    
   
926    <target name="jsr166yjar"    <target name="jsr166yjar"
927            depends="jsr166ycompile"            depends="jsr166ycompile"
928            description="Builds library jar from compiled sources">            description="Builds library jar from compiled sources">
929    
930      <mkdir dir="${build.jsr166ylib.dir}"/>      <jar destfile="${jsr166y.jar}" index="true">
931          <fileset dir="${build.jsr166y.classes.dir}"/>
932      <jar destfile="${jsr166yproduct.jar}" index="true">        <manifest>
933        <fileset dir="${build.jsr166y.dir}"/>          <attribute name="Built-By" value="${user.name}"/>
934            <attribute name="Implementation-Vendor" value="JCP JSR-166 Expert Group."/>
935          </manifest>
936      </jar>      </jar>
937    
938    </target>    </target>
939    
940    
   
941    <target name="jsr166ydocs"    <target name="jsr166ydocs"
942            description="Builds javadocs with custom tags to build folder">            description="Builds javadocs to dist dir">
943    
944      <delete dir="${build.jsr166yjavadocs.dir}"/>      <delete dir="${jsr166ydocs.dir}"/>
945      <mkdir dir="${build.jsr166yjavadocs.dir}"/>      <mkdir dir="${jsr166ydocs.dir}"/>
946    
947      <javadoc destdir="${build.jsr166yjavadocs.dir}"      <javadoc destdir="${jsr166ydocs.dir}"
948               packagenames="jsr166y"               packagenames="jsr166y.*"
949               link="${jdkapidocs.url}"               link="${java.api.url}"
950               source="${build.sourcelevel}"               access="${build.javadoc.access}"
951               sourcepath="${topsrc.dir}:${jdksrc.dir}"               sourcepath="${topsrc.dir}:${jdk6src.dir}"
952               additionalparam="-XDignore.symbol.file=true" />               bootclasspath="${bootclasspath6}"
953                 source="6"
954                 executable="${javadoc7}">
955          <arg line="-Xdocrootparent ${java.docroot.url}"/>
956          <arg value="-XDignore.symbol.file=true"/>
957    
958        </javadoc>
959    </target>    </target>
960    
961    
962    <target name="jsr166ydist"    <target name="jsr166ydist"
963            depends="jsr166ydist-clean, jsr166ydist-jar, jsr166ydist-docs"            depends="jsr166ydist-jar, jsr166ydist-docs"
964            description="Puts all distributable products in single hierarchy"/>            description="Puts all distributable products in single hierarchy"/>
965    
966    
   
967    <target name="jsr166yclean"    <target name="jsr166yclean"
968            description="Removes all build products">            description="Removes all jsr166y build products">
969    
970      <delete dir="${build.jsr166y.dir}"/>      <delete dir="${build.jsr166y.dir}"/>
     <delete dir="${build.jsr166ylib.dir}"/>  
   
   </target>  
   
   
   
   <target name="jsr166ydist-clean"  
           description="Removes all build and distribution products">  
971    
972    </target>    </target>
973    
   <target name="jsr166ydist-docs"  
           description="Builds javadocs without custom tags to dist folder">  
   
     <delete dir="${dist.jsr166yjavadocs.dir}"/>  
     <mkdir dir="${dist.jsr166yjavadocs.dir}"/>  
   
     <javadoc destdir="${dist.jsr166yjavadocs.dir}"  
              packagenames="jsr166y"  
              link="${jdkapidocs.url}"  
              source="${build.sourcelevel}"  
              sourcepath="${topsrc.dir}:${jdksrc.dir}"  
              additionalparam="-XDignore.symbol.file=true" />  
   
   </target>  
974    
975    <target name="jsr166ydist-jar"    <target name="jsr166ydist-jar"
976            depends="jsr166yclean, jsr166yjar">            depends="jsr166yclean, jsr166yjar">
977        <copy file="${jsr166y.jar}" todir="${dist.dir}"/>
978      </target>
979    
980      <copy file="${jsr166yproduct.jar}" todir="${dist.dir}"/>    <target name="jsr166ydist-docs"
981              depends="jsr166yclean, jsr166ydocs">
982        <mirror-dir src="${jsr166ydocs.dir}" dst="${dist.jsr166ydocs.dir}"/>
983    </target>    </target>
984    
985    
# Line 918  Line 987 
987    
988    
989    <target name="extra166ycompile"    <target name="extra166ycompile"
990            depends="init, configure-compiler, jsr166ycompile"            depends="configure-compiler, jsr166yjar"
991            description="Compiles extra166y sources">            description="Compiles extra166y sources">
992    
993      <mkdir dir="${build.extra166y.dir}"/>      <mkdir dir="${build.extra166y.classes.dir}"/>
994    
995      <javac srcdir="${extra166ysrc.dir}"      <javac srcdir="${topsrc.dir}"
996            destdir="${build.extra166y.dir}"             destdir="${build.extra166y.classes.dir}"
997              debug="${build.debug}"             debug="${build.debug}"
998              classpath="${jsr166yproduct.jar}"             debuglevel="${build.debuglevel}"
999         debuglevel="${build.debuglevel}"             deprecation="${build.deprecation}"
1000        deprecation="${build.deprecation}"             bootclasspath="@{jsr166y.jar}:${bootclasspath6}"
1001             source="${build.sourcelevel}"             classpath=""
1002               fork="true">             source="6"
1003               includeAntRuntime="false"
1004               includeJavaRuntime="false"
1005               executable="${javac7}"
1006               fork="true">
1007    
1008        <include name="**/*.java"/>        <include name="extra166y/**/*.java"/>
       <compilerarg line="${build.args}"/>  
1009        <compilerarg value="-XDignore.symbol.file=true"/>        <compilerarg value="-XDignore.symbol.file=true"/>
1010        <compilerarg value="${bootclasspath.args}"/>        <compilerarg value="-Xlint:all,-unchecked,-rawtypes,-serial"/>
1011          <compilerarg value="-Werror"/>
1012  <!--       <compilerarg line="-Xlint -Xmaxwarns 1000"/> -->        <compilerarg line="${build.args}"/>
1013    
1014      </javac>      </javac>
   
1015    </target>    </target>
1016    
1017    
   
1018    <target name="extra166yjar"    <target name="extra166yjar"
1019            depends="extra166ycompile"            depends="extra166ycompile"
1020            description="Builds library jar from compiled sources">            description="Builds library jar from compiled sources">
1021    
1022      <mkdir dir="${build.extra166ylib.dir}"/>      <jar destfile="${extra166y.jar}" index="true">
1023          <fileset dir="${build.extra166y.classes.dir}"/>
1024      <jar destfile="${extra166yproduct.jar}" index="true">        <manifest>
1025        <fileset dir="${build.extra166y.dir}"/>          <attribute name="Built-By" value="${user.name}"/>
1026            <attribute name="Implementation-Vendor" value="JCP JSR-166 Expert Group."/>
1027          </manifest>
1028      </jar>      </jar>
1029    
1030    </target>    </target>
1031    
1032    
   
1033    <target name="extra166ydocs"    <target name="extra166ydocs"
1034            description="Builds javadocs with custom tags to build folder">            description="Builds javadocs to build dir">
1035    
1036      <delete dir="${build.extra166yjavadocs.dir}"/>      <delete dir="${extra166ydocs.dir}"/>
1037      <mkdir dir="${build.extra166yjavadocs.dir}"/>      <mkdir dir="${extra166ydocs.dir}"/>
1038    
1039      <javadoc destdir="${build.extra166yjavadocs.dir}"      <javadoc destdir="${extra166ydocs.dir}"
1040               packagenames="extra166y"               packagenames="extra166y.*"
1041               link="${jdkapidocs.url}"               link="${java.api.url}"
1042               source="${build.sourcelevel}"               access="${build.javadoc.access}"
1043               sourcepath="${topsrc.dir}:${jdksrc.dir}"               sourcepath="${topsrc.dir}:${jdk6src.dir}"
1044               additionalparam="-XDignore.symbol.file=true" />               bootclasspath="${bootclasspath6}"
1045                 source="6"
1046                 executable="${javadoc7}">
1047          <arg line="-Xdocrootparent ${java.docroot.url}"/>
1048          <arg value="-XDignore.symbol.file=true"/>
1049    
1050        </javadoc>
1051    </target>    </target>
1052    
1053    
1054    <target name="extra166ydist"    <target name="extra166ydist"
1055            depends="extra166ydist-clean, extra166ydist-jar, extra166ydist-docs"            depends="extra166ydist-jar, extra166ydist-docs"
1056            description="Puts all distributable products in single hierarchy"/>            description="Puts all distributable products in single hierarchy"/>
1057    
1058    
   
1059    <target name="extra166yclean"    <target name="extra166yclean"
1060            description="Removes all build products">            description="Removes all extra166y build products">
1061    
1062      <delete dir="${build.extra166y.dir}"/>      <delete dir="${build.extra166y.dir}"/>
     <delete dir="${build.extra166ylib.dir}"/>  
1063    
1064    </target>    </target>
1065    
1066    
   
   <target name="extra166ydist-clean"  
           description="Removes all build and distribution products">  
   
   </target>  
   
   <target name="extra166ydist-docs"  
           description="Builds javadocs without custom tags to dist folder">  
   
     <delete dir="${dist.extra166yjavadocs.dir}"/>  
     <mkdir dir="${dist.extra166yjavadocs.dir}"/>  
   
     <javadoc destdir="${dist.extra166yjavadocs.dir}"  
              packagenames="extra166y"  
              link="${jdkapidocs.url}"  
              source="${build.sourcelevel}"  
              sourcepath="${topsrc.dir}:${jdksrc.dir}"  
              additionalparam="-XDignore.symbol.file=true" />  
   
   </target>  
   
1067    <target name="extra166ydist-jar"    <target name="extra166ydist-jar"
1068            depends="extra166yclean, extra166yjar">            depends="extra166yclean, extra166yjar">
1069        <copy file="${extra166y.jar}" todir="${dist.dir}"/>
1070      </target>
1071    
1072      <copy file="${extra166yproduct.jar}" todir="${dist.dir}"/>    <target name="extra166ydist-docs"
1073              depends="extra166yclean, extra166ydocs">
1074        <mirror-dir src="${extra166ydocs.dir}" dst="${dist.extra166ydocs.dir}"/>
1075    </target>    </target>
1076    
1077    <!-- jsr166e -->    <!-- jsr166e -->
1078    
1079      <property name="build.jsr166e.java.version" value="6"/>
1080      <property name="build.jsr166e.javac" value="${javac6}"/>
1081    
1082    <target name="jsr166ecompile"    <target name="jsr166ecompile"
1083            depends="configure-compiler"            depends="configure-compiler"
1084            description="Compiles jsr166e sources">            description="Compiles jsr166e sources">
1085    
1086      <mkdir dir="${build.jsr166e.dir}"/>      <mkdir dir="${build.jsr166e.classes.dir}"/>
1087    
1088      <javac srcdir="${topsrc.dir}"      <javac srcdir="${topsrc.dir}"
1089             destdir="${build.jsr166e.dir}"             destdir="${build.jsr166e.classes.dir}"
1090             debug="${build.debug}"             debug="${build.debug}"
1091             debuglevel="${build.debuglevel}"             debuglevel="${build.debuglevel}"
1092             deprecation="${build.deprecation}"             deprecation="${build.deprecation}"
1093             source="1.7"             source="${build.jsr166e.java.version}"
1094             classpath=""             classpath=""
1095             includeAntRuntime="false"             includeAntRuntime="false"
1096             includeJavaRuntime="false"             includeJavaRuntime="false"
1097             executable="${javac7}"             executable="${build.jsr166e.javac}"
1098             fork="true">             fork="true">
1099    
1100        <include name="jsr166e/**/*.java"/>        <include name="jsr166e/**/*.java"/>
       <compilerarg line="${build.args}"/>  
1101        <compilerarg value="-XDignore.symbol.file=true"/>        <compilerarg value="-XDignore.symbol.file=true"/>
1102        <compilerarg value="-Xlint:all"/>        <compilerarg value="-Xlint:all"/>
1103          <compilerarg value="-Werror"/>
1104          <compilerarg line="${build.args}"/>
1105    
1106      </javac>      </javac>
   
1107    </target>    </target>
1108    
1109      <!-- jsr166e: find doclint errors -->
1110      <target name="jsr166edoclint">
1111    
1112        <mkdir dir="${build.jsr166e.classes.dir}"/>
1113    
1114        <javac srcdir="${topsrc.dir}"
1115               destdir="${build.jsr166e.classes.dir}"
1116               debug="${build.debug}"
1117               debuglevel="${build.debuglevel}"
1118               deprecation="${build.deprecation}"
1119               source="${build.jsr166e.java.version}"
1120               classpath=""
1121               bootclasspath="${bootclasspath7}"
1122               includeAntRuntime="false"
1123               includeJavaRuntime="false"
1124               executable="${javac8}"
1125               fork="true">
1126    
1127          <include name="jsr166e/**/*.java"/>
1128          <compilerarg value="-XDignore.symbol.file=true"/>
1129          <compilerarg value="-Xlint:all"/>
1130          <compilerarg value="-Werror"/>
1131          <compilerarg value="-Xdoclint:all/protected"/>
1132    
1133        </javac>
1134      </target>
1135    
1136    
1137    <target name="jsr166ejar"    <target name="jsr166ejar"
1138            depends="jsr166ecompile"            depends="jsr166ecompile"
1139            description="Builds library jar from compiled sources">            description="Builds library jar from compiled sources">
1140    
1141      <mkdir dir="${build.jsr166elib.dir}"/>      <jar destfile="${jsr166e.jar}" index="true">
1142          <fileset dir="${build.jsr166e.classes.dir}"/>
1143      <jar destfile="${jsr166eproduct.jar}" index="true">        <manifest>
1144        <fileset dir="${build.jsr166e.dir}"/>          <attribute name="Built-By" value="${user.name}"/>
1145            <attribute name="Implementation-Vendor" value="JCP JSR-166 Expert Group."/>
1146          </manifest>
1147      </jar>      </jar>
1148    
1149    </target>    </target>
1150    
1151    
   
1152    <target name="jsr166edocs"    <target name="jsr166edocs"
1153            description="Builds javadocs with custom tags to build folder">            description="Builds javadocs to build dir">
1154    
1155      <delete dir="${build.jsr166ejavadocs.dir}"/>      <delete dir="${jsr166edocs.dir}"/>
1156      <mkdir dir="${build.jsr166ejavadocs.dir}"/>      <mkdir dir="${jsr166edocs.dir}"/>
1157    
1158        <javadoc destdir="${jsr166edocs.dir}"
1159                 packagenames="jsr166e.*"
1160                 link="${java.api.url}"
1161                 access="${build.javadoc.access}"
1162                 sourcepath="${topsrc.dir}:${jdk6src.dir}"
1163                 source="${build.jsr166e.java.version}"
1164                 executable="${javadoc7}">
1165          <arg line="-Xdocrootparent ${java.docroot.url}"/>
1166          <arg value="-XDignore.symbol.file=true"/>
1167    
     <javadoc destdir="${build.jsr166ejavadocs.dir}"  
              packagenames="jsr166e,jsr166e.extra"  
              link="${jdkapi7docs.url}"  
              source="1.7"  
              sourcepath="${topsrc.dir}:${jdk7src.dir}"  
              executable="${javadoc7}"  
              additionalparam="-XDignore.symbol.file=true" >  
       <fileset dir="${topsrc.dir}" defaultexcludes="yes">  
         <include name="jsr166e/**/*.java"/>  
       </fileset>  
1168      </javadoc>      </javadoc>
1169      </target>
1170    
1171    
1172      <target name="jsr166e-tck-one-java-version"
1173              depends="jsr166ejar">
1174    
1175        <echo message="Testing with jdk${build.jsr166e.java.version} ..."/>
1176    
1177        <run-tck-tests
1178          tck.src.dir="${test.src.dir}/tck-jsr166e"
1179          target="${build.jsr166e.java.version}"
1180          workdir="${build.jsr166e.dir}"
1181          classes="${jsr166e.jar}"/>
1182      </target>
1183    
1184      <target name="jsr166e-tck"
1185              description="Runs tck tests for jsr166e for multiple java versions">
1186    
1187    <!--     <antcall target="clean"/> -->
1188    <!--     <antcall target="jsr166e-tck-one-java-version"> -->
1189    <!--       <param name="build.jsr166e.java.version" value="8"/> -->
1190    <!--       <param name="build.jsr166e.javac" value="${javac8}"/> -->
1191    <!--     </antcall> -->
1192    
1193        <antcall target="clean"/>
1194        <antcall target="jsr166e-tck-one-java-version">
1195          <param name="build.jsr166e.java.version" value="7"/>
1196          <param name="build.jsr166e.javac" value="${javac7}"/>
1197        </antcall>
1198    
1199        <antcall target="clean"/>
1200        <antcall target="jsr166e-tck-one-java-version">
1201          <param name="build.jsr166e.java.version" value="6"/>
1202          <param name="build.jsr166e.javac" value="${javac6}"/>
1203        </antcall>
1204    </target>    </target>
1205    
1206    
1207      <target name="jsr166e-test"
1208              depends="jsr166e-tck"
1209              description="Runs all tests for jsr166e">
1210      </target>
1211    
1212    <target name="jsr166edist"    <target name="jsr166edist"
1213            depends="jsr166edist-clean, jsr166edist-jar, jsr166edist-docs"            depends="jsr166edist-jar, jsr166edist-docs"
1214            description="Puts all distributable products in single hierarchy"/>            description="Puts all distributable products in single hierarchy"/>
1215    
1216    
   
1217    <target name="jsr166eclean"    <target name="jsr166eclean"
1218            description="Removes all build products">            description="Removes all jsr166e build products">
   
1219      <delete dir="${build.jsr166e.dir}"/>      <delete dir="${build.jsr166e.dir}"/>
     <delete dir="${build.jsr166elib.dir}"/>  
   
1220    </target>    </target>
1221    
1222    
1223      <target name="jsr166edist-jar"
1224    <target name="jsr166edist-clean"            depends="jsr166eclean, jsr166ejar">
1225            description="Removes all build and distribution products">      <copy file="${jsr166e.jar}" todir="${dist.dir}"/>
   
1226    </target>    </target>
1227    
1228    <target name="jsr166edist-docs"    <target name="jsr166edist-docs"
1229            description="Builds javadocs without custom tags to dist folder">            depends="jsr166eclean, jsr166edocs">
1230        <mirror-dir src="${jsr166edocs.dir}" dst="${dist.jsr166edocs.dir}"/>
1231      </target>
1232    
     <delete dir="${dist.jsr166ejavadocs.dir}"/>  
     <mkdir dir="${dist.jsr166ejavadocs.dir}"/>  
1233    
1234      <javadoc destdir="${dist.jsr166ejavadocs.dir}"  <!-- Find buglets that can be detected by static build tools -->
              packagenames="jsr166e,jsr166e.extra"  
              link="${jdkapidocs.url}"  
              source="1.7"  
              sourcepath="${topsrc.dir}:${jdksrc.dir}"  
              additionalparam="-XDignore.symbol.file=true" />  
1235    
1236      <target name="lint">
1237        <antcall target="dists">
1238          <param name="build.javadoc.access" value="public"/>
1239        </antcall>
1240    </target>    </target>
1241    
1242    <target name="jsr166edist-jar"  <!-- Generates all doclint warnings, even for private methods (rarely useful) -->
1243            depends="jsr166eclean, jsr166ejar">    <target name="lint-private">
1244        <antcall target="dist">
1245      <copy file="${jsr166eproduct.jar}" todir="${dist.dir}"/>        <param name="build.javadoc.access" value="private"/>
1246        </antcall>
1247    </target>    </target>
1248    
1249    
1250  </project>  </project>

Legend:
Removed from v.1.99  
changed lines
  Added in v.1.181

dl@cs.oswego.edu
ViewVC Help
Powered by ViewVC 1.1.27