ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/jsr166/jsr166/build.xml
Revision: 1.156
Committed: Wed Jun 25 08:29:01 2014 UTC (9 years, 10 months ago) by jsr166
Content type: text/xml
Branch: MAIN
Changes since 1.155: +9 -4 lines
Log Message:
better sample ant commands

File Contents

# User Rev Content
1 tim 1.18 <project name="jsr166" default="usage">
2 tim 1.1
3     <description>
4 tim 1.29 ------------------------------------------------------------------------------
5     Build file for JSR-166
6 tim 1.18
7 tim 1.29 Usage: ant [target]
8    
9     User-specific settings are read from user.properties.
10 tim 1.32 See user.properties.sample for an explanation of some useful settings.
11 jsr166 1.98
12     The repository contains all dependencies except for ant and the JDK
13     itself. Because the JDK version matters and because different
14     targets require different JDKs, we assume that users have created a
15     hierarchy containing:
16     $HOME/jdk/jdk6
17     $HOME/jdk/jdk7
18     $HOME/jdk/jdk8
19 jsr166 1.151 $HOME/jdk/jdk9
20 jsr166 1.99 where each of the above is a JDK or a symlink to same, and
21     $HOME/jdk/src/jdk6
22     $HOME/jdk/src/jdk7
23     $HOME/jdk/src/jdk8
24 jsr166 1.151 $HOME/jdk/src/jdk9
25 jsr166 1.99 where each of the above is a complete JDK source tree
26     (e.g. mercurial forest) or a symlink to same.
27 tim 1.29 ------------------------------------------------------------------------------
28 tim 1.18 </description>
29 tim 1.11
30 jsr166 1.148 <!-- Display main targets by running 'ant -projecthelp' -->
31     <target name="usage">
32 jsr166 1.129 <java classname="org.apache.tools.ant.Main">
33     <arg value="-projecthelp" />
34     </java>
35 tim 1.29 </target>
36 tim 1.3
37 tim 1.11
38 tim 1.27 <!-- User-specific settings -->
39 tim 1.23 <property file="user.properties"/>
40 tim 1.27
41 tim 1.1
42     <!-- Compilation options -->
43 jsr166 1.114 <property name="build.sourcelevel" value="6"/>
44 tim 1.1 <property name="build.debug" value="true"/>
45     <property name="build.debuglevel" value="source,lines,vars"/>
46 tim 1.13 <property name="build.deprecation" value="false"/>
47 jsr166 1.130 <property name="build.javadoc.access" value="protected"/>
48 tim 1.1
49 jsr166 1.156 <!-- Tck options; see JSR166TestCase.java
50     Profiling a tck test class:
51     ant -Djsr166.profileTests=true -Djsr166.profileThreshold=100 -Djsr166.tckTestClass=CompletableFutureTest test-tck
52     Stress test a tck test class:
53     ant -Djsr166.tckTestClass=CountedCompleterTest -Djsr166.runsPerTest=100 test-tck
54     -->
55 jsr166 1.139 <property name="jsr166.profileTests" value="false"/>
56     <property name="jsr166.profileThreshold" value="100"/>
57     <property name="jsr166.runsPerTest" value="1"/>
58 jsr166 1.156 <!-- Stress test an individual tck test class:
59     ant -Djsr166.tckTestClass=CountedCompleterTest -Djsr166.runsPerTest=100 test-tck
60     -->
61 jsr166 1.140 <property name="jsr166.tckTestClass" value="JSR166TestCase"/>
62 jsr166 1.139
63 tim 1.1 <!-- Build locations -->
64 jsr166 1.79 <property name="build.dir" location="build"/>
65     <property name="build.classes.dir" location="${build.dir}/classes"/>
66     <property name="build.testcases.dir" location="${build.dir}/testcases"/>
67     <property name="build.loops.dir" location="${build.dir}/loops"/>
68     <property name="build.reports.dir" location="${build.dir}/reports"/>
69 jsr166 1.92
70 jsr166 1.109 <property name="build.4jdk7.dir" location="${build.dir}/jsr166-4jdk7"/>
71     <property name="build.4jdk7.classes.dir" location="${build.4jdk7.dir}/classes"/>
72 jsr166 1.113 <property name="build.4jdk7.tck.classes.dir" location="${build.4jdk7.dir}/tck-classes"/>
73 jsr166 1.109 <property name="build.4jdk7.docs.dir" location="${build.4jdk7.dir}/docs"/>
74 jsr166 1.92
75 jsr166 1.79 <property name="build.jsr166x.dir" location="${build.dir}/jsr166x"/>
76     <property name="build.jsr166y.dir" location="${build.dir}/jsr166y"/>
77 dl 1.90 <property name="build.jsr166e.dir" location="${build.dir}/jsr166e"/>
78 jsr166 1.79 <property name="build.extra166y.dir" location="${build.dir}/extra166y"/>
79 dl 1.76
80 jsr166 1.126 <property name="build.jsr166x.classes.dir" location="${build.jsr166x.dir}/classes"/>
81     <property name="build.jsr166y.classes.dir" location="${build.jsr166y.dir}/classes"/>
82     <property name="build.jsr166e.classes.dir" location="${build.jsr166e.dir}/classes"/>
83     <property name="build.extra166y.classes.dir" location="${build.extra166y.dir}/classes"/>
84 jsr166 1.114
85 jsr166 1.118 <!-- JDK locations -->
86 jsr166 1.92 <property name="jdks.home" location="${user.home}/jdk"/>
87 jsr166 1.93
88     <macrodef name="defjdklocations">
89     <attribute name="v"/>
90     <sequential>
91 jsr166 1.99 <property name="jdk@{v}.home" location="${jdks.home}/jdk@{v}"/>
92     <property name="java@{v}" location="${jdk@{v}.home}/bin/java"/>
93     <property name="javac@{v}" location="${jdk@{v}.home}/bin/javac"/>
94     <property name="javadoc@{v}" location="${jdk@{v}.home}/bin/javadoc"/>
95     <property name="jdk@{v}src.dir" location="${jdks.home}/src/jdk@{v}/jdk/src/share/classes"/>
96 jsr166 1.118 <local name="boot.jar.dir"/>
97     <property name="boot.jar.dir" location="${jdk@{v}.home}/jre/lib"/>
98     <path id="bootclasspath@{v}">
99     <pathelement path="${boot.jar.dir}/resources.jar"/>
100     <pathelement path="${boot.jar.dir}/rt.jar"/>
101     <pathelement path="${boot.jar.dir}/jsse.jar"/>
102     <pathelement path="${boot.jar.dir}/jce.jar"/>
103     <pathelement path="${boot.jar.dir}/charsets.jar"/>
104     </path>
105     <property name="bootclasspath@{v}" value="${toString:bootclasspath@{v}}"/>
106 jsr166 1.93 </sequential>
107     </macrodef>
108    
109 jsr166 1.125 <macrodef name="mirror-dir">
110     <attribute name="src"/>
111     <attribute name="dst"/>
112     <sequential>
113     <delete dir="@{dst}"/>
114     <mkdir dir="@{dst}"/>
115     <copy todir="@{dst}" preservelastmodified="true">
116     <fileset dir="@{src}"/>
117     </copy>
118     </sequential>
119     </macrodef>
120    
121 jsr166 1.93 <defjdklocations v="6"/>
122     <defjdklocations v="7"/>
123     <defjdklocations v="8"/>
124 jsr166 1.151 <defjdklocations v="9"/>
125 jsr166 1.92
126 tim 1.1 <!-- Source locations -->
127 tim 1.22 <property name="src.dir" location="${basedir}/src/main"/>
128     <property name="test.src.dir" location="${basedir}/src/test"/>
129 jsr166 1.65 <property name="loops.src.dir" location="${basedir}/src/loops"/>
130 tim 1.60 <property name="tck.src.dir" location="${test.src.dir}/tck"/>
131 tim 1.62 <property name="jtreg.src.dir" location="${test.src.dir}/jtreg"/>
132 tim 1.1 <property name="lib.dir" location="${basedir}/lib"/>
133 tim 1.9 <property name="dist.dir" location="${basedir}/dist"/>
134 dl 1.70 <property name="topsrc.dir" location="${basedir}/src"/>
135 jsr166 1.99 <property name="4jdk7src.dir" location="${topsrc.dir}/jdk7"/>
136 jsr166 1.92 <property name="jsr166xsrc.dir" location="${topsrc.dir}/jsr166x"/>
137     <property name="jsr166ysrc.dir" location="${topsrc.dir}/jsr166y"/>
138     <property name="jsr166esrc.dir" location="${topsrc.dir}/jsr166e"/>
139     <property name="extra166ysrc.dir" location="${topsrc.dir}/extra166y"/>
140 jsr166 1.91
141 jsr166 1.125 <!-- Javadoc locations -->
142 jsr166 1.127 <property name="docs.dir" location="${build.dir}/docs"/>
143     <property name="4jdk7docs.dir" location="${build.4jdk7.dir}/docs"/>
144     <property name="jsr166xdocs.dir" location="${build.jsr166x.dir}/docs"/>
145     <property name="jsr166ydocs.dir" location="${build.jsr166y.dir}/docs"/>
146     <property name="jsr166edocs.dir" location="${build.jsr166e.dir}/docs"/>
147     <property name="extra166ydocs.dir" location="${build.extra166y.dir}/docs"/>
148    
149     <property name="dist.docs.dir" location="${dist.dir}/docs"/>
150     <property name="dist.4jdk7docs.dir" location="${dist.dir}/jsr166-4jdk7docs"/>
151     <property name="dist.jsr166xdocs.dir" location="${dist.dir}/jsr166xdocs"/>
152     <property name="dist.jsr166ydocs.dir" location="${dist.dir}/jsr166ydocs"/>
153     <property name="dist.jsr166edocs.dir" location="${dist.dir}/jsr166edocs"/>
154     <property name="dist.extra166ydocs.dir" location="${dist.dir}/extra166ydocs"/>
155 tim 1.1
156     <!-- Jar locations -->
157 jsr166 1.109 <property name="product.jar" location="${build.dir}/jsr166.jar"/>
158     <property name="4jdk7product.jar" location="${build.4jdk7.dir}/jsr166-4jdk7.jar"/>
159     <property name="jsr166x.jar" location="${build.jsr166x.dir}/jsr166x.jar"/>
160     <property name="jsr166y.jar" location="${build.jsr166y.dir}/jsr166y.jar"/>
161     <property name="jsr166e.jar" location="${build.jsr166e.dir}/jsr166e.jar"/>
162     <property name="extra166y.jar" location="${build.extra166y.dir}/extra166y.jar"/>
163 jsr166 1.106 <property name="junit.jar" location="${lib.dir}/junit.jar"/>
164 jsr166 1.65
165 jsr166 1.152 <!-- Canonical location of jdk docs root, to use with javadoc -Xdocrootparent flag -->
166     <property name="java5.docroot.url" value="http://docs.oracle.com/javase/1.5.0/docs"/>
167     <property name="java6.docroot.url" value="http://docs.oracle.com/javase/6/docs"/>
168     <property name="java7.docroot.url" value="http://docs.oracle.com/javase/7/docs"/>
169 jsr166 1.151 <!-- The expected canonical location does not yet exist as of 2014-02 -->
170 jsr166 1.152 <!-- <property name="java8.docroot.url" value="http://docs.oracle.com/javase/8/docs"/> -->
171     <property name="java8.docroot.url" value="http://download.java.net/jdk8/docs"/>
172 jsr166 1.151 <!-- No published jdk9 docs exist as of 2014-02 -->
173 jsr166 1.152 <!-- <property name="java9.docroot.url" value="http://docs.oracle.com/javase/9/docs"/> -->
174     <property name="java9.docroot.url" value="${java8.docroot.url}"/>
175     <!-- Default jdk doc location (latest stable release seems best) -->
176     <property name="java.docroot.url" value="${java7.docroot.url}"/>
177 jsr166 1.151
178 jsr166 1.152 <!-- Canonical location of jdk API docs, to use with javadoc link attribute -->
179     <property name="java5.api.url" value="${java5.docroot.url}/api/"/>
180     <property name="java6.api.url" value="${java6.docroot.url}/api/"/>
181     <property name="java7.api.url" value="${java7.docroot.url}/api/"/>
182     <property name="java8.api.url" value="${java8.docroot.url}/api/"/>
183     <property name="java9.api.url" value="${java9.docroot.url}/api/"/>
184     <property name="java.api.url" value="${java.docroot.url}/api/"/>
185 jsr166 1.91
186 jsr166 1.115 <!-- Define the "jtreg" task -->
187     <!-- See the docs in "jtreg -onlineHelp" -->
188     <taskdef name="jtreg" classname="com.sun.javatest.regtest.Main$$Ant"
189     classpath="${lib.dir}/jtreg.jar" />
190    
191 tim 1.59 <!-- Test classpath -->
192     <path id="test.classpath">
193     <pathelement location="${build.testcases.dir}"/>
194     <pathelement location="${junit.jar}"/>
195     </path>
196 tim 1.28
197 jsr166 1.118 <macrodef name="run-tck-tests">
198 jsr166 1.122 <attribute name="tck.src.dir" default="${tck.src.dir}"/>
199 jsr166 1.118 <attribute name="target"/>
200 jsr166 1.138 <attribute name="compile-target" default="@{target}"/>
201 jsr166 1.118 <attribute name="workdir"/>
202 jsr166 1.122 <attribute name="classes"/>
203 jsr166 1.155 <attribute name="jvmflags" default="-ea -esa -Djsr166.testImplementationDetails=true"/>
204 jsr166 1.132 <element name="javac-elements" optional="true"/>
205 jsr166 1.118 <sequential>
206    
207     <mkdir dir="@{workdir}/tck-classes"/>
208    
209 jsr166 1.122 <javac srcdir="@{tck.src.dir}"
210 jsr166 1.118 destdir="@{workdir}/tck-classes"
211     debug="${build.debug}"
212     debuglevel="${build.debuglevel}"
213     deprecation="${build.deprecation}"
214 jsr166 1.138 source="@{compile-target}"
215     target="@{compile-target}"
216 jsr166 1.118 classpath="${junit.jar}"
217 jsr166 1.138 bootclasspath="@{classes}:${bootclasspath@{compile-target}}"
218 jsr166 1.118 includeAntRuntime="false"
219     includeJavaRuntime="false"
220 jsr166 1.138 executable="${javac@{compile-target}}"
221 jsr166 1.118 fork="true">
222    
223 jsr166 1.121 <include name="*.java"/>
224 jsr166 1.118 <compilerarg value="-XDignore.symbol.file=true"/>
225     <compilerarg value="-Xlint:all,-unchecked,-rawtypes,-serial,-deprecation"/>
226     <compilerarg line="${build.args}"/>
227 jsr166 1.132 <javac-elements/>
228 jsr166 1.118
229     </javac>
230    
231 jsr166 1.140 <java classname="${jsr166.tckTestClass}"
232 jsr166 1.118 failonerror="true"
233     jvm="${java@{target}}"
234     fork="true">
235 jsr166 1.122 <jvmarg value="-Xbootclasspath/p:@{classes}"/>
236 jsr166 1.118 <jvmarg line="@{jvmflags}"/>
237 jsr166 1.139 <sysproperty key="jsr166.profileTests" value="${jsr166.profileTests}"/>
238     <sysproperty key="jsr166.profileThreshold" value="${jsr166.profileThreshold}"/>
239     <sysproperty key="jsr166.runsPerTest" value="${jsr166.runsPerTest}"/>
240 jsr166 1.118 <classpath>
241     <pathelement location="${junit.jar}"/>
242     <pathelement location="@{workdir}/tck-classes"/>
243     </classpath>
244     </java>
245    
246     </sequential>
247     </macrodef>
248    
249 jsr166 1.135 <macrodef name="run-jtreg-tests">
250 jsr166 1.153 <!-- ant -Djtreg.src.dir=src/test/jtreg/util/concurrent/CompletableFuture test-jtreg -->
251 jsr166 1.135 <attribute name="jtreg.src.dir" default="${jtreg.src.dir}"/>
252     <attribute name="source" default="7"/>
253     <attribute name="target"/>
254     <attribute name="workdir"/>
255     <attribute name="classes"/>
256     <attribute name="jtregflags" default=""/>
257     <sequential>
258     <delete dir="@{workdir}/JTwork" quiet="true"/>
259     <delete dir="@{workdir}/JTreport" quiet="true"/>
260     <mkdir dir="@{workdir}/JTwork/scratch"/>
261     <mkdir dir="@{workdir}/JTreport"/>
262     <jtreg dir="@{jtreg.src.dir}"
263     jdk="${jdk@{target}.home}"
264     workDir="@{workdir}/JTwork"
265     reportDir="@{workdir}/JTreport">
266    
267     <arg value="-Xbootclasspath/p:@{classes}"/>
268     <arg value="-agentvm"/>
269     <arg value="-v:nopass,fail"/>
270     <arg value="-vmoptions:-esa -ea"/>
271     <arg value="-automatic"/>
272     <arg value="-k:!ignore"/>
273     <arg line="@{jtregflags}"/>
274     </jtreg>
275     </sequential>
276     </macrodef>
277    
278 jsr166 1.65 <!-- ALoops classpath -->
279     <path id="loops.classpath">
280     <pathelement location="${build.loops.dir}"/>
281     </path>
282    
283 jsr166 1.100 <!-- Support @jls tag, used in jdk8+ javadoc -->
284 jsr166 1.120 <property name="javadoc.jls.cite" value="The Java&amp;trade; Language Specification"/>
285 jsr166 1.100 <property name="javadoc.jls.option" value="jls:a:See &lt;cite&gt;${javadoc.jls.cite}&lt;/cite&gt;:"/>
286 tim 1.28
287 tim 1.59 <!-- Main targets -->
288 tim 1.28
289 jsr166 1.151 <property name="build.main.java.version" value="9"/>
290     <property name="build.main.javac" value="${javac9}"/>
291    
292 dl 1.80 <target name="dists"
293 jsr166 1.107 depends="dist, 4jdk7dist, jsr166edist, jsr166ydist, extra166ydist, jsr166xdist"
294 dl 1.80 description="Builds all public jars and docs"/>
295 tim 1.11
296 tim 1.28 <target name="compile"
297 jsr166 1.100 depends="configure-compiler"
298 jsr166 1.102 description="Compiles src/main sources to build dir">
299 tim 1.27
300 tim 1.1 <mkdir dir="${build.classes.dir}"/>
301 tim 1.27
302 tim 1.60 <javac srcdir="${src.dir}"
303 jsr166 1.100 destdir="${build.classes.dir}"
304     debug="${build.debug}"
305     debuglevel="${build.debuglevel}"
306     deprecation="${build.deprecation}"
307     classpath=""
308     includeAntRuntime="false"
309     includeJavaRuntime="false"
310 jsr166 1.151 executable="${build.main.javac}"
311 jsr166 1.100 fork="true">
312 tim 1.1
313 jsr166 1.68 <include name="**/*.java"/>
314 jsr166 1.133 <compilerarg value="-Xprefer:source"/>
315 dl 1.83 <compilerarg value="-XDignore.symbol.file=true"/>
316 jsr166 1.100 <compilerarg value="-Xlint:all"/>
317 jsr166 1.146 <compilerarg value="-Xdoclint:all/protected"/>
318     <compilerarg line="-Xmaxerrs 1000 -Xmaxwarns 1000"/>
319 dl 1.73 <compilerarg line="${build.args}"/>
320 tim 1.1
321     </javac>
322     </target>
323    
324    
325 tim 1.28 <target name="jar"
326 tim 1.59 depends="compile"
327     description="Builds library jar from compiled sources">
328    
329     <jar destfile="${product.jar}">
330     <fileset dir="${build.classes.dir}"/>
331     </jar>
332     </target>
333    
334 tim 1.1
335 tim 1.59 <target name="docs"
336 jsr166 1.102 description="Builds javadocs for src/main to dist dir">
337 tim 1.59
338 jsr166 1.127 <delete dir="${docs.dir}"/>
339     <mkdir dir="${docs.dir}"/>
340 tim 1.59
341 jsr166 1.88 <!-- the packagenames="none" hack below prevents scanning the -->
342     <!-- sourcepath for packages -->
343    
344 jsr166 1.127 <javadoc destdir="${docs.dir}"
345 jsr166 1.88 packagenames="none"
346 jsr166 1.152 link="${java9.api.url}"
347 jsr166 1.88 overview="${src.dir}/intro.html"
348 jsr166 1.130 access="${build.javadoc.access}"
349 jsr166 1.151 sourcepath="${src.dir}:${jdk9src.dir}"
350 jsr166 1.100 classpath=""
351 jsr166 1.151 executable="${javadoc9}">
352 jsr166 1.119 <fileset dir="${src.dir}" defaultexcludes="yes">
353     <include name="**/*.java"/>
354     </fileset>
355 jsr166 1.152 <arg line="-Xdocrootparent ${java9.docroot.url}"/>
356 jsr166 1.146 <arg line="-Xmaxerrs 1000 -Xmaxwarns 1000"/>
357 jsr166 1.100 <arg value="-XDignore.symbol.file=true"/>
358     <arg value="-tag"/>
359     <arg value="${javadoc.jls.option}"/>
360 dl 1.143 <arg value="-tag"/>
361     <arg value="apiNote:a:&lt;em&gt;API Note:&lt;/em&gt;"/>
362     <arg value="-tag"/>
363     <arg value="implSpec:a:&lt;em&gt;Implementation Requirements:&lt;/em&gt;"/>
364     <arg value="-tag"/>
365 jsr166 1.144 <arg value="implNote:a:&lt;em&gt;Implementation Note:&lt;/em&gt;"/>
366 tim 1.59 </javadoc>
367     </target>
368    
369    
370 tim 1.28 <target name="dist"
371 jsr166 1.125 depends="dist-clean, dist-jar, dist-docs"
372 tim 1.16 description="Puts all distributable products in single hierarchy"/>
373 tim 1.1
374 tim 1.58
375 tim 1.42 <target name="release"
376     depends="dist"
377     description="Puts entire CVS tree, plus distribution productions, in a jar">
378    
379     <property name="release.jar" value="dist/jsr166-${version}-dist.jar"/>
380    
381     <jar basedir="${basedir}" destfile="${release.jar}">
382 tim 1.58 <!-- <exclude name="build/**"/> -->
383 tim 1.42 <exclude name="${release.jar}"/>
384     <exclude name="user.properties"/>
385     <exclude name="etc/notes/**"/>
386 tim 1.58 <exclude name="src/emulation/**"/>
387 tim 1.44 <exclude name="**/SyntaxTest.java"/>
388 tim 1.58 <exclude name="**/SuperfluousAbstract.java"/>
389 tim 1.42 </jar>
390     </target>
391 tim 1.1
392 tim 1.59
393 tim 1.11 <target name="clean"
394     description="Removes all build products">
395 tim 1.27
396 tim 1.11 <delete dir="${build.dir}"/>
397 tim 1.27
398 tim 1.1 </target>
399    
400    
401 tim 1.11 <target name="dist-clean"
402     description="Removes all build and distribution products">
403 tim 1.27
404 jsr166 1.148 <delete dir="${build.dir}"/>
405 tim 1.11 <delete dir="${dist.dir}"/>
406 tim 1.27
407 tim 1.9 </target>
408 tim 1.10
409    
410 tim 1.28 <target name="dist-jar"
411     depends="clean, jar">
412 tim 1.11 <copy file="${product.jar}" todir="${dist.dir}"/>
413 jsr166 1.125 </target>
414 tim 1.27
415 jsr166 1.125 <target name="dist-docs"
416     depends="clean, docs">
417 jsr166 1.127 <mirror-dir src="${docs.dir}" dst="${dist.docs.dir}"/>
418 tim 1.11 </target>
419    
420    
421 jsr166 1.131 <target name="test-tck"
422     depends="jar"
423     description="Runs tck tests for main directly">
424    
425     <run-tck-tests
426 jsr166 1.151 target="${build.main.java.version}"
427 jsr166 1.131 workdir="${build.dir}"
428     classes="${product.jar}"/>
429     </target>
430 tim 1.1
431 jsr166 1.135 <target name="test-jtreg"
432     depends="jar"
433     description="Runs jtreg tests for main using the jtreg ant task">
434     <run-jtreg-tests
435 jsr166 1.151 target="${build.main.java.version}"
436 jsr166 1.135 workdir="${build.dir}"
437     classes="${product.jar}"/>
438     </target>
439    
440 jsr166 1.142 <target name="test"
441 jsr166 1.135 depends="test-tck, test-jtreg"
442     description="Runs tck and jtreg tests for main">
443     </target>
444    
445 jsr166 1.151 <target name="test89"
446     description="Runs tck and jtreg tests for main for multiple java versions">
447    
448     <antcall target="clean"/>
449     <antcall target="test">
450     <param name="build.main.java.version" value="8"/>
451     <param name="build.main.javac" value="${javac8}"/>
452     </antcall>
453    
454     <antcall target="clean"/>
455     <antcall target="test">
456     <param name="build.main.java.version" value="9"/>
457     <param name="build.main.javac" value="${javac9}"/>
458     </antcall>
459    
460     </target>
461    
462 tim 1.18
463    
464 tim 1.32 <target name="configure-compiler">
465 tim 1.54
466     <property name="unchecked.option" value="-Xlint:unchecked"/>
467    
468     <condition property="warnunchecked.arg" value="${unchecked.option}">
469 tim 1.57 <istrue value="${build.warnunchecked}"/>
470 tim 1.32 </condition>
471    
472 tim 1.37 <property name="warnunchecked.arg" value=""/>
473 tim 1.34
474 tim 1.32
475     <!-- Common options in javac invocations -->
476 tim 1.57 <property name="build.args" value="${warnunchecked.arg}"/>
477 tim 1.33
478     </target>
479    
480    
481 tim 1.28
482 jsr166 1.65 <!-- Various demos and test programs -->
483    
484    
485 jsr166 1.103 <target name="loops" depends="configure-compiler"
486 jsr166 1.65 description="Benchmark from Doug Lea's AQS paper">
487    
488     <mkdir dir="${build.loops.dir}"/>
489    
490     <javac srcdir="${loops.src.dir}"
491     destdir="${build.loops.dir}"
492     debug="${build.debug}"
493     debuglevel="${build.debuglevel}"
494     deprecation="${build.deprecation}"
495     source="${build.sourcelevel}"
496     fork="true">
497    
498     <compilerarg line="${build.args}"/>
499     <classpath refid="loops.classpath"/>
500 dl 1.84 <compilerarg value="-XDignore.symbol.file=true"/>
501 jsr166 1.65
502     </javac>
503    
504     <java classname="ALoops" fork="true">
505     <classpath refid="loops.classpath"/>
506     </java>
507    
508     </target>
509    
510    
511 jsr166 1.99 <!-- jsr166 4jdk7 -->
512 jsr166 1.92
513 jsr166 1.99 <target name="4jdk7compile"
514 jsr166 1.92 depends="configure-compiler"
515 jsr166 1.99 description="Compiles src/jdk7 sources, targeting jdk7">
516 jsr166 1.92
517 jsr166 1.99 <mkdir dir="${build.4jdk7.classes.dir}"/>
518 jsr166 1.92
519 jsr166 1.99 <javac srcdir="${4jdk7src.dir}"
520     destdir="${build.4jdk7.classes.dir}"
521 jsr166 1.92 debug="${build.debug}"
522     debuglevel="${build.debuglevel}"
523     deprecation="${build.deprecation}"
524 jsr166 1.107 source="6"
525 jsr166 1.92 classpath=""
526 jsr166 1.119 bootclasspath="${bootclasspath6}"
527 jsr166 1.92 includeAntRuntime="false"
528     includeJavaRuntime="false"
529 jsr166 1.97 executable="${javac7}"
530 jsr166 1.92 fork="true">
531    
532     <include name="**/*.java"/>
533 jsr166 1.133 <compilerarg value="-Xprefer:source"/>
534 jsr166 1.92 <compilerarg value="-XDignore.symbol.file=true"/>
535     <compilerarg value="-Xlint:all"/>
536 jsr166 1.118 <compilerarg line="${build.args}"/>
537 jsr166 1.92
538     </javac>
539 jsr166 1.118 </target>
540 jsr166 1.92
541 jsr166 1.149 <target name="4jdk7doclint"
542     depends="configure-compiler"
543     description="Finds doclint warnings">
544    
545     <mkdir dir="${build.4jdk7.classes.dir}"/>
546    
547     <javac srcdir="${4jdk7src.dir}"
548     destdir="${build.4jdk7.classes.dir}"
549     debug="${build.debug}"
550     debuglevel="${build.debuglevel}"
551     deprecation="${build.deprecation}"
552     source="6"
553     classpath=""
554     bootclasspath="${bootclasspath7}"
555     includeAntRuntime="false"
556     includeJavaRuntime="false"
557     executable="${javac8}"
558     fork="true">
559    
560     <include name="**/*.java"/>
561     <compilerarg value="-Xprefer:source"/>
562     <compilerarg value="-XDignore.symbol.file=true"/>
563     <compilerarg value="-Xlint:all"/>
564     <compilerarg value="-Xdoclint:all/protected"/>
565     <compilerarg line="${build.args}"/>
566    
567     </javac>
568     </target>
569    
570 jsr166 1.116
571 jsr166 1.128 <target name="4jdk7jar"
572 jsr166 1.116 depends="4jdk7compile"
573     description="Builds library jar from compiled sources">
574    
575     <jar destfile="${4jdk7product.jar}">
576 jsr166 1.99 <fileset dir="${build.4jdk7.classes.dir}"/>
577 jsr166 1.97 </jar>
578    
579 jsr166 1.92 </target>
580    
581    
582 jsr166 1.99 <target name="4jdk7-test-tck"
583 jsr166 1.128 depends="4jdk7jar"
584 jsr166 1.99 description="Runs tck tests for jsr166-4jdk7 directly">
585 jsr166 1.116
586 jsr166 1.97 <run-tck-tests
587 jsr166 1.116 target="7"
588     workdir="${build.4jdk7.dir}"
589 jsr166 1.132 classes="${4jdk7product.jar}">
590     <javac-elements>
591 jsr166 1.134 <!-- JDK8+ test classes -->
592 jsr166 1.137 <exclude name="*8Test.java"/>
593 jsr166 1.151 <exclude name="*9Test.java"/>
594 jsr166 1.138 <exclude name="DoubleAccumulatorTest.java"/>
595     <exclude name="DoubleAdderTest.java"/>
596     <exclude name="LongAccumulatorTest.java"/>
597     <exclude name="LongAdderTest.java"/>
598 jsr166 1.137 <exclude name="CompletableFutureTest.java"/>
599 jsr166 1.145 <exclude name="SplittableRandomTest.java"/>
600 jsr166 1.132 <exclude name="StampedLockTest.java"/>
601     </javac-elements>
602     </run-tck-tests>
603 jsr166 1.97 </target>
604    
605    
606 jsr166 1.99 <target name="4jdk7-test-tck-junit"
607     depends="4jdk7compile"
608     description="Runs tck tests for jsr166-4jdk7 via junit task (experimental)">
609 jsr166 1.97
610     <junit printsummary="true"
611     showoutput="true"
612     errorProperty="junit.failed"
613     failureProperty="junit.failed"
614     includeantruntime="true"
615     jvm="${java7}"
616     fork="true">
617    
618 jsr166 1.99 <jvmarg value="-Xbootclasspath/p:${4jdk7product.jar}"/>
619 jsr166 1.97 <jvmarg value="-server"/>
620 jsr166 1.92
621 jsr166 1.97 <classpath>
622     <pathelement location="${junit.jar}"/>
623 jsr166 1.99 <pathelement location="${build.4jdk7.tck.classes.dir}"/>
624 jsr166 1.97 </classpath>
625 jsr166 1.92
626 jsr166 1.97 <formatter type="brief"/>
627 jsr166 1.92
628 jsr166 1.140 <test name="${jsr166.tckTestClass}" haltonfailure="no">
629 jsr166 1.97 </test>
630 jsr166 1.92
631 jsr166 1.97 </junit>
632 jsr166 1.92 </target>
633    
634 jsr166 1.115 <target name="4jdk7-test-jtreg"
635 jsr166 1.135 depends="4jdk7jar"
636 jsr166 1.115 description="Runs jtreg tests for jsr166-4jdk7 using the jtreg ant task">
637 jsr166 1.135 <run-jtreg-tests
638     target="7"
639     workdir="${build.4jdk7.dir}"
640 jsr166 1.141 classes="${4jdk7product.jar}"
641     jtregflags="-exclude:${jtreg.src.dir}/jdk8tests"/>
642 jsr166 1.115 </target>
643    
644    
645     <target name="4jdk7-test"
646     depends="4jdk7-test-tck, 4jdk7-test-jtreg"
647     description="Runs tck and jtreg tests for jsr166-4jdk7">
648     </target>
649    
650 jsr166 1.92
651 jsr166 1.99 <target name="4jdk7docs"
652 jsr166 1.102 description="Builds javadocs for src/jdk7 to dist dir">
653 jsr166 1.92
654 jsr166 1.127 <delete dir="${4jdk7docs.dir}"/>
655     <mkdir dir="${4jdk7docs.dir}"/>
656 jsr166 1.92
657 jsr166 1.127 <javadoc destdir="${4jdk7docs.dir}"
658 jsr166 1.92 packagenames="none"
659 jsr166 1.152 link="${java7.api.url}"
660 jsr166 1.99 overview="${4jdk7src.dir}/intro.html"
661 jsr166 1.130 access="${build.javadoc.access}"
662 jsr166 1.119 sourcepath="${4jdk7src.dir}:${jdk7src.dir}"
663 jsr166 1.92 classpath=""
664 jsr166 1.99 executable="${javadoc7}">
665     <fileset dir="${4jdk7src.dir}" defaultexcludes="yes">
666 jsr166 1.92 <include name="**/*.java"/>
667     </fileset>
668 jsr166 1.152 <arg line="-Xdocrootparent ${java7.docroot.url}"/>
669 jsr166 1.119 <arg value="-XDignore.symbol.file=true"/>
670 jsr166 1.92 </javadoc>
671     </target>
672    
673    
674 jsr166 1.99 <target name="4jdk7dist"
675 jsr166 1.125 depends="4jdk7dist-jar, 4jdk7dist-docs"
676 jsr166 1.92 description="Puts all distributable products in single hierarchy"/>
677    
678    
679 jsr166 1.99 <target name="4jdk7clean"
680 jsr166 1.109 description="Removes all 4jdk7 build products">
681 jsr166 1.92
682 jsr166 1.99 <delete dir="${build.4jdk7.dir}"/>
683 jsr166 1.92
684     </target>
685    
686    
687 jsr166 1.99 <target name="4jdk7dist-jar"
688 jsr166 1.128 depends="4jdk7clean, 4jdk7jar">
689 jsr166 1.125 <copy file="${4jdk7product.jar}" todir="${dist.dir}"/>
690     </target>
691 jsr166 1.92
692    
693 jsr166 1.125 <target name="4jdk7dist-docs"
694     depends="4jdk7clean, 4jdk7docs">
695 jsr166 1.127 <mirror-dir src="${4jdk7docs.dir}" dst="${dist.4jdk7docs.dir}"/>
696 jsr166 1.92 </target>
697    
698 jsr166 1.109
699 dl 1.70 <!-- jsr166x -->
700    
701     <target name="jsr166xcompile"
702 jsr166 1.103 depends="configure-compiler"
703 jsr166 1.105 description="Compiles jsr166x sources to build dir">
704 dl 1.70
705 jsr166 1.114 <mkdir dir="${build.jsr166x.classes.dir}"/>
706 dl 1.70
707 jsr166 1.105 <javac srcdir="${topsrc.dir}"
708 jsr166 1.114 destdir="${build.jsr166x.classes.dir}"
709 jsr166 1.105 debug="${build.debug}"
710     debuglevel="${build.debuglevel}"
711     deprecation="${build.deprecation}"
712     classpath=""
713 jsr166 1.119 bootclasspath="${bootclasspath6}"
714 jsr166 1.107 source="5"
715 jsr166 1.105 includeAntRuntime="false"
716     includeJavaRuntime="false"
717     executable="${javac7}"
718     fork="true">
719 dl 1.70
720 jsr166 1.105 <include name="jsr166x/**/*.java"/>
721 dl 1.84 <compilerarg value="-XDignore.symbol.file=true"/>
722 jsr166 1.105 <compilerarg value="-Xlint:all,-unchecked,-rawtypes"/>
723 jsr166 1.118 <compilerarg line="${build.args}"/>
724 dl 1.70
725     </javac>
726     </target>
727    
728    
729 jsr166 1.128 <target name="jsr166xjar"
730 dl 1.70 depends="jsr166xcompile"
731     description="Builds library jar from compiled sources">
732    
733 jsr166 1.106 <jar destfile="${jsr166x.jar}">
734 jsr166 1.114 <fileset dir="${build.jsr166x.classes.dir}"/>
735 dl 1.70 </jar>
736    
737     </target>
738    
739    
740     <target name="jsr166xdocs"
741 jsr166 1.102 description="Builds javadocs to dist dir">
742 dl 1.70
743 jsr166 1.127 <delete dir="${jsr166xdocs.dir}"/>
744     <mkdir dir="${jsr166xdocs.dir}"/>
745 dl 1.70
746 jsr166 1.127 <javadoc destdir="${jsr166xdocs.dir}"
747 jsr166 1.107 packagenames="jsr166x.*"
748 jsr166 1.152 link="${java.api.url}"
749 jsr166 1.130 access="${build.javadoc.access}"
750 jsr166 1.119 sourcepath="${topsrc.dir}:${jdk6src.dir}"
751     bootclasspath="${bootclasspath6}"
752 jsr166 1.107 source="5"
753 jsr166 1.118 executable="${javadoc7}">
754 jsr166 1.152 <arg line="-Xdocrootparent ${java.docroot.url}"/>
755 jsr166 1.118 <arg value="-XDignore.symbol.file=true"/>
756 dl 1.70
757 jsr166 1.118 </javadoc>
758 dl 1.70 </target>
759    
760    
761     <target name="jsr166xdist"
762 jsr166 1.125 depends="jsr166xdist-jar, jsr166xdist-docs"
763 dl 1.70 description="Puts all distributable products in single hierarchy"/>
764    
765    
766     <target name="jsr166xclean"
767 jsr166 1.109 description="Removes all jsr166x build products">
768 dl 1.70
769     <delete dir="${build.jsr166x.dir}"/>
770    
771     </target>
772    
773    
774     <target name="jsr166xdist-jar"
775 jsr166 1.128 depends="jsr166xclean, jsr166xjar">
776 jsr166 1.106 <copy file="${jsr166x.jar}" todir="${dist.dir}"/>
777 jsr166 1.125 </target>
778 dl 1.70
779 jsr166 1.125 <target name="jsr166xdist-docs"
780     depends="jsr166xclean, jsr166xdocs">
781 jsr166 1.127 <mirror-dir src="${jsr166xdocs.dir}" dst="${dist.jsr166xdocs.dir}"/>
782 dl 1.70 </target>
783    
784 dl 1.74 <!-- jsr166y -->
785    
786    
787     <target name="jsr166ycompile"
788 jsr166 1.103 depends="configure-compiler"
789 dl 1.74 description="Compiles jsr166y sources">
790    
791 jsr166 1.114 <mkdir dir="${build.jsr166y.classes.dir}"/>
792 dl 1.74
793 jsr166 1.103 <javac srcdir="${topsrc.dir}"
794 jsr166 1.114 destdir="${build.jsr166y.classes.dir}"
795 jsr166 1.103 debug="${build.debug}"
796     debuglevel="${build.debuglevel}"
797     deprecation="${build.deprecation}"
798 jsr166 1.107 source="6"
799 jsr166 1.103 classpath=""
800 jsr166 1.119 bootclasspath="${bootclasspath6}"
801 jsr166 1.103 includeAntRuntime="false"
802     includeJavaRuntime="false"
803     executable="${javac7}"
804     fork="true">
805 dl 1.74
806 jsr166 1.103 <include name="jsr166y/**/*.java"/>
807 dl 1.83 <compilerarg value="-XDignore.symbol.file=true"/>
808 jsr166 1.103 <compilerarg value="-Xlint:all"/>
809 jsr166 1.118 <compilerarg line="${build.args}"/>
810    
811 dl 1.74 </javac>
812     </target>
813    
814    
815 jsr166 1.128 <target name="jsr166yjar"
816 dl 1.74 depends="jsr166ycompile"
817     description="Builds library jar from compiled sources">
818    
819 jsr166 1.106 <jar destfile="${jsr166y.jar}" index="true">
820 jsr166 1.114 <fileset dir="${build.jsr166y.classes.dir}"/>
821 dl 1.74 </jar>
822    
823     </target>
824    
825    
826     <target name="jsr166ydocs"
827 jsr166 1.102 description="Builds javadocs to dist dir">
828 dl 1.74
829 jsr166 1.127 <delete dir="${jsr166ydocs.dir}"/>
830     <mkdir dir="${jsr166ydocs.dir}"/>
831 dl 1.74
832 jsr166 1.127 <javadoc destdir="${jsr166ydocs.dir}"
833 jsr166 1.107 packagenames="jsr166y.*"
834 jsr166 1.152 link="${java.api.url}"
835 jsr166 1.130 access="${build.javadoc.access}"
836 jsr166 1.119 sourcepath="${topsrc.dir}:${jdk6src.dir}"
837     bootclasspath="${bootclasspath6}"
838 jsr166 1.107 source="6"
839 jsr166 1.118 executable="${javadoc7}">
840 jsr166 1.152 <arg line="-Xdocrootparent ${java.docroot.url}"/>
841 jsr166 1.118 <arg value="-XDignore.symbol.file=true"/>
842 dl 1.74
843 jsr166 1.118 </javadoc>
844 dl 1.74 </target>
845    
846    
847     <target name="jsr166ydist"
848 jsr166 1.125 depends="jsr166ydist-jar, jsr166ydist-docs"
849 dl 1.74 description="Puts all distributable products in single hierarchy"/>
850    
851    
852     <target name="jsr166yclean"
853 jsr166 1.109 description="Removes all jsr166y build products">
854 dl 1.74
855     <delete dir="${build.jsr166y.dir}"/>
856    
857     </target>
858    
859    
860     <target name="jsr166ydist-jar"
861 jsr166 1.128 depends="jsr166yclean, jsr166yjar">
862 jsr166 1.106 <copy file="${jsr166y.jar}" todir="${dist.dir}"/>
863 jsr166 1.125 </target>
864 dl 1.74
865 jsr166 1.125 <target name="jsr166ydist-docs"
866     depends="jsr166yclean, jsr166ydocs">
867 jsr166 1.127 <mirror-dir src="${jsr166ydocs.dir}" dst="${dist.jsr166ydocs.dir}"/>
868 dl 1.74 </target>
869    
870 dl 1.90
871 dl 1.76 <!-- extra166y -->
872    
873    
874     <target name="extra166ycompile"
875 jsr166 1.128 depends="configure-compiler, jsr166yjar"
876 dl 1.76 description="Compiles extra166y sources">
877    
878 jsr166 1.114 <mkdir dir="${build.extra166y.classes.dir}"/>
879 dl 1.76
880 jsr166 1.103 <javac srcdir="${topsrc.dir}"
881 jsr166 1.114 destdir="${build.extra166y.classes.dir}"
882 jsr166 1.103 debug="${build.debug}"
883     debuglevel="${build.debuglevel}"
884     deprecation="${build.deprecation}"
885 jsr166 1.119 bootclasspath="@{jsr166y.jar}:${bootclasspath6}"
886 jsr166 1.105 classpath=""
887 jsr166 1.107 source="6"
888 jsr166 1.103 includeAntRuntime="false"
889     includeJavaRuntime="false"
890     executable="${javac7}"
891     fork="true">
892 dl 1.76
893 jsr166 1.103 <include name="extra166y/**/*.java"/>
894 dl 1.83 <compilerarg value="-XDignore.symbol.file=true"/>
895 jsr166 1.103 <compilerarg value="-Xlint:all,-unchecked,-rawtypes,-serial"/>
896 jsr166 1.118 <compilerarg line="${build.args}"/>
897 dl 1.76
898     </javac>
899     </target>
900    
901    
902 jsr166 1.128 <target name="extra166yjar"
903 dl 1.76 depends="extra166ycompile"
904     description="Builds library jar from compiled sources">
905    
906 jsr166 1.106 <jar destfile="${extra166y.jar}" index="true">
907 jsr166 1.114 <fileset dir="${build.extra166y.classes.dir}"/>
908 dl 1.76 </jar>
909    
910     </target>
911    
912    
913     <target name="extra166ydocs"
914 jsr166 1.107 description="Builds javadocs to build dir">
915 dl 1.76
916 jsr166 1.127 <delete dir="${extra166ydocs.dir}"/>
917     <mkdir dir="${extra166ydocs.dir}"/>
918 dl 1.76
919 jsr166 1.127 <javadoc destdir="${extra166ydocs.dir}"
920 jsr166 1.107 packagenames="extra166y.*"
921 jsr166 1.152 link="${java.api.url}"
922 jsr166 1.130 access="${build.javadoc.access}"
923 jsr166 1.119 sourcepath="${topsrc.dir}:${jdk6src.dir}"
924     bootclasspath="${bootclasspath6}"
925 jsr166 1.107 source="6"
926 jsr166 1.118 executable="${javadoc7}">
927 jsr166 1.152 <arg line="-Xdocrootparent ${java.docroot.url}"/>
928 jsr166 1.118 <arg value="-XDignore.symbol.file=true"/>
929 dl 1.76
930 jsr166 1.118 </javadoc>
931 dl 1.76 </target>
932    
933    
934     <target name="extra166ydist"
935 jsr166 1.125 depends="extra166ydist-jar, extra166ydist-docs"
936 dl 1.76 description="Puts all distributable products in single hierarchy"/>
937    
938    
939     <target name="extra166yclean"
940 jsr166 1.109 description="Removes all extra166y build products">
941 dl 1.76
942     <delete dir="${build.extra166y.dir}"/>
943    
944     </target>
945    
946    
947     <target name="extra166ydist-jar"
948 jsr166 1.128 depends="extra166yclean, extra166yjar">
949 jsr166 1.106 <copy file="${extra166y.jar}" todir="${dist.dir}"/>
950 jsr166 1.125 </target>
951 dl 1.76
952 jsr166 1.125 <target name="extra166ydist-docs"
953     depends="extra166yclean, extra166ydocs">
954 jsr166 1.127 <mirror-dir src="${extra166ydocs.dir}" dst="${dist.extra166ydocs.dir}"/>
955 dl 1.76 </target>
956    
957 dl 1.90 <!-- jsr166e -->
958    
959 jsr166 1.144 <property name="build.jsr166e.java.version" value="6"/>
960     <property name="build.jsr166e.javac" value="${javac6}"/>
961    
962 dl 1.90 <target name="jsr166ecompile"
963 jsr166 1.94 depends="configure-compiler"
964 dl 1.90 description="Compiles jsr166e sources">
965    
966 jsr166 1.114 <mkdir dir="${build.jsr166e.classes.dir}"/>
967 dl 1.90
968 jsr166 1.95 <javac srcdir="${topsrc.dir}"
969 jsr166 1.114 destdir="${build.jsr166e.classes.dir}"
970 jsr166 1.94 debug="${build.debug}"
971     debuglevel="${build.debuglevel}"
972     deprecation="${build.deprecation}"
973 jsr166 1.144 source="${build.jsr166e.java.version}"
974 jsr166 1.94 classpath=""
975     includeAntRuntime="false"
976     includeJavaRuntime="false"
977 jsr166 1.144 executable="${build.jsr166e.javac}"
978 jsr166 1.94 fork="true">
979 dl 1.90
980 jsr166 1.95 <include name="jsr166e/**/*.java"/>
981 dl 1.90 <compilerarg value="-XDignore.symbol.file=true"/>
982 jsr166 1.94 <compilerarg value="-Xlint:all"/>
983 jsr166 1.118 <compilerarg line="${build.args}"/>
984 dl 1.90
985     </javac>
986     </target>
987    
988 jsr166 1.150 <!-- jsr166e: find doclint errors -->
989     <target name="jsr166edoclint">
990    
991     <mkdir dir="${build.jsr166e.classes.dir}"/>
992    
993     <javac srcdir="${topsrc.dir}"
994     destdir="${build.jsr166e.classes.dir}"
995     debug="${build.debug}"
996     debuglevel="${build.debuglevel}"
997     deprecation="${build.deprecation}"
998     source="${build.jsr166e.java.version}"
999     classpath=""
1000     bootclasspath="${bootclasspath7}"
1001     includeAntRuntime="false"
1002     includeJavaRuntime="false"
1003     executable="${javac8}"
1004     fork="true">
1005    
1006     <include name="jsr166e/**/*.java"/>
1007     <compilerarg value="-XDignore.symbol.file=true"/>
1008     <compilerarg value="-Xlint:all"/>
1009     <compilerarg value="-Xdoclint:all/protected"/>
1010    
1011     </javac>
1012     </target>
1013    
1014 dl 1.90
1015 jsr166 1.128 <target name="jsr166ejar"
1016 dl 1.90 depends="jsr166ecompile"
1017     description="Builds library jar from compiled sources">
1018    
1019 jsr166 1.106 <jar destfile="${jsr166e.jar}" index="true">
1020 jsr166 1.114 <fileset dir="${build.jsr166e.classes.dir}"/>
1021 dl 1.90 </jar>
1022    
1023     </target>
1024    
1025    
1026     <target name="jsr166edocs"
1027 jsr166 1.107 description="Builds javadocs to build dir">
1028 dl 1.90
1029 jsr166 1.127 <delete dir="${jsr166edocs.dir}"/>
1030     <mkdir dir="${jsr166edocs.dir}"/>
1031 dl 1.90
1032 jsr166 1.127 <javadoc destdir="${jsr166edocs.dir}"
1033 jsr166 1.107 packagenames="jsr166e.*"
1034 jsr166 1.152 link="${java.api.url}"
1035 jsr166 1.130 access="${build.javadoc.access}"
1036 jsr166 1.144 sourcepath="${topsrc.dir}:${jdk6src.dir}"
1037     source="${build.jsr166e.java.version}"
1038 jsr166 1.118 executable="${javadoc7}">
1039 jsr166 1.152 <arg line="-Xdocrootparent ${java.docroot.url}"/>
1040 jsr166 1.118 <arg value="-XDignore.symbol.file=true"/>
1041    
1042 jsr166 1.96 </javadoc>
1043 dl 1.90 </target>
1044    
1045    
1046 jsr166 1.144 <target name="jsr166e-test-tck-one-java-version"
1047 jsr166 1.148 depends="jsr166ejar">
1048 jsr166 1.122
1049 jsr166 1.144 <echo message="Testing with jdk${build.jsr166e.java.version} ..."/>
1050    
1051 jsr166 1.122 <run-tck-tests
1052     tck.src.dir="${test.src.dir}/tck-jsr166e"
1053 jsr166 1.144 target="${build.jsr166e.java.version}"
1054 jsr166 1.122 workdir="${build.jsr166e.dir}"
1055     classes="${jsr166e.jar}"/>
1056     </target>
1057    
1058 jsr166 1.144 <target name="jsr166e-test-tck"
1059     description="Runs tck tests for jsr166e for multiple java versions">
1060    
1061     <!-- <antcall target="clean"/> -->
1062     <!-- <antcall target="jsr166e-test-tck-one-java-version"> -->
1063     <!-- <param name="build.jsr166e.java.version" value="8"/> -->
1064     <!-- <param name="build.jsr166e.javac" value="${javac8}"/> -->
1065     <!-- </antcall> -->
1066    
1067     <antcall target="clean"/>
1068     <antcall target="jsr166e-test-tck-one-java-version">
1069     <param name="build.jsr166e.java.version" value="7"/>
1070     <param name="build.jsr166e.javac" value="${javac7}"/>
1071     </antcall>
1072    
1073     <antcall target="clean"/>
1074     <antcall target="jsr166e-test-tck-one-java-version">
1075     <param name="build.jsr166e.java.version" value="6"/>
1076     <param name="build.jsr166e.javac" value="${javac6}"/>
1077     </antcall>
1078     </target>
1079    
1080 jsr166 1.122
1081 jsr166 1.147 <target name="jsr166e-test"
1082     depends="jsr166e-test-tck"
1083     description="Runs all tests for jsr166e">
1084     </target>
1085    
1086 dl 1.90 <target name="jsr166edist"
1087 jsr166 1.125 depends="jsr166edist-jar, jsr166edist-docs"
1088 dl 1.90 description="Puts all distributable products in single hierarchy"/>
1089    
1090    
1091     <target name="jsr166eclean"
1092 jsr166 1.109 description="Removes all jsr166e build products">
1093 dl 1.90 <delete dir="${build.jsr166e.dir}"/>
1094     </target>
1095    
1096    
1097     <target name="jsr166edist-jar"
1098 jsr166 1.128 depends="jsr166eclean, jsr166ejar">
1099 jsr166 1.106 <copy file="${jsr166e.jar}" todir="${dist.dir}"/>
1100 jsr166 1.125 </target>
1101 dl 1.90
1102 jsr166 1.125 <target name="jsr166edist-docs"
1103     depends="jsr166eclean, jsr166edocs">
1104 jsr166 1.127 <mirror-dir src="${jsr166edocs.dir}" dst="${dist.jsr166edocs.dir}"/>
1105 dl 1.90 </target>
1106    
1107 jsr166 1.130
1108     <!-- Find buglets that can be detected by static build tools -->
1109    
1110     <target name="lint">
1111     <antcall target="dists">
1112     <param name="build.javadoc.access" value="private"/>
1113     </antcall>
1114     </target>
1115    
1116    
1117 tim 1.1 </project>