ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/jsr166/jsr166/build.xml
Revision: 1.117
Committed: Sun Jan 20 07:43:30 2013 UTC (11 years, 3 months ago) by jsr166
Content type: text/xml
Branch: MAIN
Changes since 1.116: +4 -1 lines
Log Message:
make tck tests fail on error

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