ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/jsr166/jsr166/build.xml
Revision: 1.107
Committed: Sat Jan 19 23:40:04 2013 UTC (11 years, 3 months ago) by jsr166
Content type: text/xml
Branch: MAIN
Changes since 1.106: +42 -33 lines
Log Message:
javadoc target rewrite continued

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