ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/jsr166/jsr166/build.xml
Revision: 1.114
Committed: Sun Jan 20 04:44:26 2013 UTC (11 years, 3 months ago) by jsr166
Content type: text/xml
Branch: MAIN
Changes since 1.113: +18 -13 lines
Log Message:
yet another directory layout reorg

File Contents

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