ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/jsr166/jsr166/build.xml
Revision: 1.118
Committed: Mon Jan 21 01:05:01 2013 UTC (11 years, 3 months ago) by jsr166
Content type: text/xml
Branch: MAIN
Changes since 1.117: +113 -133 lines
Log Message:
yet another ant target reorg

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