ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/jsr166/jsr166/build.xml
Revision: 1.106
Committed: Sat Jan 19 22:23:57 2013 UTC (11 years, 3 months ago) by jsr166
Content type: text/xml
Branch: MAIN
Changes since 1.105: +22 -22 lines
Log Message:
rename XXXproduct.jar variables

File Contents

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