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

Annotation of /jsr166/build.xml

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.176 - (hide annotations)
Tue Sep 8 16:54:43 2015 UTC (4 years, 3 months ago) by jsr166
Branch: MAIN
Changes since 1.175: +2 -0 lines
File MIME type: text/xml
fix up list of 4jdk7-tck excluded tests

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

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