ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/jsr166/jsr166/build.xml
Revision: 1.121
Committed: Mon Jan 21 22:03:09 2013 UTC (11 years, 3 months ago) by jsr166
Content type: text/xml
Branch: MAIN
Changes since 1.120: +1 -1 lines
Log Message:
get tck src dependencies right

File Contents

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