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

Diff of /jsr166/build.xml

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

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

Legend:
Removed from v.1.94  
changed lines
  Added in v.1.177

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