ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/jsr166/jsr166/build.xml
Revision: 1.134
Committed: Sun Feb 3 02:25:01 2013 UTC (11 years, 3 months ago) by jsr166
Content type: text/xml
Branch: MAIN
Changes since 1.133: +1 -0 lines
Log Message:
add a comment

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 jsr166 1.134 <!-- JDK8+ test classes -->
624 jsr166 1.132 <exclude name="StampedLockTest.java"/>
625     </javac-elements>
626     </run-tck-tests>
627 jsr166 1.97 </target>
628    
629    
630 jsr166 1.99 <target name="4jdk7-test-tck-junit"
631     depends="4jdk7compile"
632     description="Runs tck tests for jsr166-4jdk7 via junit task (experimental)">
633 jsr166 1.97
634     <junit printsummary="true"
635     showoutput="true"
636     errorProperty="junit.failed"
637     failureProperty="junit.failed"
638     includeantruntime="true"
639     jvm="${java7}"
640     fork="true">
641    
642 jsr166 1.99 <jvmarg value="-Xbootclasspath/p:${4jdk7product.jar}"/>
643 jsr166 1.97 <jvmarg value="-server"/>
644 jsr166 1.92
645 jsr166 1.97 <classpath>
646     <pathelement location="${junit.jar}"/>
647 jsr166 1.99 <pathelement location="${build.4jdk7.tck.classes.dir}"/>
648 jsr166 1.97 </classpath>
649 jsr166 1.92
650 jsr166 1.97 <formatter type="brief"/>
651 jsr166 1.92
652 jsr166 1.97 <test name="JSR166TestCase" haltonfailure="no">
653     </test>
654 jsr166 1.92
655 jsr166 1.97 </junit>
656 jsr166 1.92 </target>
657    
658 jsr166 1.115 <target name="4jdk7-test-jtreg"
659     depends="4jdk7compile"
660     description="Runs jtreg tests for jsr166-4jdk7 using the jtreg ant task">
661     <delete dir="${build.4jdk7.dir}/JTwork" quiet="true"/>
662     <delete dir="${build.4jdk7.dir}/JTreport" quiet="true"/>
663     <mkdir dir="${build.4jdk7.dir}/JTwork/scratch"/>
664     <mkdir dir="${build.4jdk7.dir}/JTreport"/>
665     <jtreg dir="${jtreg.src.dir}"
666     jdk="${jdk7.home}"
667     workDir="${build.4jdk7.dir}/JTwork"
668     reportDir="${build.4jdk7.dir}/JTreport">
669    
670     <arg value="-Xbootclasspath/p:${4jdk7product.jar}"/>
671     <arg value="-agentvm"/>
672     <arg value="-v:nopass,fail"/>
673     <arg value="-vmoptions:-esa -ea"/>
674     <arg value="-automatic"/>
675     <arg value="-k:!ignore"/>
676     </jtreg>
677     </target>
678    
679    
680     <target name="4jdk7-test"
681     depends="4jdk7-test-tck, 4jdk7-test-jtreg"
682     description="Runs tck and jtreg tests for jsr166-4jdk7">
683     </target>
684    
685 jsr166 1.92
686 jsr166 1.99 <target name="4jdk7docs"
687 jsr166 1.102 description="Builds javadocs for src/jdk7 to dist dir">
688 jsr166 1.92
689 jsr166 1.127 <delete dir="${4jdk7docs.dir}"/>
690     <mkdir dir="${4jdk7docs.dir}"/>
691 jsr166 1.92
692 jsr166 1.127 <javadoc destdir="${4jdk7docs.dir}"
693 jsr166 1.92 packagenames="none"
694     link="${jdkapi7docs.url}"
695 jsr166 1.99 overview="${4jdk7src.dir}/intro.html"
696 jsr166 1.130 access="${build.javadoc.access}"
697 jsr166 1.119 sourcepath="${4jdk7src.dir}:${jdk7src.dir}"
698 jsr166 1.92 classpath=""
699 jsr166 1.99 executable="${javadoc7}">
700     <fileset dir="${4jdk7src.dir}" defaultexcludes="yes">
701 jsr166 1.92 <include name="**/*.java"/>
702     </fileset>
703 jsr166 1.119 <arg value="-XDignore.symbol.file=true"/>
704 jsr166 1.92 </javadoc>
705     </target>
706    
707    
708 jsr166 1.99 <target name="4jdk7dist"
709 jsr166 1.125 depends="4jdk7dist-jar, 4jdk7dist-docs"
710 jsr166 1.92 description="Puts all distributable products in single hierarchy"/>
711    
712    
713 jsr166 1.99 <target name="4jdk7clean"
714 jsr166 1.109 description="Removes all 4jdk7 build products">
715 jsr166 1.92
716 jsr166 1.99 <delete dir="${build.4jdk7.dir}"/>
717 jsr166 1.92
718     </target>
719    
720    
721 jsr166 1.99 <target name="4jdk7dist-clean"
722 jsr166 1.92 description="Removes all build and distribution products">
723    
724     </target>
725    
726 jsr166 1.99 <target name="4jdk7dist-jar"
727 jsr166 1.128 depends="4jdk7clean, 4jdk7jar">
728 jsr166 1.125 <copy file="${4jdk7product.jar}" todir="${dist.dir}"/>
729     </target>
730 jsr166 1.92
731    
732 jsr166 1.125 <target name="4jdk7dist-docs"
733     depends="4jdk7clean, 4jdk7docs">
734 jsr166 1.127 <mirror-dir src="${4jdk7docs.dir}" dst="${dist.4jdk7docs.dir}"/>
735 jsr166 1.92 </target>
736    
737 jsr166 1.109
738 dl 1.70 <!-- jsr166x -->
739    
740     <target name="jsr166xcompile"
741 jsr166 1.103 depends="configure-compiler"
742 jsr166 1.105 description="Compiles jsr166x sources to build dir">
743 dl 1.70
744 jsr166 1.114 <mkdir dir="${build.jsr166x.classes.dir}"/>
745 dl 1.70
746 jsr166 1.105 <javac srcdir="${topsrc.dir}"
747 jsr166 1.114 destdir="${build.jsr166x.classes.dir}"
748 jsr166 1.105 debug="${build.debug}"
749     debuglevel="${build.debuglevel}"
750     deprecation="${build.deprecation}"
751     classpath=""
752 jsr166 1.119 bootclasspath="${bootclasspath6}"
753 jsr166 1.107 source="5"
754 jsr166 1.105 includeAntRuntime="false"
755     includeJavaRuntime="false"
756     executable="${javac7}"
757     fork="true">
758 dl 1.70
759 jsr166 1.105 <include name="jsr166x/**/*.java"/>
760 dl 1.84 <compilerarg value="-XDignore.symbol.file=true"/>
761 jsr166 1.105 <compilerarg value="-Xlint:all,-unchecked,-rawtypes"/>
762 jsr166 1.118 <compilerarg line="${build.args}"/>
763 dl 1.70
764     </javac>
765     </target>
766    
767    
768 jsr166 1.128 <target name="jsr166xjar"
769 dl 1.70 depends="jsr166xcompile"
770     description="Builds library jar from compiled sources">
771    
772 jsr166 1.106 <jar destfile="${jsr166x.jar}">
773 jsr166 1.114 <fileset dir="${build.jsr166x.classes.dir}"/>
774 dl 1.70 </jar>
775    
776     </target>
777    
778    
779     <target name="jsr166xdocs"
780 jsr166 1.102 description="Builds javadocs to dist dir">
781 dl 1.70
782 jsr166 1.127 <delete dir="${jsr166xdocs.dir}"/>
783     <mkdir dir="${jsr166xdocs.dir}"/>
784 dl 1.70
785 jsr166 1.127 <javadoc destdir="${jsr166xdocs.dir}"
786 jsr166 1.107 packagenames="jsr166x.*"
787 jsr166 1.91 link="${jdkapidocs.url}"
788 jsr166 1.130 access="${build.javadoc.access}"
789 jsr166 1.119 sourcepath="${topsrc.dir}:${jdk6src.dir}"
790     bootclasspath="${bootclasspath6}"
791 jsr166 1.107 source="5"
792 jsr166 1.118 executable="${javadoc7}">
793     <arg value="-XDignore.symbol.file=true"/>
794 dl 1.70
795 jsr166 1.118 </javadoc>
796 dl 1.70 </target>
797    
798    
799     <target name="jsr166xdist"
800 jsr166 1.125 depends="jsr166xdist-jar, jsr166xdist-docs"
801 dl 1.70 description="Puts all distributable products in single hierarchy"/>
802    
803    
804     <target name="jsr166xclean"
805 jsr166 1.109 description="Removes all jsr166x build products">
806 dl 1.70
807     <delete dir="${build.jsr166x.dir}"/>
808    
809     </target>
810    
811    
812     <target name="jsr166xdist-clean"
813     description="Removes all build and distribution products">
814    
815     </target>
816    
817    
818     <target name="jsr166xdist-jar"
819 jsr166 1.128 depends="jsr166xclean, jsr166xjar">
820 jsr166 1.106 <copy file="${jsr166x.jar}" todir="${dist.dir}"/>
821 jsr166 1.125 </target>
822 dl 1.70
823 jsr166 1.125 <target name="jsr166xdist-docs"
824     depends="jsr166xclean, jsr166xdocs">
825 jsr166 1.127 <mirror-dir src="${jsr166xdocs.dir}" dst="${dist.jsr166xdocs.dir}"/>
826 dl 1.70 </target>
827    
828 dl 1.74 <!-- jsr166y -->
829    
830    
831     <target name="jsr166ycompile"
832 jsr166 1.103 depends="configure-compiler"
833 dl 1.74 description="Compiles jsr166y sources">
834    
835 jsr166 1.114 <mkdir dir="${build.jsr166y.classes.dir}"/>
836 dl 1.74
837 jsr166 1.103 <javac srcdir="${topsrc.dir}"
838 jsr166 1.114 destdir="${build.jsr166y.classes.dir}"
839 jsr166 1.103 debug="${build.debug}"
840     debuglevel="${build.debuglevel}"
841     deprecation="${build.deprecation}"
842 jsr166 1.107 source="6"
843 jsr166 1.103 classpath=""
844 jsr166 1.119 bootclasspath="${bootclasspath6}"
845 jsr166 1.103 includeAntRuntime="false"
846     includeJavaRuntime="false"
847     executable="${javac7}"
848     fork="true">
849 dl 1.74
850 jsr166 1.103 <include name="jsr166y/**/*.java"/>
851 dl 1.83 <compilerarg value="-XDignore.symbol.file=true"/>
852 jsr166 1.103 <compilerarg value="-Xlint:all"/>
853 jsr166 1.118 <compilerarg line="${build.args}"/>
854    
855 dl 1.74 </javac>
856     </target>
857    
858    
859 jsr166 1.128 <target name="jsr166yjar"
860 dl 1.74 depends="jsr166ycompile"
861     description="Builds library jar from compiled sources">
862    
863 jsr166 1.106 <jar destfile="${jsr166y.jar}" index="true">
864 jsr166 1.114 <fileset dir="${build.jsr166y.classes.dir}"/>
865 dl 1.74 </jar>
866    
867     </target>
868    
869    
870     <target name="jsr166ydocs"
871 jsr166 1.102 description="Builds javadocs to dist dir">
872 dl 1.74
873 jsr166 1.127 <delete dir="${jsr166ydocs.dir}"/>
874     <mkdir dir="${jsr166ydocs.dir}"/>
875 dl 1.74
876 jsr166 1.127 <javadoc destdir="${jsr166ydocs.dir}"
877 jsr166 1.107 packagenames="jsr166y.*"
878 jsr166 1.91 link="${jdkapidocs.url}"
879 jsr166 1.130 access="${build.javadoc.access}"
880 jsr166 1.119 sourcepath="${topsrc.dir}:${jdk6src.dir}"
881     bootclasspath="${bootclasspath6}"
882 jsr166 1.107 source="6"
883 jsr166 1.118 executable="${javadoc7}">
884     <arg value="-XDignore.symbol.file=true"/>
885 dl 1.74
886 jsr166 1.118 </javadoc>
887 dl 1.74 </target>
888    
889    
890     <target name="jsr166ydist"
891 jsr166 1.125 depends="jsr166ydist-jar, jsr166ydist-docs"
892 dl 1.74 description="Puts all distributable products in single hierarchy"/>
893    
894    
895     <target name="jsr166yclean"
896 jsr166 1.109 description="Removes all jsr166y build products">
897 dl 1.74
898     <delete dir="${build.jsr166y.dir}"/>
899    
900     </target>
901    
902    
903     <target name="jsr166ydist-clean"
904     description="Removes all build and distribution products">
905    
906     </target>
907    
908     <target name="jsr166ydist-jar"
909 jsr166 1.128 depends="jsr166yclean, jsr166yjar">
910 jsr166 1.106 <copy file="${jsr166y.jar}" todir="${dist.dir}"/>
911 jsr166 1.125 </target>
912 dl 1.74
913 jsr166 1.125 <target name="jsr166ydist-docs"
914     depends="jsr166yclean, jsr166ydocs">
915 jsr166 1.127 <mirror-dir src="${jsr166ydocs.dir}" dst="${dist.jsr166ydocs.dir}"/>
916 dl 1.74 </target>
917    
918 dl 1.90
919 dl 1.76 <!-- extra166y -->
920    
921    
922     <target name="extra166ycompile"
923 jsr166 1.128 depends="configure-compiler, jsr166yjar"
924 dl 1.76 description="Compiles extra166y sources">
925    
926 jsr166 1.114 <mkdir dir="${build.extra166y.classes.dir}"/>
927 dl 1.76
928 jsr166 1.103 <javac srcdir="${topsrc.dir}"
929 jsr166 1.114 destdir="${build.extra166y.classes.dir}"
930 jsr166 1.103 debug="${build.debug}"
931     debuglevel="${build.debuglevel}"
932     deprecation="${build.deprecation}"
933 jsr166 1.119 bootclasspath="@{jsr166y.jar}:${bootclasspath6}"
934 jsr166 1.105 classpath=""
935 jsr166 1.107 source="6"
936 jsr166 1.103 includeAntRuntime="false"
937     includeJavaRuntime="false"
938     executable="${javac7}"
939     fork="true">
940 dl 1.76
941 jsr166 1.103 <include name="extra166y/**/*.java"/>
942 dl 1.83 <compilerarg value="-XDignore.symbol.file=true"/>
943 jsr166 1.103 <compilerarg value="-Xlint:all,-unchecked,-rawtypes,-serial"/>
944 jsr166 1.118 <compilerarg line="${build.args}"/>
945 dl 1.76
946     </javac>
947     </target>
948    
949    
950 jsr166 1.128 <target name="extra166yjar"
951 dl 1.76 depends="extra166ycompile"
952     description="Builds library jar from compiled sources">
953    
954 jsr166 1.106 <jar destfile="${extra166y.jar}" index="true">
955 jsr166 1.114 <fileset dir="${build.extra166y.classes.dir}"/>
956 dl 1.76 </jar>
957    
958     </target>
959    
960    
961     <target name="extra166ydocs"
962 jsr166 1.107 description="Builds javadocs to build dir">
963 dl 1.76
964 jsr166 1.127 <delete dir="${extra166ydocs.dir}"/>
965     <mkdir dir="${extra166ydocs.dir}"/>
966 dl 1.76
967 jsr166 1.127 <javadoc destdir="${extra166ydocs.dir}"
968 jsr166 1.107 packagenames="extra166y.*"
969 jsr166 1.91 link="${jdkapidocs.url}"
970 jsr166 1.130 access="${build.javadoc.access}"
971 jsr166 1.119 sourcepath="${topsrc.dir}:${jdk6src.dir}"
972     bootclasspath="${bootclasspath6}"
973 jsr166 1.107 source="6"
974 jsr166 1.118 executable="${javadoc7}">
975     <arg value="-XDignore.symbol.file=true"/>
976 dl 1.76
977 jsr166 1.118 </javadoc>
978 dl 1.76 </target>
979    
980    
981     <target name="extra166ydist"
982 jsr166 1.125 depends="extra166ydist-jar, extra166ydist-docs"
983 dl 1.76 description="Puts all distributable products in single hierarchy"/>
984    
985    
986     <target name="extra166yclean"
987 jsr166 1.109 description="Removes all extra166y build products">
988 dl 1.76
989     <delete dir="${build.extra166y.dir}"/>
990    
991     </target>
992    
993    
994     <target name="extra166ydist-clean"
995     description="Removes all build and distribution products">
996    
997     </target>
998    
999     <target name="extra166ydist-jar"
1000 jsr166 1.128 depends="extra166yclean, extra166yjar">
1001 jsr166 1.106 <copy file="${extra166y.jar}" todir="${dist.dir}"/>
1002 jsr166 1.125 </target>
1003 dl 1.76
1004 jsr166 1.125 <target name="extra166ydist-docs"
1005     depends="extra166yclean, extra166ydocs">
1006 jsr166 1.127 <mirror-dir src="${extra166ydocs.dir}" dst="${dist.extra166ydocs.dir}"/>
1007 dl 1.76 </target>
1008    
1009 dl 1.90 <!-- jsr166e -->
1010    
1011     <target name="jsr166ecompile"
1012 jsr166 1.94 depends="configure-compiler"
1013 dl 1.90 description="Compiles jsr166e sources">
1014    
1015 jsr166 1.114 <mkdir dir="${build.jsr166e.classes.dir}"/>
1016 dl 1.90
1017 jsr166 1.95 <javac srcdir="${topsrc.dir}"
1018 jsr166 1.114 destdir="${build.jsr166e.classes.dir}"
1019 jsr166 1.94 debug="${build.debug}"
1020     debuglevel="${build.debuglevel}"
1021     deprecation="${build.deprecation}"
1022 jsr166 1.107 source="7"
1023 jsr166 1.94 classpath=""
1024     includeAntRuntime="false"
1025     includeJavaRuntime="false"
1026     executable="${javac7}"
1027     fork="true">
1028 dl 1.90
1029 jsr166 1.95 <include name="jsr166e/**/*.java"/>
1030 dl 1.90 <compilerarg value="-XDignore.symbol.file=true"/>
1031 jsr166 1.94 <compilerarg value="-Xlint:all"/>
1032 jsr166 1.118 <compilerarg line="${build.args}"/>
1033 dl 1.90
1034     </javac>
1035     </target>
1036    
1037    
1038 jsr166 1.128 <target name="jsr166ejar"
1039 dl 1.90 depends="jsr166ecompile"
1040     description="Builds library jar from compiled sources">
1041    
1042 jsr166 1.106 <jar destfile="${jsr166e.jar}" index="true">
1043 jsr166 1.114 <fileset dir="${build.jsr166e.classes.dir}"/>
1044 dl 1.90 </jar>
1045    
1046     </target>
1047    
1048    
1049     <target name="jsr166edocs"
1050 jsr166 1.107 description="Builds javadocs to build dir">
1051 dl 1.90
1052 jsr166 1.127 <delete dir="${jsr166edocs.dir}"/>
1053     <mkdir dir="${jsr166edocs.dir}"/>
1054 dl 1.90
1055 jsr166 1.127 <javadoc destdir="${jsr166edocs.dir}"
1056 jsr166 1.107 packagenames="jsr166e.*"
1057     link="${jdkapidocs.url}"
1058 jsr166 1.130 access="${build.javadoc.access}"
1059 jsr166 1.119 sourcepath="${topsrc.dir}:${jdk7src.dir}"
1060 jsr166 1.107 source="7"
1061 jsr166 1.118 executable="${javadoc7}">
1062     <arg value="-XDignore.symbol.file=true"/>
1063    
1064 jsr166 1.96 </javadoc>
1065 dl 1.90 </target>
1066    
1067    
1068 jsr166 1.122 <target name="jsr166e-test-tck"
1069 jsr166 1.128 depends="jsr166ejar"
1070 jsr166 1.122 description="Runs tck tests for jsr166e">
1071    
1072     <run-tck-tests
1073     tck.src.dir="${test.src.dir}/tck-jsr166e"
1074     source="7"
1075     target="8"
1076     workdir="${build.jsr166e.dir}"
1077     classes="${jsr166e.jar}"/>
1078     </target>
1079    
1080    
1081 dl 1.90 <target name="jsr166edist"
1082 jsr166 1.125 depends="jsr166edist-jar, jsr166edist-docs"
1083 dl 1.90 description="Puts all distributable products in single hierarchy"/>
1084    
1085    
1086     <target name="jsr166eclean"
1087 jsr166 1.109 description="Removes all jsr166e build products">
1088 dl 1.90 <delete dir="${build.jsr166e.dir}"/>
1089     </target>
1090    
1091    
1092     <target name="jsr166edist-clean"
1093     description="Removes all build and distribution products">
1094    
1095     </target>
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>