ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/jsr166/jsr166/build.xml
Revision: 1.111
Committed: Sun Jan 20 03:34:23 2013 UTC (11 years, 3 months ago) by jsr166
Content type: text/xml
Branch: MAIN
Changes since 1.110: +28 -16 lines
Log Message:
fix compile-tests target

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 <classpath refid="test.classpath"/>
328
329 </javac>
330
331 <javac srcdir="${test.src.dir}"
332 destdir="${build.testcases.dir}"
333 debug="${build.debug}"
334 debuglevel="${build.debuglevel}"
335 deprecation="${build.deprecation}"
336 source="6"
337 classpath="${junit.jar}"
338 bootclasspath="${product.jar}:${bootclasspath6}"
339 includeAntRuntime="false"
340 includeJavaRuntime="false"
341 executable="${javac8}"
342 fork="true">
343
344 <include name="jsr166/test/**/*.java"/>
345
346 <compilerarg line="${build.args}"/>
347 <compilerarg value="-XDignore.symbol.file=true"/>
348 <compilerarg value="-Xlint:all,-unchecked,-rawtypes,-serial,-deprecation"/>
349
350 <classpath refid="test.classpath"/>
351
352 </javac>
353
354 <!--
355 <javac srcdir="${jtreg.src.dir}"
356 destdir="${build.testcases.dir}"
357 debug="${build.debug}"
358 debuglevel="${build.debuglevel}"
359 deprecation="${build.deprecation}"
360 source="${build.sourcelevel}"
361 fork="true">
362
363 <compilerarg value="${bootclasspath.args}"/>
364 <compilerarg line="${build.args}"/>
365 <compilerarg value="-XDignore.symbol.file=true"/>
366
367 <classpath refid="test.classpath"/>
368
369 </javac>
370 -->
371
372 </target>
373
374
375 <target name="run-tests"
376 depends="compile-tests">
377
378 <!-- May be overridden by user.properties -->
379 <property name="testcase" value="*"/>
380
381 <mkdir dir="${build.reports.dir}"/>
382
383 <junit printsummary="true"
384 showoutput="true"
385 errorProperty="junit.failed"
386 failureProperty="junit.failed"
387 dir="${build.reports.dir}"
388 jvm="${java8}"
389 fork="true">
390
391 <jvmarg value="-Xbootclasspath/p:${product.jar}"/>
392 <jvmarg value="-server"/>
393 <jvmarg value="-showversion"/>
394
395 <classpath refid="test.classpath"/>
396
397 <formatter type="xml"/>
398
399 <batchtest todir="${build.reports.dir}" unless="no.test.tck">
400 <fileset dir="${tck.src.dir}">
401 <include name="**/${testcase}Test.java"/>
402 </fileset>
403 </batchtest>
404
405 <batchtest todir="${build.reports.dir}" if="do.test.old">
406 <fileset dir="${test.src.dir}">
407 <include name="jsr166/test/**/${testcase}Test.java"/>
408 </fileset>
409 </batchtest>
410
411 <!--
412 <batchtest todir="${build.reports.dir}" if="do.test.jtreg">
413 <fileset dir="${jtreg.src.dir}">
414 <include name="**/${testcase}Test.java"/>
415 </fileset>
416 </batchtest>
417 -->
418
419 </junit>
420
421 </target>
422
423
424 <target name="report-tests"
425 depends="run-tests">
426
427 <!-- Sets junit.report.format to frames if redirection is present,
428 otherwise sets it to noframes. -->
429 <available property="junit.report.format"
430 value="frames"
431 classname="org.apache.xalan.lib.Redirect"
432 />
433 <property name="junit.report.format" value="noframes"/>
434
435 <junitreport todir="${build.reports.dir}">
436 <fileset dir="${build.reports.dir}">
437 <include name="TEST-*.xml"/>
438 </fileset>
439 <report format="${junit.report.format}" todir="${build.reports.dir}"
440 />
441 </junitreport>
442
443 <fail message="Test Cases Failed" if="junit.failed"/>
444
445 </target>
446
447
448 <target name="configure-compiler">
449
450 <property name="unchecked.option" value="-Xlint:unchecked"/>
451
452 <condition property="warnunchecked.arg" value="${unchecked.option}">
453 <istrue value="${build.warnunchecked}"/>
454 </condition>
455
456 <property name="warnunchecked.arg" value=""/>
457
458
459 <!-- Common options in javac invocations -->
460 <property name="build.args" value="${warnunchecked.arg}"/>
461
462 </target>
463
464
465 <target name="configure-tests"
466 depends="configure-compiler">
467
468 <!-- junit.framework.Protectable is in JUnit 3.8.1 but not in 3.7 -->
469 <available property="junit.available"
470 classname="junit.framework.Protectable"/>
471
472 <!-- Xalan -->
473 <available property="xalan.available"
474 classname="org.apache.xalan.Version"/>
475
476
477 <!-- Ant 1.6beta and later don't need or want this check -->
478 <!--
479 <fail message="Need JUnit 3.8.1 in ${ant.home}${file.separator}lib to run tests"
480 unless="junit.available"/>
481
482 <fail message="Need Xalan 2.5.1 jar in ${ant.home}${file.separator}lib to run tests"
483 unless="xalan.available"/>
484 -->
485
486 </target>
487
488
489 <!-- Various demos and test programs -->
490
491
492 <target name="loops" depends="configure-compiler"
493 description="Benchmark from Doug Lea's AQS paper">
494
495 <mkdir dir="${build.loops.dir}"/>
496
497 <javac srcdir="${loops.src.dir}"
498 destdir="${build.loops.dir}"
499 debug="${build.debug}"
500 debuglevel="${build.debuglevel}"
501 deprecation="${build.deprecation}"
502 source="${build.sourcelevel}"
503 fork="true">
504
505 <compilerarg line="${build.args}"/>
506 <classpath refid="loops.classpath"/>
507 <compilerarg value="-XDignore.symbol.file=true"/>
508
509 </javac>
510
511 <java classname="ALoops" fork="true">
512 <classpath refid="loops.classpath"/>
513 </java>
514
515 </target>
516
517
518 <!-- jsr166 4jdk7 -->
519
520
521 <target name="4jdk7compile"
522 depends="configure-compiler"
523 description="Compiles src/jdk7 sources, targeting jdk7">
524
525 <mkdir dir="${build.4jdk7.classes.dir}"/>
526
527 <javac srcdir="${4jdk7src.dir}"
528 destdir="${build.4jdk7.classes.dir}"
529 debug="${build.debug}"
530 debuglevel="${build.debuglevel}"
531 deprecation="${build.deprecation}"
532 source="6"
533 classpath=""
534 bootclasspath="${bootclasspath6}"
535 includeAntRuntime="false"
536 includeJavaRuntime="false"
537 executable="${javac7}"
538 fork="true">
539
540 <include name="**/*.java"/>
541 <compilerarg line="${build.args}"/>
542 <compilerarg value="-XDignore.symbol.file=true"/>
543 <compilerarg value="-Xlint:all"/>
544
545 </javac>
546
547 <jar destfile="${4jdk7product.jar}" index="true">
548 <fileset dir="${build.4jdk7.classes.dir}"/>
549 </jar>
550
551 <mkdir dir="${build.4jdk7.tck.classes.dir}"/>
552
553 <javac srcdir="${tck.src.dir}"
554 destdir="${build.4jdk7.tck.classes.dir}"
555 debug="${build.debug}"
556 debuglevel="${build.debuglevel}"
557 deprecation="${build.deprecation}"
558 source="6"
559 classpath="${junit.jar}"
560 bootclasspath="${4jdk7product.jar}:${bootclasspath6}"
561 includeAntRuntime="false"
562 includeJavaRuntime="false"
563 executable="${javac7}"
564 fork="true">
565
566 <include name="**/*.java"/>
567 <compilerarg line="${build.args}"/>
568 <compilerarg value="-XDignore.symbol.file=true"/>
569 <compilerarg value="-Xlint:all,-unchecked,-rawtypes,-serial,-deprecation"/>
570
571 </javac>
572
573 </target>
574
575
576 <target name="4jdk7-test-tck"
577 depends="4jdk7compile"
578 description="Runs tck tests for jsr166-4jdk7 directly">
579 <run-tck-tests
580 jvm="${java7}"
581 tck.classes="${build.4jdk7.tck.classes.dir}"
582 product.jar="${4jdk7product.jar}"/>
583 </target>
584
585
586 <target name="4jdk7-test-tck-junit"
587 depends="4jdk7compile"
588 description="Runs tck tests for jsr166-4jdk7 via junit task (experimental)">
589
590 <junit printsummary="true"
591 showoutput="true"
592 errorProperty="junit.failed"
593 failureProperty="junit.failed"
594 includeantruntime="true"
595 jvm="${java7}"
596 fork="true">
597
598 <jvmarg value="-Xbootclasspath/p:${4jdk7product.jar}"/>
599 <jvmarg value="-server"/>
600
601 <classpath>
602 <pathelement location="${junit.jar}"/>
603 <pathelement location="${build.4jdk7.tck.classes.dir}"/>
604 </classpath>
605
606 <formatter type="brief"/>
607
608 <test name="JSR166TestCase" haltonfailure="no">
609 </test>
610
611 </junit>
612 </target>
613
614
615 <target name="4jdk7docs"
616 description="Builds javadocs for src/jdk7 to dist dir">
617
618 <delete dir="${dist.4jdk7.docs.dir}"/>
619 <mkdir dir="${dist.4jdk7.docs.dir}"/>
620
621 <javadoc destdir="${dist.4jdk7.docs.dir}"
622 packagenames="none"
623 link="${jdkapi7docs.url}"
624 overview="${4jdk7src.dir}/intro.html"
625 sourcepath="${4jdk7src.dir}:${jdk7src.dir}"
626 classpath=""
627 executable="${javadoc7}">
628 <arg value="-XDignore.symbol.file=true"/>
629 <fileset dir="${4jdk7src.dir}" defaultexcludes="yes">
630 <include name="**/*.java"/>
631 </fileset>
632 </javadoc>
633
634 </target>
635
636
637 <target name="4jdk7dist"
638 depends="4jdk7dist-clean, 4jdk7dist-jar, 4jdk7docs"
639 description="Puts all distributable products in single hierarchy"/>
640
641
642
643 <target name="4jdk7clean"
644 description="Removes all 4jdk7 build products">
645
646 <delete dir="${build.4jdk7.dir}"/>
647
648 </target>
649
650
651
652 <target name="4jdk7dist-clean"
653 description="Removes all build and distribution products">
654
655 </target>
656
657 <target name="4jdk7dist-jar"
658 depends="4jdk7clean, 4jdk7compile">
659
660 <copy file="${4jdk7product.jar}" todir="${dist.dir}"/>
661
662 </target>
663
664
665 <!-- jsr166x -->
666
667 <target name="jsr166xcompile"
668 depends="configure-compiler"
669 description="Compiles jsr166x sources to build dir">
670
671 <mkdir dir="${build.jsr166x.dir}"/>
672
673 <javac srcdir="${topsrc.dir}"
674 destdir="${build.jsr166x.dir}"
675 debug="${build.debug}"
676 debuglevel="${build.debuglevel}"
677 deprecation="${build.deprecation}"
678 classpath=""
679 source="5"
680 bootclasspath="${bootclasspath6}"
681 includeAntRuntime="false"
682 includeJavaRuntime="false"
683 executable="${javac7}"
684 fork="true">
685
686 <include name="jsr166x/**/*.java"/>
687 <compilerarg line="${build.args}"/>
688 <compilerarg value="-XDignore.symbol.file=true"/>
689 <compilerarg value="-Xlint:all,-unchecked,-rawtypes"/>
690
691 </javac>
692
693 </target>
694
695
696
697 <target name="jsr166xjar"
698 depends="jsr166xcompile"
699 description="Builds library jar from compiled sources">
700
701 <jar destfile="${jsr166x.jar}">
702 <fileset dir="${build.jsr166x.dir}"/>
703 </jar>
704
705 </target>
706
707
708
709 <target name="jsr166xdocs"
710 description="Builds javadocs to dist dir">
711
712 <delete dir="${dist.jsr166xjavadocs.dir}"/>
713 <mkdir dir="${dist.jsr166xjavadocs.dir}"/>
714
715 <javadoc destdir="${dist.jsr166xjavadocs.dir}"
716 packagenames="jsr166x.*"
717 link="${jdkapidocs.url}"
718 source="5"
719 bootclasspath="${bootclasspath6}"
720 sourcepath="${topsrc.dir}:${jdk6src.dir}"
721 executable="${javadoc7}"
722 additionalparam="-XDignore.symbol.file=true" />
723
724 </target>
725
726
727 <target name="jsr166xdist"
728 depends="jsr166xdist-clean, jsr166xdist-jar, jsr166xdocs"
729 description="Puts all distributable products in single hierarchy"/>
730
731
732
733 <target name="jsr166xclean"
734 description="Removes all jsr166x build products">
735
736 <delete dir="${build.jsr166x.dir}"/>
737
738 </target>
739
740
741
742 <target name="jsr166xdist-clean"
743 description="Removes all build and distribution products">
744
745 </target>
746
747
748 <target name="jsr166xdist-jar"
749 depends="jsr166xclean, jsr166xjar">
750
751 <copy file="${jsr166x.jar}" todir="${dist.dir}"/>
752
753 </target>
754
755 <!-- jsr166y -->
756
757
758 <target name="jsr166ycompile"
759 depends="configure-compiler"
760 description="Compiles jsr166y sources">
761
762 <mkdir dir="${build.jsr166y.dir}"/>
763
764 <javac srcdir="${topsrc.dir}"
765 destdir="${build.jsr166y.dir}"
766 debug="${build.debug}"
767 debuglevel="${build.debuglevel}"
768 deprecation="${build.deprecation}"
769 source="6"
770 classpath=""
771 bootclasspath="${bootclasspath6}"
772 includeAntRuntime="false"
773 includeJavaRuntime="false"
774 executable="${javac7}"
775 fork="true">
776
777 <include name="jsr166y/**/*.java"/>
778 <compilerarg line="${build.args}"/>
779 <compilerarg value="-XDignore.symbol.file=true"/>
780 <compilerarg value="-Xlint:all"/>
781 </javac>
782 </target>
783
784
785 <target name="jsr166yjar"
786 depends="jsr166ycompile"
787 description="Builds library jar from compiled sources">
788
789 <jar destfile="${jsr166y.jar}" index="true">
790 <fileset dir="${build.jsr166y.dir}"/>
791 </jar>
792
793 </target>
794
795
796
797 <target name="jsr166ydocs"
798 description="Builds javadocs to dist dir">
799
800 <delete dir="${dist.jsr166yjavadocs.dir}"/>
801 <mkdir dir="${dist.jsr166yjavadocs.dir}"/>
802
803 <javadoc destdir="${dist.jsr166yjavadocs.dir}"
804 packagenames="jsr166y.*"
805 link="${jdkapidocs.url}"
806 source="6"
807 bootclasspath="${bootclasspath6}"
808 sourcepath="${topsrc.dir}:${jdk6src.dir}"
809 executable="${javadoc7}"
810 additionalparam="-XDignore.symbol.file=true" />
811
812 </target>
813
814
815 <target name="jsr166ydist"
816 depends="jsr166ydist-clean, jsr166ydist-jar, jsr166ydocs"
817 description="Puts all distributable products in single hierarchy"/>
818
819
820
821 <target name="jsr166yclean"
822 description="Removes all jsr166y build products">
823
824 <delete dir="${build.jsr166y.dir}"/>
825
826 </target>
827
828
829
830 <target name="jsr166ydist-clean"
831 description="Removes all build and distribution products">
832
833 </target>
834
835 <target name="jsr166ydist-jar"
836 depends="jsr166yclean, jsr166yjar">
837
838 <copy file="${jsr166y.jar}" todir="${dist.dir}"/>
839
840 </target>
841
842
843 <!-- extra166y -->
844
845
846 <target name="extra166ycompile"
847 depends="configure-compiler, jsr166yjar"
848 description="Compiles extra166y sources">
849
850 <mkdir dir="${build.extra166y.dir}"/>
851
852 <javac srcdir="${topsrc.dir}"
853 destdir="${build.extra166y.dir}"
854 debug="${build.debug}"
855 debuglevel="${build.debuglevel}"
856 deprecation="${build.deprecation}"
857 classpath=""
858 source="6"
859 bootclasspath="${jsr166y.jar}:${bootclasspath6}"
860 includeAntRuntime="false"
861 includeJavaRuntime="false"
862 executable="${javac7}"
863 fork="true">
864
865 <include name="extra166y/**/*.java"/>
866 <compilerarg line="${build.args}"/>
867 <compilerarg value="-XDignore.symbol.file=true"/>
868 <compilerarg value="-Xlint:all,-unchecked,-rawtypes,-serial"/>
869
870 </javac>
871
872 </target>
873
874
875
876 <target name="extra166yjar"
877 depends="extra166ycompile"
878 description="Builds library jar from compiled sources">
879
880 <jar destfile="${extra166y.jar}" index="true">
881 <fileset dir="${build.extra166y.dir}"/>
882 </jar>
883
884 </target>
885
886
887
888 <target name="extra166ydocs"
889 description="Builds javadocs to build dir">
890
891 <delete dir="${dist.extra166yjavadocs.dir}"/>
892 <mkdir dir="${dist.extra166yjavadocs.dir}"/>
893
894 <javadoc destdir="${dist.extra166yjavadocs.dir}"
895 packagenames="extra166y.*"
896 link="${jdkapidocs.url}"
897 source="6"
898 bootclasspath="${bootclasspath6}"
899 sourcepath="${topsrc.dir}:${jdk6src.dir}"
900 executable="${javadoc7}"
901 additionalparam="-XDignore.symbol.file=true" />
902
903 </target>
904
905
906 <target name="extra166ydist"
907 depends="extra166ydist-clean, extra166ydist-jar, extra166ydocs"
908 description="Puts all distributable products in single hierarchy"/>
909
910
911
912 <target name="extra166yclean"
913 description="Removes all extra166y build products">
914
915 <delete dir="${build.extra166y.dir}"/>
916
917 </target>
918
919
920
921 <target name="extra166ydist-clean"
922 description="Removes all build and distribution products">
923
924 </target>
925
926 <target name="extra166ydist-jar"
927 depends="extra166yclean, extra166yjar">
928
929 <copy file="${extra166y.jar}" todir="${dist.dir}"/>
930
931 </target>
932
933 <!-- jsr166e -->
934
935 <target name="jsr166ecompile"
936 depends="configure-compiler"
937 description="Compiles jsr166e sources">
938
939 <mkdir dir="${build.jsr166e.dir}"/>
940
941 <javac srcdir="${topsrc.dir}"
942 destdir="${build.jsr166e.dir}"
943 debug="${build.debug}"
944 debuglevel="${build.debuglevel}"
945 deprecation="${build.deprecation}"
946 source="7"
947 classpath=""
948 includeAntRuntime="false"
949 includeJavaRuntime="false"
950 executable="${javac7}"
951 fork="true">
952
953 <include name="jsr166e/**/*.java"/>
954 <compilerarg line="${build.args}"/>
955 <compilerarg value="-XDignore.symbol.file=true"/>
956 <compilerarg value="-Xlint:all"/>
957
958 </javac>
959
960 </target>
961
962
963
964 <target name="jsr166ejar"
965 depends="jsr166ecompile"
966 description="Builds library jar from compiled sources">
967
968 <jar destfile="${jsr166e.jar}" index="true">
969 <fileset dir="${build.jsr166e.dir}"/>
970 </jar>
971
972 </target>
973
974
975
976 <target name="jsr166edocs"
977 description="Builds javadocs to build dir">
978
979 <delete dir="${dist.jsr166ejavadocs.dir}"/>
980 <mkdir dir="${dist.jsr166ejavadocs.dir}"/>
981
982 <javadoc destdir="${dist.jsr166ejavadocs.dir}"
983 packagenames="jsr166e.*"
984 link="${jdkapidocs.url}"
985 source="7"
986 sourcepath="${topsrc.dir}:${jdk7src.dir}"
987 executable="${javadoc7}"
988 additionalparam="-XDignore.symbol.file=true" >
989 </javadoc>
990
991 </target>
992
993
994 <target name="jsr166edist"
995 depends="jsr166edist-clean, jsr166edist-jar, jsr166edocs"
996 description="Puts all distributable products in single hierarchy"/>
997
998
999
1000 <target name="jsr166eclean"
1001 description="Removes all jsr166e build products">
1002
1003 <delete dir="${build.jsr166e.dir}"/>
1004
1005 </target>
1006
1007
1008 <target name="jsr166edist-clean"
1009 description="Removes all build and distribution products">
1010
1011 </target>
1012
1013 <target name="jsr166edist-jar"
1014 depends="jsr166eclean, jsr166ejar">
1015
1016 <copy file="${jsr166e.jar}" todir="${dist.dir}"/>
1017
1018 </target>
1019
1020 </project>