ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/jsr166/jsr166/build.xml
(Generate patch)

Comparing jsr166/build.xml (file contents):
Revision 1.109 by jsr166, Sun Jan 20 01:06:24 2013 UTC vs.
Revision 1.129 by jsr166, Wed Jan 23 07:17:13 2013 UTC

# Line 25 | Line 25
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>
28 >  <target name="usage" description="Display main targets by running 'ant -projecthelp'">
29 >    <java classname="org.apache.tools.ant.Main">
30 >      <arg value="-projecthelp" />
31 >    </java>
32    </target>
33  
34  
# Line 35 | Line 37
37  
38  
39    <!-- Compilation options -->
40 <  <property name="build.sourcelevel"    value="1.6"/>
40 >  <property name="build.sourcelevel"    value="6"/>
41    <property name="build.debug"          value="true"/>
42    <property name="build.debuglevel"     value="source,lines,vars"/>
43    <property name="build.deprecation"    value="false"/>
# Line 49 | Line 51
51  
52    <property name="build.4jdk7.dir"             location="${build.dir}/jsr166-4jdk7"/>
53    <property name="build.4jdk7.classes.dir"     location="${build.4jdk7.dir}/classes"/>
54 <  <property name="build.4jdk7.tck.classes.dir" location="${build.4jdk7.dir}/tck/classes"/>
54 >  <property name="build.4jdk7.tck.classes.dir" location="${build.4jdk7.dir}/tck-classes"/>
55    <property name="build.4jdk7.docs.dir"        location="${build.4jdk7.dir}/docs"/>
56  
57    <property name="build.jsr166x.dir"           location="${build.dir}/jsr166x"/>
# Line 57 | Line 59
59    <property name="build.jsr166e.dir"           location="${build.dir}/jsr166e"/>
60    <property name="build.extra166y.dir"         location="${build.dir}/extra166y"/>
61  
62 <  <!-- JDK binary locations -->
62 >  <property name="build.jsr166x.classes.dir"   location="${build.jsr166x.dir}/classes"/>
63 >  <property name="build.jsr166y.classes.dir"   location="${build.jsr166y.dir}/classes"/>
64 >  <property name="build.jsr166e.classes.dir"   location="${build.jsr166e.dir}/classes"/>
65 >  <property name="build.extra166y.classes.dir" location="${build.extra166y.dir}/classes"/>
66 >
67 >  <!-- JDK locations -->
68    <property name="jdks.home"  location="${user.home}/jdk"/>
69  
70    <macrodef name="defjdklocations">
# Line 67 | Line 74
74      <property name="java@{v}"       location="${jdk@{v}.home}/bin/java"/>
75      <property name="javac@{v}"      location="${jdk@{v}.home}/bin/javac"/>
76      <property name="javadoc@{v}"    location="${jdk@{v}.home}/bin/javadoc"/>
70    <property name="bootdir@{v}"    location="${jdk@{v}.home}/jre/lib"/>
77      <property name="jdk@{v}src.dir" location="${jdks.home}/src/jdk@{v}/jdk/src/share/classes"/>
78 <    <property name="bootclasspath@{v}"
79 <     value="${bootdir@{v}}/resources.jar:${bootdir@{v}}/rt.jar:${bootdir@{v}}/jsse.jar:${bootdir@{v}}/jce.jar:${bootdir@{v}}/:${bootdir@{v}}/charsets.jar"/>
78 >    <local name="boot.jar.dir"/>
79 >    <property name="boot.jar.dir"   location="${jdk@{v}.home}/jre/lib"/>
80 >    <path id="bootclasspath@{v}">
81 >      <pathelement path="${boot.jar.dir}/resources.jar"/>
82 >      <pathelement path="${boot.jar.dir}/rt.jar"/>
83 >      <pathelement path="${boot.jar.dir}/jsse.jar"/>
84 >      <pathelement path="${boot.jar.dir}/jce.jar"/>
85 >      <pathelement path="${boot.jar.dir}/charsets.jar"/>
86 >    </path>
87 >    <property name="bootclasspath@{v}" value="${toString:bootclasspath@{v}}"/>
88      </sequential>
89    </macrodef>
90  
91 <  <defjdklocations v="6"/>
92 <  <defjdklocations v="7"/>
93 <  <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=""/>
91 >  <macrodef name="mirror-dir">
92 >    <attribute name="src"/>
93 >    <attribute name="dst"/>
94      <sequential>
95 <    <java classname="JSR166TestCase"
96 <          jvm="@{jvm}" fork="true">
97 <        <jvmarg value="-Xbootclasspath/p:@{product.jar}"/>
98 <        <jvmarg line="@{jvmflags}"/>
99 <        <classpath>
92 <          <pathelement location="${junit.jar}"/>
93 <          <pathelement location="@{tck.classes}"/>
94 <        </classpath>
95 <    </java>
95 >    <delete dir="@{dst}"/>
96 >    <mkdir dir="@{dst}"/>
97 >    <copy todir="@{dst}" preservelastmodified="true">
98 >      <fileset dir="@{src}"/>
99 >    </copy>
100      </sequential>
101    </macrodef>
102  
103 +  <defjdklocations v="6"/>
104 +  <defjdklocations v="7"/>
105 +  <defjdklocations v="8"/>
106 +
107    <!-- Source locations -->
108    <property name="src.dir"              location="${basedir}/src/main"/>
109    <property name="test.src.dir"         location="${basedir}/src/test"/>
# Line 110 | Line 118
118    <property name="jsr166ysrc.dir"       location="${topsrc.dir}/jsr166y"/>
119    <property name="jsr166esrc.dir"       location="${topsrc.dir}/jsr166e"/>
120    <property name="extra166ysrc.dir"     location="${topsrc.dir}/extra166y"/>
113  <property name="jdksrc.dir"           location="/home/dl/1.6.0/j2se/martin/j2se/src/share/classes"/>
121  
122 <  <!-- Distribution locations -->
123 <  <property name="dist.javadocs.dir"          location="${dist.dir}/jsr166.docs"/>
124 <  <property name="dist.4jdk7.docs.dir"        location="${dist.dir}/jsr166-4jdk7.docs"/>
125 <  <property name="dist.jsr166xjavadocs.dir"   location="${dist.dir}/jsr166x.docs"/>
126 <  <property name="dist.jsr166yjavadocs.dir"   location="${dist.dir}/jsr166y.docs"/>
127 <  <property name="dist.jsr166ejavadocs.dir"   location="${dist.dir}/jsr166e.docs"/>
128 <  <property name="dist.extra166yjavadocs.dir" location="${dist.dir}/extra166y.docs"/>
122 >  <!-- Javadoc locations -->
123 >  <property name="docs.dir"          location="${build.dir}/docs"/>
124 >  <property name="4jdk7docs.dir"     location="${build.4jdk7.dir}/docs"/>
125 >  <property name="jsr166xdocs.dir"   location="${build.jsr166x.dir}/docs"/>
126 >  <property name="jsr166ydocs.dir"   location="${build.jsr166y.dir}/docs"/>
127 >  <property name="jsr166edocs.dir"   location="${build.jsr166e.dir}/docs"/>
128 >  <property name="extra166ydocs.dir" location="${build.extra166y.dir}/docs"/>
129 >
130 >  <property name="dist.docs.dir"          location="${dist.dir}/docs"/>
131 >  <property name="dist.4jdk7docs.dir"     location="${dist.dir}/jsr166-4jdk7docs"/>
132 >  <property name="dist.jsr166xdocs.dir"   location="${dist.dir}/jsr166xdocs"/>
133 >  <property name="dist.jsr166ydocs.dir"   location="${dist.dir}/jsr166ydocs"/>
134 >  <property name="dist.jsr166edocs.dir"   location="${dist.dir}/jsr166edocs"/>
135 >  <property name="dist.extra166ydocs.dir" location="${dist.dir}/extra166ydocs"/>
136  
137    <!-- Jar locations -->
138    <property name="product.jar"      location="${build.dir}/jsr166.jar"/>
# Line 129 | Line 143
143    <property name="extra166y.jar"    location="${build.extra166y.dir}/extra166y.jar"/>
144    <property name="junit.jar"        location="${lib.dir}/junit.jar"/>
145  
132  <!-- Bootclasspath argument -->
133  <property name="bootclasspath.args"   value="-Xbootclasspath/p:${product.jar}"/>
134
146    <!-- Canonical location of jdk API docs, to use with javadoc link attribute -->
147    <property name="jdkapi5docs.url"      value="http://docs.oracle.com/javase/1.5.0/docs/api/"/>
148    <property name="jdkapi6docs.url"      value="http://docs.oracle.com/javase/6/docs/api/"/>
149    <property name="jdkapi7docs.url"      value="http://docs.oracle.com/javase/7/docs/api/"/>
150  
151    <property name="jdkapi8docs.url"      value="http://download.java.net/jdk8/docs/api/"/>
152 <  <!-- The below does not yet exist as of 2012-11 -->
152 >  <!-- The below does not yet exist as of 2013-01 -->
153    <!-- <property name="jdkapi8docs.url" value="http://docs.oracle.com/javase/8/docs/api/"/> -->
154  
155    <!-- Default jdk api doc location (latest stable release seems best) -->
156    <property name="jdkapidocs.url"       value="${jdkapi7docs.url}"/>
157  
158 +  <!-- Define the "jtreg" task -->
159 +  <!-- See the docs in "jtreg -onlineHelp" -->
160 +  <taskdef name="jtreg" classname="com.sun.javatest.regtest.Main$$Ant"
161 +           classpath="${lib.dir}/jtreg.jar" />
162 +
163    <!-- Test classpath -->
164    <path id="test.classpath">
165      <pathelement location="${build.testcases.dir}"/>
166      <pathelement location="${junit.jar}"/>
167    </path>
168  
169 +  <macrodef name="run-tck-tests">
170 +    <attribute name="tck.src.dir" default="${tck.src.dir}"/>
171 +    <attribute name="source" default="6"/>
172 +    <attribute name="target"/>
173 +    <attribute name="workdir"/>
174 +    <attribute name="classes"/>
175 +    <attribute name="jvmflags" default=""/>
176 +    <sequential>
177 +
178 +    <mkdir dir="@{workdir}/tck-classes"/>
179 +
180 +    <javac srcdir="@{tck.src.dir}"
181 +           destdir="@{workdir}/tck-classes"
182 +           debug="${build.debug}"
183 +           debuglevel="${build.debuglevel}"
184 +           deprecation="${build.deprecation}"
185 +           source="@{source}"
186 +           classpath="${junit.jar}"
187 +           bootclasspath="@{classes}:${bootclasspath@{source}}"
188 +           includeAntRuntime="false"
189 +           includeJavaRuntime="false"
190 +           executable="${javac@{target}}"
191 +           fork="true">
192 +
193 +      <include name="*.java"/>
194 +      <compilerarg value="-XDignore.symbol.file=true"/>
195 +      <compilerarg value="-Xlint:all,-unchecked,-rawtypes,-serial,-deprecation"/>
196 +      <compilerarg line="${build.args}"/>
197 +
198 +    </javac>
199 +
200 +    <java classname="JSR166TestCase"
201 +          failonerror="true"
202 +          jvm="${java@{target}}"
203 +          fork="true">
204 +        <jvmarg value="-Xbootclasspath/p:@{classes}"/>
205 +        <jvmarg line="@{jvmflags}"/>
206 +        <classpath>
207 +          <pathelement location="${junit.jar}"/>
208 +          <pathelement location="@{workdir}/tck-classes"/>
209 +        </classpath>
210 +    </java>
211 +
212 +    </sequential>
213 +  </macrodef>
214 +
215    <!-- ALoops classpath -->
216    <path id="loops.classpath">
217      <pathelement location="${build.loops.dir}"/>
218    </path>
219  
220    <!-- Support @jls tag, used in jdk8+ javadoc -->
221 <  <!-- TODO: How do we get &trade to work? -->
160 <  <!-- TODO: Why isn't @jls a "standard" tag? -->
161 <  <!--   property name="javadoc.jls.cite" value="The Java&trade; Language Specification" -->
162 <  <property name="javadoc.jls.cite" value="The Java Language Specification"/>
221 >  <property name="javadoc.jls.cite" value="The Java&amp;trade; Language Specification"/>
222    <property name="javadoc.jls.option" value="jls:a:See &lt;cite&gt;${javadoc.jls.cite}&lt;/cite&gt;:"/>
223  
224    <!-- Main targets -->
# Line 186 | Line 245
245             fork="true">
246  
247        <include name="**/*.java"/>
189      <compilerarg line="${build.args}"/>
248        <compilerarg value="-XDignore.symbol.file=true"/>
249        <compilerarg value="-Xlint:all"/>
192
193 <!--
194      <exclude name="java/lang/**"/>
250        <compilerarg line="${build.args}"/>
196      <compilerarg line="-Xlint -Xmaxwarns 1000"/>
197 -->
251  
252      </javac>
200
253    </target>
254  
255  
204
256    <target name="jar"
257            depends="compile"
258            description="Builds library jar from compiled sources">
# Line 209 | Line 260
260      <jar destfile="${product.jar}">
261        <fileset dir="${build.classes.dir}"/>
262      </jar>
212
263    </target>
264  
265  
216
266    <target name="test"
267            depends="configure-tests, report-tests"
268            description="Runs all tests (requires JUnit 3.8.1 in ${ant.home}/lib)" />
269  
270  
222
271    <target name="docs"
272            description="Builds javadocs for src/main to dist dir">
273  
274 <    <delete dir="${dist.javadocs.dir}"/>
275 <    <mkdir dir="${dist.javadocs.dir}"/>
274 >    <delete dir="${docs.dir}"/>
275 >    <mkdir dir="${docs.dir}"/>
276  
277      <!-- the packagenames="none" hack below prevents scanning the -->
278      <!-- sourcepath for packages -->
279  
280 <    <javadoc destdir="${dist.javadocs.dir}"
280 >    <javadoc destdir="${docs.dir}"
281               packagenames="none"
282               link="${jdkapi8docs.url}"
283               overview="${src.dir}/intro.html"
284               sourcepath="${src.dir}:${jdk8src.dir}"
285               classpath=""
286               executable="${javadoc8}">
239      <arg value="-XDignore.symbol.file=true"/>
240      <arg value="-tag"/>
241      <arg value="${javadoc.jls.option}"/>
287        <fileset dir="${src.dir}" defaultexcludes="yes">
288          <include name="**/*.java"/>
289        </fileset>
290 +      <arg value="-XDignore.symbol.file=true"/>
291 +      <arg value="-tag"/>
292 +      <arg value="${javadoc.jls.option}"/>
293      </javadoc>
246
294    </target>
295  
296  
250
297    <target name="dist"
298 <          depends="dist-clean, dist-jar, docs"
298 >          depends="dist-clean, dist-jar, dist-docs"
299            description="Puts all distributable products in single hierarchy"/>
300  
301  
# Line 268 | Line 314
314        <exclude name="**/SyntaxTest.java"/>
315        <exclude name="**/SuperfluousAbstract.java"/>
316      </jar>
271
317    </target>
318  
319  
275
320    <target name="clean"
321            description="Removes all build products">
322  
# Line 281 | Line 325
325    </target>
326  
327  
284
328    <target name="dist-clean"
329            description="Removes all build and distribution products">
330  
# Line 290 | Line 333
333    </target>
334  
335  
293
336    <!-- Internal targets -->
337  
338  
339    <target name="dist-jar"
340            depends="clean, jar">
299
341      <copy file="${product.jar}" todir="${dist.dir}"/>
342 +  </target>
343  
344 +  <target name="dist-docs"
345 +          depends="clean, docs">
346 +    <mirror-dir src="${docs.dir}" dst="${dist.docs.dir}"/>
347    </target>
348  
349  
# Line 308 | Line 353
353      <mkdir dir="${build.testcases.dir}"/>
354  
355      <javac srcdir="${tck.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">
356 >           destdir="${build.testcases.dir}"
357 >           debug="${build.debug}"
358 >           debuglevel="${build.debuglevel}"
359 >           deprecation="${build.deprecation}"
360 >           source="6"
361 >           classpath="${junit.jar}"
362 >           bootclasspath="@{product.jar}:${bootclasspath6}"
363 >           includeAntRuntime="false"
364 >           includeJavaRuntime="false"
365 >           executable="${javac8}"
366 >           fork="true">
367  
368 <      <compilerarg value="${bootclasspath.args}"/>
319 <      <compilerarg line="${build.args}"/>
368 >      <include name="**/*.java"/>
369        <compilerarg value="-XDignore.symbol.file=true"/>
370 <
371 <      <classpath refid="test.classpath"/>
370 >      <compilerarg value="-Xlint:all,-unchecked,-rawtypes,-serial,-deprecation"/>
371 >      <compilerarg line="${build.args}"/>
372  
373      </javac>
374  
375      <javac srcdir="${test.src.dir}"
376 <          destdir="${build.testcases.dir}"
377 <            debug="${build.debug}"
378 <       debuglevel="${build.debuglevel}"
379 <      deprecation="${build.deprecation}"
380 <           source="${build.sourcelevel}"
381 <             fork="true">
382 <
383 <      <include name="jsr166/test/**"/>
376 >           destdir="${build.testcases.dir}"
377 >           debug="${build.debug}"
378 >           debuglevel="${build.debuglevel}"
379 >           deprecation="${build.deprecation}"
380 >           source="6"
381 >           classpath=""
382 >           bootclasspath="@{product.jar}:${bootclasspath6}"
383 >           includeAntRuntime="false"
384 >           includeJavaRuntime="false"
385 >           executable="${javac8}"
386 >           fork="true">
387  
388 <      <compilerarg value="${bootclasspath.args}"/>
337 <      <compilerarg line="${build.args}"/>
388 >      <include name="jsr166/test/**/*.java"/>
389        <compilerarg value="-XDignore.symbol.file=true"/>
390 <
391 <      <classpath refid="test.classpath"/>
390 >      <compilerarg value="-Xlint:all,-unchecked,-rawtypes,-serial,-deprecation"/>
391 >      <compilerarg line="${build.args}"/>
392  
393      </javac>
394  
# Line 350 | Line 401
401             source="${build.sourcelevel}"
402               fork="true">
403  
404 <      <compilerarg value="${bootclasspath.args}"/>
354 <      <compilerarg line="${build.args}"/>
404 >      <compilerarg value="-Xbootclasspath/p:${product.jar}"/>
405        <compilerarg value="-XDignore.symbol.file=true"/>
406 <
357 <      <classpath refid="test.classpath"/>
406 >      <compilerarg line="${build.args}"/>
407  
408      </javac>
409   -->
# Line 375 | Line 424
424            errorProperty="junit.failed"
425          failureProperty="junit.failed"
426                      dir="${build.reports.dir}"
427 +                    jvm="${java8}"
428                     fork="true">
429  
430 <      <jvmarg value="${bootclasspath.args}"/>
430 >      <jvmarg value="-Xbootclasspath/p:${product.jar}"/>
431        <jvmarg value="-server"/>
432        <jvmarg value="-showversion"/>
433  
# Line 506 | Line 556
556  
557    <!-- jsr166 4jdk7 -->
558  
509
559    <target name="4jdk7compile"
560            depends="configure-compiler"
561            description="Compiles src/jdk7 sources, targeting jdk7">
# Line 527 | Line 576
576             fork="true">
577  
578        <include name="**/*.java"/>
530      <compilerarg line="${build.args}"/>
579        <compilerarg value="-XDignore.symbol.file=true"/>
580        <compilerarg value="-Xlint:all"/>
581 +      <compilerarg line="${build.args}"/>
582  
583      </javac>
584 +  </target>
585  
536    <jar destfile="${4jdk7product.jar}" index="true">
537      <fileset dir="${build.4jdk7.classes.dir}"/>
538    </jar>
539
540    <mkdir dir="${build.4jdk7.tck.classes.dir}"/>
586  
587 <    <javac srcdir="${tck.src.dir}"
588 <           destdir="${build.4jdk7.tck.classes.dir}"
589 <           debug="${build.debug}"
545 <           debuglevel="${build.debuglevel}"
546 <           deprecation="${build.deprecation}"
547 <           source="6"
548 <           classpath="${junit.jar}"
549 <           bootclasspath="${4jdk7product.jar}:${bootclasspath6}"
550 <           includeAntRuntime="false"
551 <           includeJavaRuntime="false"
552 <           executable="${javac7}"
553 <           fork="true">
554 <
555 <      <include name="**/*.java"/>
556 <      <compilerarg line="${build.args}"/>
557 <      <compilerarg value="-XDignore.symbol.file=true"/>
558 <      <compilerarg value="-Xlint:all,-unchecked,-rawtypes,-serial,-deprecation"/>
587 >  <target name="4jdk7jar"
588 >          depends="4jdk7compile"
589 >          description="Builds library jar from compiled sources">
590  
591 <    </javac>
591 >    <jar destfile="${4jdk7product.jar}">
592 >      <fileset dir="${build.4jdk7.classes.dir}"/>
593 >    </jar>
594  
595    </target>
596  
597  
598    <target name="4jdk7-test-tck"
599 <          depends="4jdk7compile"
599 >          depends="4jdk7jar"
600            description="Runs tck tests for jsr166-4jdk7 directly">
601 +
602      <run-tck-tests
603 <      jvm="${java7}"
604 <      tck.classes="${build.4jdk7.tck.classes.dir}"
605 <      product.jar="${4jdk7product.jar}"/>
603 >      target="7"
604 >      workdir="${build.4jdk7.dir}"
605 >      classes="${4jdk7product.jar}"/>
606    </target>
607  
608  
# Line 600 | Line 634
634      </junit>
635    </target>
636  
637 +  <target name="4jdk7-test-jtreg"
638 +          depends="4jdk7compile"
639 +          description="Runs jtreg tests for jsr166-4jdk7 using the jtreg ant task">
640 +    <delete dir="${build.4jdk7.dir}/JTwork"   quiet="true"/>
641 +    <delete dir="${build.4jdk7.dir}/JTreport" quiet="true"/>
642 +    <mkdir dir="${build.4jdk7.dir}/JTwork/scratch"/>
643 +    <mkdir dir="${build.4jdk7.dir}/JTreport"/>
644 +    <jtreg dir="${jtreg.src.dir}"
645 +           jdk="${jdk7.home}"
646 +           workDir="${build.4jdk7.dir}/JTwork"
647 +           reportDir="${build.4jdk7.dir}/JTreport">
648 +
649 +      <arg value="-Xbootclasspath/p:${4jdk7product.jar}"/>
650 +      <arg value="-agentvm"/>
651 +      <arg value="-v:nopass,fail"/>
652 +      <arg value="-vmoptions:-esa -ea"/>
653 +      <arg value="-automatic"/>
654 +      <arg value="-k:!ignore"/>
655 +    </jtreg>
656 +  </target>
657 +
658 +
659 +  <target name="4jdk7-test"
660 +          depends="4jdk7-test-tck, 4jdk7-test-jtreg"
661 +          description="Runs tck and jtreg tests for jsr166-4jdk7">
662 +  </target>
663 +
664  
665    <target name="4jdk7docs"
666            description="Builds javadocs for src/jdk7 to dist dir">
667  
668 <    <delete dir="${dist.4jdk7.docs.dir}"/>
669 <    <mkdir dir="${dist.4jdk7.docs.dir}"/>
668 >    <delete dir="${4jdk7docs.dir}"/>
669 >    <mkdir dir="${4jdk7docs.dir}"/>
670  
671 <    <javadoc destdir="${dist.4jdk7.docs.dir}"
671 >    <javadoc destdir="${4jdk7docs.dir}"
672               packagenames="none"
673               link="${jdkapi7docs.url}"
674               overview="${4jdk7src.dir}/intro.html"
675               sourcepath="${4jdk7src.dir}:${jdk7src.dir}"
676               classpath=""
677               executable="${javadoc7}">
617      <arg value="-XDignore.symbol.file=true"/>
678        <fileset dir="${4jdk7src.dir}" defaultexcludes="yes">
679          <include name="**/*.java"/>
680        </fileset>
681 +      <arg value="-XDignore.symbol.file=true"/>
682      </javadoc>
622
683    </target>
684  
685  
686    <target name="4jdk7dist"
687 <          depends="4jdk7dist-clean, 4jdk7dist-jar, 4jdk7docs"
687 >          depends="4jdk7dist-jar, 4jdk7dist-docs"
688            description="Puts all distributable products in single hierarchy"/>
689  
690  
631
691    <target name="4jdk7clean"
692            description="Removes all 4jdk7 build products">
693  
# Line 637 | Line 696
696    </target>
697  
698  
640
699    <target name="4jdk7dist-clean"
700            description="Removes all build and distribution products">
701  
702    </target>
703  
704    <target name="4jdk7dist-jar"
705 <          depends="4jdk7clean, 4jdk7compile">
648 <
705 >          depends="4jdk7clean, 4jdk7jar">
706      <copy file="${4jdk7product.jar}" todir="${dist.dir}"/>
707 +  </target>
708  
709 +
710 +  <target name="4jdk7dist-docs"
711 +          depends="4jdk7clean, 4jdk7docs">
712 +    <mirror-dir src="${4jdk7docs.dir}" dst="${dist.4jdk7docs.dir}"/>
713    </target>
714  
715  
# Line 657 | Line 719
719            depends="configure-compiler"
720            description="Compiles jsr166x sources to build dir">
721  
722 <    <mkdir dir="${build.jsr166x.dir}"/>
722 >    <mkdir dir="${build.jsr166x.classes.dir}"/>
723  
724      <javac srcdir="${topsrc.dir}"
725 <           destdir="${build.jsr166x.dir}"
725 >           destdir="${build.jsr166x.classes.dir}"
726             debug="${build.debug}"
727             debuglevel="${build.debuglevel}"
728             deprecation="${build.deprecation}"
729             classpath=""
668           source="5"
730             bootclasspath="${bootclasspath6}"
731 +           source="5"
732             includeAntRuntime="false"
733             includeJavaRuntime="false"
734             executable="${javac7}"
735             fork="true">
736  
737        <include name="jsr166x/**/*.java"/>
676      <compilerarg line="${build.args}"/>
738        <compilerarg value="-XDignore.symbol.file=true"/>
739        <compilerarg value="-Xlint:all,-unchecked,-rawtypes"/>
740 +      <compilerarg line="${build.args}"/>
741  
742      </javac>
681
743    </target>
744  
745  
685
746    <target name="jsr166xjar"
747            depends="jsr166xcompile"
748            description="Builds library jar from compiled sources">
749  
750      <jar destfile="${jsr166x.jar}">
751 <      <fileset dir="${build.jsr166x.dir}"/>
751 >      <fileset dir="${build.jsr166x.classes.dir}"/>
752      </jar>
753  
754    </target>
755  
756  
697
757    <target name="jsr166xdocs"
758            description="Builds javadocs to dist dir">
759  
760 <    <delete dir="${dist.jsr166xjavadocs.dir}"/>
761 <    <mkdir dir="${dist.jsr166xjavadocs.dir}"/>
760 >    <delete dir="${jsr166xdocs.dir}"/>
761 >    <mkdir dir="${jsr166xdocs.dir}"/>
762  
763 <    <javadoc destdir="${dist.jsr166xjavadocs.dir}"
763 >    <javadoc destdir="${jsr166xdocs.dir}"
764               packagenames="jsr166x.*"
765               link="${jdkapidocs.url}"
707             source="5"
708             bootclasspath="${bootclasspath6}"
766               sourcepath="${topsrc.dir}:${jdk6src.dir}"
767 <             executable="${javadoc7}"
768 <             additionalparam="-XDignore.symbol.file=true" />
767 >             bootclasspath="${bootclasspath6}"
768 >             source="5"
769 >             executable="${javadoc7}">
770 >      <arg value="-XDignore.symbol.file=true"/>
771  
772 +    </javadoc>
773    </target>
774  
775  
776    <target name="jsr166xdist"
777 <          depends="jsr166xdist-clean, jsr166xdist-jar, jsr166xdocs"
777 >          depends="jsr166xdist-jar, jsr166xdist-docs"
778            description="Puts all distributable products in single hierarchy"/>
779  
780  
721
781    <target name="jsr166xclean"
782            description="Removes all jsr166x build products">
783  
# Line 727 | Line 786
786    </target>
787  
788  
730
789    <target name="jsr166xdist-clean"
790            description="Removes all build and distribution products">
791  
# Line 736 | Line 794
794  
795    <target name="jsr166xdist-jar"
796            depends="jsr166xclean, jsr166xjar">
739
797      <copy file="${jsr166x.jar}" todir="${dist.dir}"/>
798 +  </target>
799  
800 +  <target name="jsr166xdist-docs"
801 +          depends="jsr166xclean, jsr166xdocs">
802 +    <mirror-dir src="${jsr166xdocs.dir}" dst="${dist.jsr166xdocs.dir}"/>
803    </target>
804  
805    <!-- jsr166y -->
# Line 748 | Line 809
809            depends="configure-compiler"
810            description="Compiles jsr166y sources">
811  
812 <    <mkdir dir="${build.jsr166y.dir}"/>
812 >    <mkdir dir="${build.jsr166y.classes.dir}"/>
813  
814      <javac srcdir="${topsrc.dir}"
815 <           destdir="${build.jsr166y.dir}"
815 >           destdir="${build.jsr166y.classes.dir}"
816             debug="${build.debug}"
817             debuglevel="${build.debuglevel}"
818             deprecation="${build.deprecation}"
# Line 764 | Line 825
825             fork="true">
826  
827        <include name="jsr166y/**/*.java"/>
767      <compilerarg line="${build.args}"/>
828        <compilerarg value="-XDignore.symbol.file=true"/>
829        <compilerarg value="-Xlint:all"/>
830 +      <compilerarg line="${build.args}"/>
831 +
832      </javac>
833    </target>
834  
# Line 776 | Line 838
838            description="Builds library jar from compiled sources">
839  
840      <jar destfile="${jsr166y.jar}" index="true">
841 <      <fileset dir="${build.jsr166y.dir}"/>
841 >      <fileset dir="${build.jsr166y.classes.dir}"/>
842      </jar>
843  
844    </target>
845  
846  
785
847    <target name="jsr166ydocs"
848            description="Builds javadocs to dist dir">
849  
850 <    <delete dir="${dist.jsr166yjavadocs.dir}"/>
851 <    <mkdir dir="${dist.jsr166yjavadocs.dir}"/>
850 >    <delete dir="${jsr166ydocs.dir}"/>
851 >    <mkdir dir="${jsr166ydocs.dir}"/>
852  
853 <    <javadoc destdir="${dist.jsr166yjavadocs.dir}"
853 >    <javadoc destdir="${jsr166ydocs.dir}"
854               packagenames="jsr166y.*"
855               link="${jdkapidocs.url}"
795             source="6"
796             bootclasspath="${bootclasspath6}"
856               sourcepath="${topsrc.dir}:${jdk6src.dir}"
857 <             executable="${javadoc7}"
858 <             additionalparam="-XDignore.symbol.file=true" />
857 >             bootclasspath="${bootclasspath6}"
858 >             source="6"
859 >             executable="${javadoc7}">
860 >      <arg value="-XDignore.symbol.file=true"/>
861  
862 +    </javadoc>
863    </target>
864  
865  
866    <target name="jsr166ydist"
867 <          depends="jsr166ydist-clean, jsr166ydist-jar, jsr166ydocs"
867 >          depends="jsr166ydist-jar, jsr166ydist-docs"
868            description="Puts all distributable products in single hierarchy"/>
869  
870  
809
871    <target name="jsr166yclean"
872            description="Removes all jsr166y build products">
873  
# Line 815 | Line 876
876    </target>
877  
878  
818
879    <target name="jsr166ydist-clean"
880            description="Removes all build and distribution products">
881  
# Line 823 | Line 883
883  
884    <target name="jsr166ydist-jar"
885            depends="jsr166yclean, jsr166yjar">
826
886      <copy file="${jsr166y.jar}" todir="${dist.dir}"/>
887 +  </target>
888  
889 +  <target name="jsr166ydist-docs"
890 +          depends="jsr166yclean, jsr166ydocs">
891 +    <mirror-dir src="${jsr166ydocs.dir}" dst="${dist.jsr166ydocs.dir}"/>
892    </target>
893  
894  
# Line 836 | Line 899
899            depends="configure-compiler, jsr166yjar"
900            description="Compiles extra166y sources">
901  
902 <    <mkdir dir="${build.extra166y.dir}"/>
902 >    <mkdir dir="${build.extra166y.classes.dir}"/>
903  
904      <javac srcdir="${topsrc.dir}"
905 <           destdir="${build.extra166y.dir}"
905 >           destdir="${build.extra166y.classes.dir}"
906             debug="${build.debug}"
907             debuglevel="${build.debuglevel}"
908             deprecation="${build.deprecation}"
909 +           bootclasspath="@{jsr166y.jar}:${bootclasspath6}"
910             classpath=""
911             source="6"
848           bootclasspath="${jsr166y.jar}:${bootclasspath6}"
912             includeAntRuntime="false"
913             includeJavaRuntime="false"
914             executable="${javac7}"
915             fork="true">
916  
917        <include name="extra166y/**/*.java"/>
855      <compilerarg line="${build.args}"/>
918        <compilerarg value="-XDignore.symbol.file=true"/>
919        <compilerarg value="-Xlint:all,-unchecked,-rawtypes,-serial"/>
920 +      <compilerarg line="${build.args}"/>
921  
922      </javac>
860
923    </target>
924  
925  
864
926    <target name="extra166yjar"
927            depends="extra166ycompile"
928            description="Builds library jar from compiled sources">
929  
930      <jar destfile="${extra166y.jar}" index="true">
931 <      <fileset dir="${build.extra166y.dir}"/>
931 >      <fileset dir="${build.extra166y.classes.dir}"/>
932      </jar>
933  
934    </target>
935  
936  
876
937    <target name="extra166ydocs"
938            description="Builds javadocs to build dir">
939  
940 <    <delete dir="${dist.extra166yjavadocs.dir}"/>
941 <    <mkdir dir="${dist.extra166yjavadocs.dir}"/>
940 >    <delete dir="${extra166ydocs.dir}"/>
941 >    <mkdir dir="${extra166ydocs.dir}"/>
942  
943 <    <javadoc destdir="${dist.extra166yjavadocs.dir}"
943 >    <javadoc destdir="${extra166ydocs.dir}"
944               packagenames="extra166y.*"
945               link="${jdkapidocs.url}"
886             source="6"
887             bootclasspath="${bootclasspath6}"
946               sourcepath="${topsrc.dir}:${jdk6src.dir}"
947 <             executable="${javadoc7}"
948 <             additionalparam="-XDignore.symbol.file=true" />
947 >             bootclasspath="${bootclasspath6}"
948 >             source="6"
949 >             executable="${javadoc7}">
950 >      <arg value="-XDignore.symbol.file=true"/>
951  
952 +    </javadoc>
953    </target>
954  
955  
956    <target name="extra166ydist"
957 <          depends="extra166ydist-clean, extra166ydist-jar, extra166ydocs"
957 >          depends="extra166ydist-jar, extra166ydist-docs"
958            description="Puts all distributable products in single hierarchy"/>
959  
960  
900
961    <target name="extra166yclean"
962            description="Removes all extra166y build products">
963  
# Line 906 | Line 966
966    </target>
967  
968  
909
969    <target name="extra166ydist-clean"
970            description="Removes all build and distribution products">
971  
# Line 914 | Line 973
973  
974    <target name="extra166ydist-jar"
975            depends="extra166yclean, extra166yjar">
917
976      <copy file="${extra166y.jar}" todir="${dist.dir}"/>
977 +  </target>
978  
979 +  <target name="extra166ydist-docs"
980 +          depends="extra166yclean, extra166ydocs">
981 +    <mirror-dir src="${extra166ydocs.dir}" dst="${dist.extra166ydocs.dir}"/>
982    </target>
983  
984    <!-- jsr166e -->
# Line 925 | Line 987
987            depends="configure-compiler"
988            description="Compiles jsr166e sources">
989  
990 <    <mkdir dir="${build.jsr166e.dir}"/>
990 >    <mkdir dir="${build.jsr166e.classes.dir}"/>
991  
992      <javac srcdir="${topsrc.dir}"
993 <           destdir="${build.jsr166e.dir}"
993 >           destdir="${build.jsr166e.classes.dir}"
994             debug="${build.debug}"
995             debuglevel="${build.debuglevel}"
996             deprecation="${build.deprecation}"
# Line 940 | Line 1002
1002             fork="true">
1003  
1004        <include name="jsr166e/**/*.java"/>
943      <compilerarg line="${build.args}"/>
1005        <compilerarg value="-XDignore.symbol.file=true"/>
1006        <compilerarg value="-Xlint:all"/>
1007 +      <compilerarg line="${build.args}"/>
1008  
1009      </javac>
948
1010    </target>
1011  
1012  
952
1013    <target name="jsr166ejar"
1014            depends="jsr166ecompile"
1015            description="Builds library jar from compiled sources">
1016  
1017      <jar destfile="${jsr166e.jar}" index="true">
1018 <      <fileset dir="${build.jsr166e.dir}"/>
1018 >      <fileset dir="${build.jsr166e.classes.dir}"/>
1019      </jar>
1020  
1021    </target>
1022  
1023  
964
1024    <target name="jsr166edocs"
1025            description="Builds javadocs to build dir">
1026  
1027 <    <delete dir="${dist.jsr166ejavadocs.dir}"/>
1028 <    <mkdir dir="${dist.jsr166ejavadocs.dir}"/>
1027 >    <delete dir="${jsr166edocs.dir}"/>
1028 >    <mkdir dir="${jsr166edocs.dir}"/>
1029  
1030 <    <javadoc destdir="${dist.jsr166ejavadocs.dir}"
1030 >    <javadoc destdir="${jsr166edocs.dir}"
1031               packagenames="jsr166e.*"
1032               link="${jdkapidocs.url}"
974             source="7"
1033               sourcepath="${topsrc.dir}:${jdk7src.dir}"
1034 <             executable="${javadoc7}"
1035 <             additionalparam="-XDignore.symbol.file=true" >
1034 >             source="7"
1035 >             executable="${javadoc7}">
1036 >      <arg value="-XDignore.symbol.file=true"/>
1037 >
1038      </javadoc>
1039 +  </target>
1040 +
1041  
1042 +  <target name="jsr166e-test-tck"
1043 +          depends="jsr166ejar"
1044 +          description="Runs tck tests for jsr166e">
1045 +
1046 +    <run-tck-tests
1047 +      tck.src.dir="${test.src.dir}/tck-jsr166e"
1048 +      source="7"
1049 +      target="8"
1050 +      workdir="${build.jsr166e.dir}"
1051 +      classes="${jsr166e.jar}"/>
1052    </target>
1053  
1054  
1055    <target name="jsr166edist"
1056 <          depends="jsr166edist-clean, jsr166edist-jar, jsr166edocs"
1056 >          depends="jsr166edist-jar, jsr166edist-docs"
1057            description="Puts all distributable products in single hierarchy"/>
1058  
1059  
988
1060    <target name="jsr166eclean"
1061            description="Removes all jsr166e build products">
991
1062      <delete dir="${build.jsr166e.dir}"/>
993
1063    </target>
1064  
1065  
# Line 1001 | Line 1070
1070  
1071    <target name="jsr166edist-jar"
1072            depends="jsr166eclean, jsr166ejar">
1004
1073      <copy file="${jsr166e.jar}" todir="${dist.dir}"/>
1074 +  </target>
1075  
1076 +  <target name="jsr166edist-docs"
1077 +          depends="jsr166eclean, jsr166edocs">
1078 +    <mirror-dir src="${jsr166edocs.dir}" dst="${dist.jsr166edocs.dir}"/>
1079    </target>
1080  
1081   </project>

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines