ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/jsr166/jsr166/build.xml
Revision: 1.108
Committed: Sat Jan 19 23:58:12 2013 UTC (11 years, 3 months ago) by jsr166
Content type: text/xml
Branch: MAIN
Changes since 1.107: +16 -87 lines
Log Message:
only one docs target per subdir

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