ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/jsr166/jsr166/build.xml
Revision: 1.113
Committed: Sun Jan 20 03:51:38 2013 UTC (11 years, 3 months ago) by jsr166
Content type: text/xml
Branch: MAIN
Changes since 1.112: +1 -1 lines
Log Message:
fiddle with directory layout

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