ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/jsr166/jsr166/build.xml
Revision: 1.133
Committed: Sun Feb 3 02:16:08 2013 UTC (11 years, 2 months ago) by jsr166
Content type: text/xml
Branch: MAIN
Changes since 1.132: +2 -0 lines
Log Message:
never compile against jsr166 class files in rt.jar

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