/[cvs]/jsr166/build.xml
ViewVC logotype

Diff of /jsr166/build.xml

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.107 by jsr166, Sat Jan 19 23:40:04 2013 UTC revision 1.139 by jsr166, Thu May 2 21:38:03 2013 UTC
# Line 22  Line 22 
22    $HOME/jdk/src/jdk8    $HOME/jdk/src/jdk8
23    where each of the above is a complete JDK source tree    where each of the above is a complete JDK source tree
24    (e.g. mercurial forest) or a symlink to same.    (e.g. mercurial forest) or a symlink to same.
25    As of 2013-02, the very latest lambda 8 jdk is needed for jdk8.
26  ------------------------------------------------------------------------------  ------------------------------------------------------------------------------
27    </description>    </description>
28    
29    <target name="usage" description="Advises user to run with -projecthelp">    <target name="usage" description="Display main targets by running 'ant -projecthelp'">
30      <echo>Run "ant -projecthelp" for full usage information.</echo>      <java classname="org.apache.tools.ant.Main">
31          <arg value="-projecthelp" />
32        </java>
33    </target>    </target>
34    
35    
# Line 35  Line 38 
38    
39    
40    <!-- Compilation options -->    <!-- Compilation options -->
41    <property name="build.sourcelevel"    value="1.6"/>    <property name="build.sourcelevel"    value="6"/>
42    <property name="build.debug"          value="true"/>    <property name="build.debug"          value="true"/>
43    <property name="build.debuglevel"     value="source,lines,vars"/>    <property name="build.debuglevel"     value="source,lines,vars"/>
44    <property name="build.deprecation"    value="false"/>    <property name="build.deprecation"    value="false"/>
45      <property name="build.javadoc.access" value="protected"/>
46    
47      <!-- Tck options; see JSR166TestCase.java -->
48      <!-- Use via, e.g. ant -Djsr166.profileTests=true -Djsr166.runsPerTest=100 test-tck -->
49      <property name="jsr166.profileTests"     value="false"/>
50      <property name="jsr166.profileThreshold" value="100"/>
51      <property name="jsr166.runsPerTest"      value="1"/>
52    
53    <!-- Build locations -->    <!-- Build locations -->
54    <property name="build.dir"                   location="build"/>    <property name="build.dir"                   location="build"/>
55    <property name="build.classes.dir"           location="${build.dir}/classes"/>    <property name="build.classes.dir"           location="${build.dir}/classes"/>
56    <property name="build.testcases.dir"         location="${build.dir}/testcases"/>    <property name="build.testcases.dir"         location="${build.dir}/testcases"/>
57    <property name="build.loops.dir"             location="${build.dir}/loops"/>    <property name="build.loops.dir"             location="${build.dir}/loops"/>
   <property name="build.lib.dir"               location="${build.dir}/lib"/>  
   <property name="build.javadocs.dir"          location="${build.dir}/javadocs"/>  
58    <property name="build.reports.dir"           location="${build.dir}/reports"/>    <property name="build.reports.dir"           location="${build.dir}/reports"/>
59    
60    <property name="build.4jdk7.dir"              location="${build.dir}/4jdk7"/>    <property name="build.4jdk7.dir"             location="${build.dir}/jsr166-4jdk7"/>
61    <property name="build.4jdk7.lib.dir"          location="${build.4jdk7.dir}"/>    <property name="build.4jdk7.classes.dir"     location="${build.4jdk7.dir}/classes"/>
62    <property name="build.4jdk7.classes.dir"      location="${build.4jdk7.dir}/classes"/>    <property name="build.4jdk7.tck.classes.dir" location="${build.4jdk7.dir}/tck-classes"/>
63    <property name="build.4jdk7.tck.classes.dir"  location="${build.4jdk7.dir}/tck/classes"/>    <property name="build.4jdk7.docs.dir"        location="${build.4jdk7.dir}/docs"/>
   <property name="build.4jdk7.docs.dir"         location="${build.4jdk7.dir}/docs"/>  
64    
65    <property name="build.jsr166x.dir"           location="${build.dir}/jsr166x"/>    <property name="build.jsr166x.dir"           location="${build.dir}/jsr166x"/>
   <property name="build.jsr166xlib.dir"        location="${build.dir}/jsr166xlib"/>  
   <property name="build.jsr166xjavadocs.dir"   location="${build.dir}/jsr166xjavadocs"/>  
   
66    <property name="build.jsr166y.dir"           location="${build.dir}/jsr166y"/>    <property name="build.jsr166y.dir"           location="${build.dir}/jsr166y"/>
   <property name="build.jsr166ylib.dir"        location="${build.dir}/jsr166ylib"/>  
   <property name="build.jsr166yjavadocs.dir"   location="${build.dir}/jsr166yjavadocs"/>  
   
67    <property name="build.jsr166e.dir"           location="${build.dir}/jsr166e"/>    <property name="build.jsr166e.dir"           location="${build.dir}/jsr166e"/>
   <property name="build.jsr166elib.dir"        location="${build.dir}/jsr166elib"/>  
   <property name="build.jsr166ejavadocs.dir"   location="${build.dir}/jsr166ejavadocs"/>  
   
68    <property name="build.extra166y.dir"         location="${build.dir}/extra166y"/>    <property name="build.extra166y.dir"         location="${build.dir}/extra166y"/>
   <property name="build.extra166ylib.dir"      location="${build.dir}/extra166ylib"/>  
   <property name="build.extra166yjavadocs.dir" location="${build.dir}/extra166yjavadocs"/>  
69    
70    <!-- JDK binary locations -->    <property name="build.jsr166x.classes.dir"   location="${build.jsr166x.dir}/classes"/>
71      <property name="build.jsr166y.classes.dir"   location="${build.jsr166y.dir}/classes"/>
72      <property name="build.jsr166e.classes.dir"   location="${build.jsr166e.dir}/classes"/>
73      <property name="build.extra166y.classes.dir" location="${build.extra166y.dir}/classes"/>
74    
75      <!-- JDK locations -->
76    <property name="jdks.home"  location="${user.home}/jdk"/>    <property name="jdks.home"  location="${user.home}/jdk"/>
77    
78    <macrodef name="defjdklocations">    <macrodef name="defjdklocations">
# Line 81  Line 82 
82      <property name="java@{v}"       location="${jdk@{v}.home}/bin/java"/>      <property name="java@{v}"       location="${jdk@{v}.home}/bin/java"/>
83      <property name="javac@{v}"      location="${jdk@{v}.home}/bin/javac"/>      <property name="javac@{v}"      location="${jdk@{v}.home}/bin/javac"/>
84      <property name="javadoc@{v}"    location="${jdk@{v}.home}/bin/javadoc"/>      <property name="javadoc@{v}"    location="${jdk@{v}.home}/bin/javadoc"/>
     <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"/>      <property name="jdk@{v}src.dir" location="${jdks.home}/src/jdk@{v}/jdk/src/share/classes"/>
86      <property name="bootclasspath@{v}"      <local name="boot.jar.dir"/>
87       value="${bootdir@{v}}/resources.jar:${bootdir@{v}}/rt.jar:${bootdir@{v}}/jsse.jar:${bootdir@{v}}/jce.jar:${bootdir@{v}}/:${bootdir@{v}}/charsets.jar"/>      <property name="boot.jar.dir"   location="${jdk@{v}.home}/jre/lib"/>
88        <path id="bootclasspath@{v}">
89          <pathelement path="${boot.jar.dir}/resources.jar"/>
90          <pathelement path="${boot.jar.dir}/rt.jar"/>
91          <pathelement path="${boot.jar.dir}/jsse.jar"/>
92          <pathelement path="${boot.jar.dir}/jce.jar"/>
93          <pathelement path="${boot.jar.dir}/charsets.jar"/>
94        </path>
95        <property name="bootclasspath@{v}" value="${toString:bootclasspath@{v}}"/>
96      </sequential>      </sequential>
97    </macrodef>    </macrodef>
98    
99    <defjdklocations v="6"/>    <macrodef name="mirror-dir">
100    <defjdklocations v="7"/>      <attribute name="src"/>
101    <defjdklocations v="8"/>      <attribute name="dst"/>
   
   <macrodef name="run-tck-tests">  
     <attribute name="jvm"/>  
     <attribute name="tck.classes"/>  
     <attribute name="product.jar" default="${product.jar}"/>  
     <attribute name="jvmflags" default=""/>  
102      <sequential>      <sequential>
103      <java classname="JSR166TestCase"      <delete dir="@{dst}"/>
104            jvm="@{jvm}" fork="true">      <mkdir dir="@{dst}"/>
105          <jvmarg value="-Xbootclasspath/p:@{product.jar}"/>      <copy todir="@{dst}" preservelastmodified="true">
106          <jvmarg line="@{jvmflags}"/>        <fileset dir="@{src}"/>
107          <classpath>      </copy>
           <pathelement location="${junit.jar}"/>  
           <pathelement location="@{tck.classes}"/>  
         </classpath>  
     </java>  
108      </sequential>      </sequential>
109    </macrodef>    </macrodef>
110    
111      <defjdklocations v="6"/>
112      <defjdklocations v="7"/>
113      <defjdklocations v="8"/>
114    
115    <!-- Source locations -->    <!-- Source locations -->
116    <property name="src.dir"              location="${basedir}/src/main"/>    <property name="src.dir"              location="${basedir}/src/main"/>
117    <property name="test.src.dir"         location="${basedir}/src/test"/>    <property name="test.src.dir"         location="${basedir}/src/test"/>
# Line 124  Line 126 
126    <property name="jsr166ysrc.dir"       location="${topsrc.dir}/jsr166y"/>    <property name="jsr166ysrc.dir"       location="${topsrc.dir}/jsr166y"/>
127    <property name="jsr166esrc.dir"       location="${topsrc.dir}/jsr166e"/>    <property name="jsr166esrc.dir"       location="${topsrc.dir}/jsr166e"/>
128    <property name="extra166ysrc.dir"     location="${topsrc.dir}/extra166y"/>    <property name="extra166ysrc.dir"     location="${topsrc.dir}/extra166y"/>
   <property name="jdksrc.dir"           location="/home/dl/1.6.0/j2se/martin/j2se/src/share/classes"/>  
129    
130    <!-- Distribution locations -->    <!-- Javadoc locations -->
131    <property name="dist.javadocs.dir"          location="${dist.dir}/docs"/>    <property name="docs.dir"          location="${build.dir}/docs"/>
132    <property name="dist.4jdk7.docs.dir"        location="${dist.dir}/jsr166-4jdk7docs"/>    <property name="4jdk7docs.dir"     location="${build.4jdk7.dir}/docs"/>
133    <property name="dist.jsr166xjavadocs.dir"   location="${dist.dir}/jsr166xdocs"/>    <property name="jsr166xdocs.dir"   location="${build.jsr166x.dir}/docs"/>
134    <property name="dist.jsr166yjavadocs.dir"   location="${dist.dir}/jsr166ydocs"/>    <property name="jsr166ydocs.dir"   location="${build.jsr166y.dir}/docs"/>
135    <property name="dist.jsr166ejavadocs.dir"   location="${dist.dir}/jsr166edocs"/>    <property name="jsr166edocs.dir"   location="${build.jsr166e.dir}/docs"/>
136    <property name="dist.extra166yjavadocs.dir" location="${dist.dir}/extra166ydocs"/>    <property name="extra166ydocs.dir" location="${build.extra166y.dir}/docs"/>
137    
138      <property name="dist.docs.dir"          location="${dist.dir}/docs"/>
139      <property name="dist.4jdk7docs.dir"     location="${dist.dir}/jsr166-4jdk7docs"/>
140      <property name="dist.jsr166xdocs.dir"   location="${dist.dir}/jsr166xdocs"/>
141      <property name="dist.jsr166ydocs.dir"   location="${dist.dir}/jsr166ydocs"/>
142      <property name="dist.jsr166edocs.dir"   location="${dist.dir}/jsr166edocs"/>
143      <property name="dist.extra166ydocs.dir" location="${dist.dir}/extra166ydocs"/>
144    
145    <!-- Jar locations -->    <!-- Jar locations -->
146    <property name="product.jar"      location="${build.lib.dir}/jsr166.jar"/>    <property name="product.jar"      location="${build.dir}/jsr166.jar"/>
147    <property name="4jdk7product.jar" location="${build.4jdk7.lib.dir}/jsr166-4jdk7.jar"/>    <property name="4jdk7product.jar" location="${build.4jdk7.dir}/jsr166-4jdk7.jar"/>
148    <property name="jsr166x.jar"      location="${build.jsr166xlib.dir}/jsr166x.jar"/>    <property name="jsr166x.jar"      location="${build.jsr166x.dir}/jsr166x.jar"/>
149    <property name="jsr166y.jar"      location="${build.jsr166ylib.dir}/jsr166y.jar"/>    <property name="jsr166y.jar"      location="${build.jsr166y.dir}/jsr166y.jar"/>
150    <property name="jsr166e.jar"      location="${build.jsr166elib.dir}/jsr166e.jar"/>    <property name="jsr166e.jar"      location="${build.jsr166e.dir}/jsr166e.jar"/>
151    <property name="extra166y.jar"    location="${build.extra166ylib.dir}/extra166y.jar"/>    <property name="extra166y.jar"    location="${build.extra166y.dir}/extra166y.jar"/>
152    <property name="junit.jar"        location="${lib.dir}/junit.jar"/>    <property name="junit.jar"        location="${lib.dir}/junit.jar"/>
153    
   <!-- Bootclasspath argument -->  
   <property name="bootclasspath.args"   value="-Xbootclasspath/p:${product.jar}"/>  
   
154    <!-- Canonical location of jdk API docs, to use with javadoc link attribute -->    <!-- Canonical location of jdk API docs, to use with javadoc link attribute -->
155    <property name="jdkapi5docs.url"      value="http://docs.oracle.com/javase/1.5.0/docs/api/"/>    <property name="jdkapi5docs.url"      value="http://docs.oracle.com/javase/1.5.0/docs/api/"/>
156    <property name="jdkapi6docs.url"      value="http://docs.oracle.com/javase/6/docs/api/"/>    <property name="jdkapi6docs.url"      value="http://docs.oracle.com/javase/6/docs/api/"/>
157    <property name="jdkapi7docs.url"      value="http://docs.oracle.com/javase/7/docs/api/"/>    <property name="jdkapi7docs.url"      value="http://docs.oracle.com/javase/7/docs/api/"/>
158    
159    <property name="jdkapi8docs.url"      value="http://download.java.net/jdk8/docs/api/"/>    <property name="jdkapi8docs.url"      value="http://download.java.net/jdk8/docs/api/"/>
160    <!-- The below does not yet exist as of 2012-11 -->    <!-- The below does not yet exist as of 2013-01 -->
161    <!-- <property name="jdkapi8docs.url" value="http://docs.oracle.com/javase/8/docs/api/"/> -->    <!-- <property name="jdkapi8docs.url" value="http://docs.oracle.com/javase/8/docs/api/"/> -->
162    
163    <!-- Default jdk api doc location (latest stable release seems best) -->    <!-- Default jdk api doc location (latest stable release seems best) -->
164    <property name="jdkapidocs.url"       value="${jdkapi7docs.url}"/>    <property name="jdkapidocs.url"       value="${jdkapi7docs.url}"/>
165    
166      <!-- Define the "jtreg" task -->
167      <!-- See the docs in "jtreg -onlineHelp" -->
168      <taskdef name="jtreg" classname="com.sun.javatest.regtest.Main$$Ant"
169               classpath="${lib.dir}/jtreg.jar" />
170    
171    <!-- Test classpath -->    <!-- Test classpath -->
172    <path id="test.classpath">    <path id="test.classpath">
173      <pathelement location="${build.testcases.dir}"/>      <pathelement location="${build.testcases.dir}"/>
174      <pathelement location="${junit.jar}"/>      <pathelement location="${junit.jar}"/>
175    </path>    </path>
176    
177      <macrodef name="run-tck-tests">
178        <attribute name="tck.src.dir" default="${tck.src.dir}"/>
179        <attribute name="target"/>
180        <attribute name="compile-target" default="@{target}"/>
181        <attribute name="workdir"/>
182        <attribute name="classes"/>
183        <attribute name="jvmflags" default=""/>
184        <element name="javac-elements" optional="true"/>
185        <sequential>
186    
187        <mkdir dir="@{workdir}/tck-classes"/>
188    
189        <javac srcdir="@{tck.src.dir}"
190               destdir="@{workdir}/tck-classes"
191               debug="${build.debug}"
192               debuglevel="${build.debuglevel}"
193               deprecation="${build.deprecation}"
194               source="@{compile-target}"
195               target="@{compile-target}"
196               classpath="${junit.jar}"
197               bootclasspath="@{classes}:${bootclasspath@{compile-target}}"
198               includeAntRuntime="false"
199               includeJavaRuntime="false"
200               executable="${javac@{compile-target}}"
201               fork="true">
202    
203          <include name="*.java"/>
204          <compilerarg value="-XDignore.symbol.file=true"/>
205          <compilerarg value="-Xlint:all,-unchecked,-rawtypes,-serial,-deprecation"/>
206          <compilerarg line="${build.args}"/>
207          <javac-elements/>
208    
209        </javac>
210    
211        <java classname="JSR166TestCase"
212              failonerror="true"
213              jvm="${java@{target}}"
214              fork="true">
215            <jvmarg value="-Xbootclasspath/p:@{classes}"/>
216            <jvmarg line="@{jvmflags}"/>
217            <sysproperty key="jsr166.profileTests"     value="${jsr166.profileTests}"/>
218            <sysproperty key="jsr166.profileThreshold" value="${jsr166.profileThreshold}"/>
219            <sysproperty key="jsr166.runsPerTest"      value="${jsr166.runsPerTest}"/>
220            <classpath>
221              <pathelement location="${junit.jar}"/>
222              <pathelement location="@{workdir}/tck-classes"/>
223            </classpath>
224        </java>
225    
226        </sequential>
227      </macrodef>
228    
229      <macrodef name="run-jtreg-tests">
230        <attribute name="jtreg.src.dir" default="${jtreg.src.dir}"/>
231        <attribute name="source" default="7"/>
232        <attribute name="target"/>
233        <attribute name="workdir"/>
234        <attribute name="classes"/>
235        <attribute name="jtregflags" default=""/>
236        <sequential>
237        <delete dir="@{workdir}/JTwork"   quiet="true"/>
238        <delete dir="@{workdir}/JTreport" quiet="true"/>
239        <mkdir dir="@{workdir}/JTwork/scratch"/>
240        <mkdir dir="@{workdir}/JTreport"/>
241        <jtreg dir="@{jtreg.src.dir}"
242               jdk="${jdk@{target}.home}"
243               workDir="@{workdir}/JTwork"
244               reportDir="@{workdir}/JTreport">
245    
246          <arg value="-Xbootclasspath/p:@{classes}"/>
247          <arg value="-agentvm"/>
248          <arg value="-v:nopass,fail"/>
249          <arg value="-vmoptions:-esa -ea"/>
250          <arg value="-automatic"/>
251          <arg value="-k:!ignore"/>
252          <arg line="@{jtregflags}"/>
253        </jtreg>
254        </sequential>
255      </macrodef>
256    
257    <!-- ALoops classpath -->    <!-- ALoops classpath -->
258    <path id="loops.classpath">    <path id="loops.classpath">
259      <pathelement location="${build.loops.dir}"/>      <pathelement location="${build.loops.dir}"/>
260    </path>    </path>
261    
262    <!-- Support @jls tag, used in jdk8+ javadoc -->    <!-- Support @jls tag, used in jdk8+ javadoc -->
263    <!-- TODO: How do we get &trade to work? -->    <property name="javadoc.jls.cite" value="The Java&amp;trade; Language Specification"/>
   <!-- TODO: Why isn't @jls a "standard" tag? -->  
   <!--   property name="javadoc.jls.cite" value="The Java&trade; Language Specification" -->  
   <property name="javadoc.jls.cite" value="The Java Language Specification"/>  
264    <property name="javadoc.jls.option" value="jls:a:See &lt;cite&gt;${javadoc.jls.cite}&lt;/cite&gt;:"/>    <property name="javadoc.jls.option" value="jls:a:See &lt;cite&gt;${javadoc.jls.cite}&lt;/cite&gt;:"/>
265    
266    <!-- Main targets -->    <!-- Main targets -->
# Line 200  Line 287 
287             fork="true">             fork="true">
288    
289        <include name="**/*.java"/>        <include name="**/*.java"/>
290        <compilerarg line="${build.args}"/>        <compilerarg value="-Xprefer:source"/>
291        <compilerarg value="-XDignore.symbol.file=true"/>        <compilerarg value="-XDignore.symbol.file=true"/>
292        <compilerarg value="-Xlint:all"/>        <compilerarg value="-Xlint:all"/>
   
 <!--  
       <exclude name="java/lang/**"/>  
293        <compilerarg line="${build.args}"/>        <compilerarg line="${build.args}"/>
       <compilerarg line="-Xlint -Xmaxwarns 1000"/>  
 -->  
294    
295      </javac>      </javac>
   
296    </target>    </target>
297    
298    
   
299    <target name="jar"    <target name="jar"
300            depends="compile"            depends="compile"
301            description="Builds library jar from compiled sources">            description="Builds library jar from compiled sources">
302    
     <mkdir dir="${build.lib.dir}"/>  
   
303      <jar destfile="${product.jar}">      <jar destfile="${product.jar}">
304        <fileset dir="${build.classes.dir}"/>        <fileset dir="${build.classes.dir}"/>
305      </jar>      </jar>
   
306    </target>    </target>
307    
308    
   
309    <target name="test"    <target name="test"
310            depends="configure-tests, report-tests"            depends="configure-tests, report-tests"
311            description="Runs all tests (requires JUnit 3.8.1 in ${ant.home}/lib)" />            description="Runs all tests (requires JUnit 3.8.1 in ${ant.home}/lib)" />
312    
313    
   
314    <target name="docs"    <target name="docs"
315            description="Builds javadocs for src/main to dist dir">            description="Builds javadocs for src/main to dist dir">
316    
317      <delete dir="${dist.javadocs.dir}"/>      <delete dir="${docs.dir}"/>
318      <mkdir dir="${dist.javadocs.dir}"/>      <mkdir dir="${docs.dir}"/>
319    
320      <!-- the packagenames="none" hack below prevents scanning the -->      <!-- the packagenames="none" hack below prevents scanning the -->
321      <!-- sourcepath for packages -->      <!-- sourcepath for packages -->
322    
323      <javadoc destdir="${dist.javadocs.dir}"      <javadoc destdir="${docs.dir}"
324               packagenames="none"               packagenames="none"
325               link="${jdkapi8docs.url}"               link="${jdkapi8docs.url}"
326               overview="${src.dir}/intro.html"               overview="${src.dir}/intro.html"
327                 access="${build.javadoc.access}"
328               sourcepath="${src.dir}:${jdk8src.dir}"               sourcepath="${src.dir}:${jdk8src.dir}"
329               classpath=""               classpath=""
330               executable="${javadoc8}">               executable="${javadoc8}">
       <arg value="-XDignore.symbol.file=true"/>  
       <arg value="-tag"/>  
       <arg value="${javadoc.jls.option}"/>  
331        <fileset dir="${src.dir}" defaultexcludes="yes">        <fileset dir="${src.dir}" defaultexcludes="yes">
332          <include name="**/*.java"/>          <include name="**/*.java"/>
333        </fileset>        </fileset>
334          <arg value="-XDignore.symbol.file=true"/>
335          <arg value="-tag"/>
336          <arg value="${javadoc.jls.option}"/>
337      </javadoc>      </javadoc>
   
338    </target>    </target>
339    
340    
   
341    <target name="dist"    <target name="dist"
342            depends="dist-clean, dist-jar, docs"            depends="dist-clean, dist-jar, dist-docs"
343            description="Puts all distributable products in single hierarchy"/>            description="Puts all distributable products in single hierarchy"/>
344    
345    
# Line 284  Line 358 
358        <exclude name="**/SyntaxTest.java"/>        <exclude name="**/SyntaxTest.java"/>
359        <exclude name="**/SuperfluousAbstract.java"/>        <exclude name="**/SuperfluousAbstract.java"/>
360      </jar>      </jar>
   
361    </target>    </target>
362    
363    
   
364    <target name="clean"    <target name="clean"
365            description="Removes all build products">            description="Removes all build products">
366    
367      <delete dir="${build.dir}"/>      <delete dir="${build.dir}"/>
     <delete dir="${build.classes.dir}"/>  
     <delete dir="${build.lib.dir}"/>  
368    
369    </target>    </target>
370    
371    
   
372    <target name="dist-clean"    <target name="dist-clean"
373            description="Removes all build and distribution products">            description="Removes all build and distribution products">
374    
# Line 308  Line 377 
377    </target>    </target>
378    
379    
   
380    <!-- Internal targets -->    <!-- Internal targets -->
381    
382    
383    <target name="dist-jar"    <target name="dist-jar"
384            depends="clean, jar">            depends="clean, jar">
   
385      <copy file="${product.jar}" todir="${dist.dir}"/>      <copy file="${product.jar}" todir="${dist.dir}"/>
386      </target>
387    
388      <target name="dist-docs"
389              depends="clean, docs">
390        <mirror-dir src="${docs.dir}" dst="${dist.docs.dir}"/>
391    </target>    </target>
392    
393    
# Line 326  Line 397 
397      <mkdir dir="${build.testcases.dir}"/>      <mkdir dir="${build.testcases.dir}"/>
398    
399      <javac srcdir="${tck.src.dir}"      <javac srcdir="${tck.src.dir}"
400            destdir="${build.testcases.dir}"             destdir="${build.testcases.dir}"
401              debug="${build.debug}"             debug="${build.debug}"
402         debuglevel="${build.debuglevel}"             debuglevel="${build.debuglevel}"
403        deprecation="${build.deprecation}"             deprecation="${build.deprecation}"
404             source="${build.sourcelevel}"             source="6"
405               fork="true">             classpath="${junit.jar}"
406               bootclasspath="@{product.jar}:${bootclasspath6}"
407               includeAntRuntime="false"
408               includeJavaRuntime="false"
409               executable="${javac8}"
410               fork="true">
411    
412        <compilerarg value="${bootclasspath.args}"/>        <include name="**/*.java"/>
       <compilerarg line="${build.args}"/>  
413        <compilerarg value="-XDignore.symbol.file=true"/>        <compilerarg value="-XDignore.symbol.file=true"/>
414          <compilerarg value="-Xlint:all,-unchecked,-rawtypes,-serial,-deprecation"/>
415        <classpath refid="test.classpath"/>        <compilerarg line="${build.args}"/>
416    
417      </javac>      </javac>
418    
419      <javac srcdir="${test.src.dir}"      <javac srcdir="${test.src.dir}"
420            destdir="${build.testcases.dir}"             destdir="${build.testcases.dir}"
421              debug="${build.debug}"             debug="${build.debug}"
422         debuglevel="${build.debuglevel}"             debuglevel="${build.debuglevel}"
423        deprecation="${build.deprecation}"             deprecation="${build.deprecation}"
424             source="${build.sourcelevel}"             source="6"
425               fork="true">             classpath=""
426               bootclasspath="@{product.jar}:${bootclasspath6}"
427        <include name="jsr166/test/**"/>             includeAntRuntime="false"
428               includeJavaRuntime="false"
429               executable="${javac8}"
430               fork="true">
431    
432        <compilerarg value="${bootclasspath.args}"/>        <include name="jsr166/test/**/*.java"/>
       <compilerarg line="${build.args}"/>  
433        <compilerarg value="-XDignore.symbol.file=true"/>        <compilerarg value="-XDignore.symbol.file=true"/>
434          <compilerarg value="-Xlint:all,-unchecked,-rawtypes,-serial,-deprecation"/>
435        <classpath refid="test.classpath"/>        <compilerarg line="${build.args}"/>
436    
437      </javac>      </javac>
438    
# Line 368  Line 445 
445             source="${build.sourcelevel}"             source="${build.sourcelevel}"
446               fork="true">               fork="true">
447    
448        <compilerarg value="${bootclasspath.args}"/>        <compilerarg value="-Xbootclasspath/p:${product.jar}"/>
       <compilerarg line="${build.args}"/>  
449        <compilerarg value="-XDignore.symbol.file=true"/>        <compilerarg value="-XDignore.symbol.file=true"/>
450          <compilerarg line="${build.args}"/>
       <classpath refid="test.classpath"/>  
451    
452      </javac>      </javac>
453  -->  -->
454    
455    </target>    </target>
456    
457      <target name="test-tck"
458              depends="jar"
459              description="Runs tck tests for main directly">
460    
461        <run-tck-tests
462          target="8"
463          workdir="${build.dir}"
464          classes="${product.jar}"/>
465      </target>
466    
467      <target name="test-jtreg"
468              depends="jar"
469              description="Runs jtreg tests for main using the jtreg ant task">
470        <run-jtreg-tests
471           target="8"
472           workdir="${build.dir}"
473           classes="${product.jar}"/>
474      </target>
475    
476      <target name="test-ng"
477              depends="test-tck, test-jtreg"
478              description="Runs tck and jtreg tests for main">
479      </target>
480    
481    <target name="run-tests"    <target name="run-tests"
482            depends="compile-tests">            depends="compile-tests">
# Line 393  Line 491 
491            errorProperty="junit.failed"            errorProperty="junit.failed"
492          failureProperty="junit.failed"          failureProperty="junit.failed"
493                      dir="${build.reports.dir}"                      dir="${build.reports.dir}"
494                        jvm="${java8}"
495                     fork="true">                     fork="true">
496    
497        <jvmarg value="${bootclasspath.args}"/>        <jvmarg value="-Xbootclasspath/p:${product.jar}"/>
498        <jvmarg value="-server"/>        <jvmarg value="-server"/>
499        <jvmarg value="-showversion"/>        <jvmarg value="-showversion"/>
500    
# Line 524  Line 623 
623    
624    <!-- jsr166 4jdk7 -->    <!-- jsr166 4jdk7 -->
625    
   
626    <target name="4jdk7compile"    <target name="4jdk7compile"
627            depends="configure-compiler"            depends="configure-compiler"
628            description="Compiles src/jdk7 sources, targeting jdk7">            description="Compiles src/jdk7 sources, targeting jdk7">
# Line 545  Line 643 
643             fork="true">             fork="true">
644    
645        <include name="**/*.java"/>        <include name="**/*.java"/>
646        <compilerarg line="${build.args}"/>        <compilerarg value="-Xprefer:source"/>
647        <compilerarg value="-XDignore.symbol.file=true"/>        <compilerarg value="-XDignore.symbol.file=true"/>
648        <compilerarg value="-Xlint:all"/>        <compilerarg value="-Xlint:all"/>
649          <compilerarg line="${build.args}"/>
650    
651      </javac>      </javac>
652      </target>
653    
654    
655      <mkdir dir="${build.4jdk7.lib.dir}"/>    <target name="4jdk7jar"
656              depends="4jdk7compile"
657              description="Builds library jar from compiled sources">
658    
659      <jar destfile="${4jdk7product.jar}" index="true">      <jar destfile="${4jdk7product.jar}">
660        <fileset dir="${build.4jdk7.classes.dir}"/>        <fileset dir="${build.4jdk7.classes.dir}"/>
661      </jar>      </jar>
662    
     <mkdir dir="${build.4jdk7.tck.classes.dir}"/>  
   
     <javac srcdir="${tck.src.dir}"  
            destdir="${build.4jdk7.tck.classes.dir}"  
            debug="${build.debug}"  
            debuglevel="${build.debuglevel}"  
            deprecation="${build.deprecation}"  
            source="6"  
            classpath="${junit.jar}"  
            bootclasspath="${4jdk7product.jar}:${bootclasspath6}"  
            includeAntRuntime="false"  
            includeJavaRuntime="false"  
            executable="${javac7}"  
            fork="true">  
   
       <include name="**/*.java"/>  
       <compilerarg line="${build.args}"/>  
       <compilerarg value="-XDignore.symbol.file=true"/>  
       <compilerarg value="-Xlint:all,-unchecked,-rawtypes,-serial,-deprecation"/>  
   
     </javac>  
   
663    </target>    </target>
664    
665    
666    <target name="4jdk7-test-tck"    <target name="4jdk7-test-tck"
667            depends="4jdk7compile"            depends="4jdk7jar"
668            description="Runs tck tests for jsr166-4jdk7 directly">            description="Runs tck tests for jsr166-4jdk7 directly">
669    
670      <run-tck-tests      <run-tck-tests
671        jvm="${java7}"        target="7"
672        tck.classes="${build.4jdk7.tck.classes.dir}"        workdir="${build.4jdk7.dir}"
673        product.jar="${4jdk7product.jar}"/>        classes="${4jdk7product.jar}">
674          <javac-elements>
675            <!-- JDK8+ test classes -->
676            <exclude name="*8Test.java"/>
677            <exclude name="DoubleAccumulatorTest.java"/>
678            <exclude name="DoubleAdderTest.java"/>
679            <exclude name="LongAccumulatorTest.java"/>
680            <exclude name="LongAdderTest.java"/>
681            <exclude name="CompletableFutureTest.java"/>
682            <exclude name="StampedLockTest.java"/>
683          </javac-elements>
684        </run-tck-tests>
685    </target>    </target>
686    
687    
# Line 620  Line 713 
713      </junit>      </junit>
714    </target>    </target>
715    
716      <target name="4jdk7-test-jtreg"
717              depends="4jdk7jar"
718              description="Runs jtreg tests for jsr166-4jdk7 using the jtreg ant task">
719        <run-jtreg-tests
720           target="7"
721           workdir="${build.4jdk7.dir}"
722           classes="${4jdk7product.jar}"/>
723      </target>
724    
725    
726      <target name="4jdk7-test"
727              depends="4jdk7-test-tck, 4jdk7-test-jtreg"
728              description="Runs tck and jtreg tests for jsr166-4jdk7">
729      </target>
730    
731    
732    <target name="4jdk7docs"    <target name="4jdk7docs"
733            description="Builds javadocs for src/jdk7 to dist dir">            description="Builds javadocs for src/jdk7 to dist dir">
734    
735      <delete dir="${dist.4jdk7.docs.dir}"/>      <delete dir="${4jdk7docs.dir}"/>
736      <mkdir dir="${dist.4jdk7.docs.dir}"/>      <mkdir dir="${4jdk7docs.dir}"/>
737    
738      <javadoc destdir="${dist.4jdk7.docs.dir}"      <javadoc destdir="${4jdk7docs.dir}"
739               packagenames="none"               packagenames="none"
740               link="${jdkapi7docs.url}"               link="${jdkapi7docs.url}"
741               overview="${4jdk7src.dir}/intro.html"               overview="${4jdk7src.dir}/intro.html"
742                 access="${build.javadoc.access}"
743               sourcepath="${4jdk7src.dir}:${jdk7src.dir}"               sourcepath="${4jdk7src.dir}:${jdk7src.dir}"
744               classpath=""               classpath=""
745               executable="${javadoc7}">               executable="${javadoc7}">
       <arg value="-XDignore.symbol.file=true"/>  
746        <fileset dir="${4jdk7src.dir}" defaultexcludes="yes">        <fileset dir="${4jdk7src.dir}" defaultexcludes="yes">
747          <include name="**/*.java"/>          <include name="**/*.java"/>
748        </fileset>        </fileset>
749          <arg value="-XDignore.symbol.file=true"/>
750      </javadoc>      </javadoc>
   
751    </target>    </target>
752    
753    
754    <target name="4jdk7dist"    <target name="4jdk7dist"
755            depends="4jdk7dist-clean, 4jdk7dist-jar, 4jdk7docs"            depends="4jdk7dist-jar, 4jdk7dist-docs"
756            description="Puts all distributable products in single hierarchy"/>            description="Puts all distributable products in single hierarchy"/>
757    
758    
   
759    <target name="4jdk7clean"    <target name="4jdk7clean"
760            description="Removes all build products">            description="Removes all 4jdk7 build products">
761    
762      <delete dir="${build.4jdk7.dir}"/>      <delete dir="${build.4jdk7.dir}"/>
763    
764    </target>    </target>
765    
766    
   
767    <target name="4jdk7dist-clean"    <target name="4jdk7dist-clean"
768            description="Removes all build and distribution products">            description="Removes all build and distribution products">
769    
770    </target>    </target>
771    
772    <target name="4jdk7dist-jar"    <target name="4jdk7dist-jar"
773            depends="4jdk7clean, 4jdk7compile">            depends="4jdk7clean, 4jdk7jar">
   
774      <copy file="${4jdk7product.jar}" todir="${dist.dir}"/>      <copy file="${4jdk7product.jar}" todir="${dist.dir}"/>
775      </target>
776    
777    
778      <target name="4jdk7dist-docs"
779              depends="4jdk7clean, 4jdk7docs">
780        <mirror-dir src="${4jdk7docs.dir}" dst="${dist.4jdk7docs.dir}"/>
781    </target>    </target>
782    
   <!-- jsr166x -->  
783    
784      <!-- jsr166x -->
785    
786    <target name="jsr166xcompile"    <target name="jsr166xcompile"
787            depends="configure-compiler"            depends="configure-compiler"
788            description="Compiles jsr166x sources to build dir">            description="Compiles jsr166x sources to build dir">
789    
790      <mkdir dir="${build.jsr166x.dir}"/>      <mkdir dir="${build.jsr166x.classes.dir}"/>
791    
792      <javac srcdir="${topsrc.dir}"      <javac srcdir="${topsrc.dir}"
793             destdir="${build.jsr166x.dir}"             destdir="${build.jsr166x.classes.dir}"
794             debug="${build.debug}"             debug="${build.debug}"
795             debuglevel="${build.debuglevel}"             debuglevel="${build.debuglevel}"
796             deprecation="${build.deprecation}"             deprecation="${build.deprecation}"
797             classpath=""             classpath=""
            source="5"  
798             bootclasspath="${bootclasspath6}"             bootclasspath="${bootclasspath6}"
799               source="5"
800             includeAntRuntime="false"             includeAntRuntime="false"
801             includeJavaRuntime="false"             includeJavaRuntime="false"
802             executable="${javac7}"             executable="${javac7}"
803             fork="true">             fork="true">
804    
805        <include name="jsr166x/**/*.java"/>        <include name="jsr166x/**/*.java"/>
       <compilerarg line="${build.args}"/>  
806        <compilerarg value="-XDignore.symbol.file=true"/>        <compilerarg value="-XDignore.symbol.file=true"/>
807        <compilerarg value="-Xlint:all,-unchecked,-rawtypes"/>        <compilerarg value="-Xlint:all,-unchecked,-rawtypes"/>
808          <compilerarg line="${build.args}"/>
809    
810      </javac>      </javac>
   
811    </target>    </target>
812    
813    
   
814    <target name="jsr166xjar"    <target name="jsr166xjar"
815            depends="jsr166xcompile"            depends="jsr166xcompile"
816            description="Builds library jar from compiled sources">            description="Builds library jar from compiled sources">
817    
     <mkdir dir="${build.jsr166xlib.dir}"/>  
   
818      <jar destfile="${jsr166x.jar}">      <jar destfile="${jsr166x.jar}">
819        <fileset dir="${build.jsr166x.dir}"/>        <fileset dir="${build.jsr166x.classes.dir}"/>
820      </jar>      </jar>
821    
822    </target>    </target>
823    
824    
   
825    <target name="jsr166xdocs"    <target name="jsr166xdocs"
826            description="Builds javadocs to dist dir">            description="Builds javadocs to dist dir">
827    
828      <delete dir="${build.jsr166xjavadocs.dir}"/>      <delete dir="${jsr166xdocs.dir}"/>
829      <mkdir dir="${build.jsr166xjavadocs.dir}"/>      <mkdir dir="${jsr166xdocs.dir}"/>
830    
831      <javadoc destdir="${build.jsr166xjavadocs.dir}"      <javadoc destdir="${jsr166xdocs.dir}"
832               packagenames="jsr166x.*"               packagenames="jsr166x.*"
833               link="${jdkapidocs.url}"               link="${jdkapidocs.url}"
834               source="5"               access="${build.javadoc.access}"
              bootclasspath="${bootclasspath6}"  
835               sourcepath="${topsrc.dir}:${jdk6src.dir}"               sourcepath="${topsrc.dir}:${jdk6src.dir}"
836               executable="${javadoc7}"               bootclasspath="${bootclasspath6}"
837               additionalparam="-XDignore.symbol.file=true" />               source="5"
838                 executable="${javadoc7}">
839          <arg value="-XDignore.symbol.file=true"/>
840    
841        </javadoc>
842    </target>    </target>
843    
844    
845    <target name="jsr166xdist"    <target name="jsr166xdist"
846            depends="jsr166xdist-clean, jsr166xdist-jar, jsr166xdist-docs"            depends="jsr166xdist-jar, jsr166xdist-docs"
847            description="Puts all distributable products in single hierarchy"/>            description="Puts all distributable products in single hierarchy"/>
848    
849    
   
850    <target name="jsr166xclean"    <target name="jsr166xclean"
851            description="Removes all build products">            description="Removes all jsr166x build products">
852    
853      <delete dir="${build.jsr166x.dir}"/>      <delete dir="${build.jsr166x.dir}"/>
     <delete dir="${build.jsr166xlib.dir}"/>  
854    
855    </target>    </target>
856    
857    
   
858    <target name="jsr166xdist-clean"    <target name="jsr166xdist-clean"
859            description="Removes all build and distribution products">            description="Removes all build and distribution products">
860    
861    </target>    </target>
862    
863    
   
   <target name="jsr166xdist-docs"  
           description="Builds javadocs to dist dir">  
   
     <delete dir="${dist.jsr166xjavadocs.dir}"/>  
     <mkdir dir="${dist.jsr166xjavadocs.dir}"/>  
   
     <javadoc destdir="${dist.jsr166xjavadocs.dir}"  
              packagenames="jsr166x.*"  
              link="${jdkapidocs.url}"  
              source="${build.sourcelevel}"  
              sourcepath="${topsrc.dir}:${jdk6src.dir}"  
              executable="${javadoc7}"  
              additionalparam="-XDignore.symbol.file=true" />  
   
   </target>  
   
864    <target name="jsr166xdist-jar"    <target name="jsr166xdist-jar"
865            depends="jsr166xclean, jsr166xjar">            depends="jsr166xclean, jsr166xjar">
   
866      <copy file="${jsr166x.jar}" todir="${dist.dir}"/>      <copy file="${jsr166x.jar}" todir="${dist.dir}"/>
867      </target>
868    
869      <target name="jsr166xdist-docs"
870              depends="jsr166xclean, jsr166xdocs">
871        <mirror-dir src="${jsr166xdocs.dir}" dst="${dist.jsr166xdocs.dir}"/>
872    </target>    </target>
873    
874    <!-- jsr166y -->    <!-- jsr166y -->
# Line 788  Line 878 
878            depends="configure-compiler"            depends="configure-compiler"
879            description="Compiles jsr166y sources">            description="Compiles jsr166y sources">
880    
881      <mkdir dir="${build.jsr166y.dir}"/>      <mkdir dir="${build.jsr166y.classes.dir}"/>
882    
883      <javac srcdir="${topsrc.dir}"      <javac srcdir="${topsrc.dir}"
884             destdir="${build.jsr166y.dir}"             destdir="${build.jsr166y.classes.dir}"
885             debug="${build.debug}"             debug="${build.debug}"
886             debuglevel="${build.debuglevel}"             debuglevel="${build.debuglevel}"
887             deprecation="${build.deprecation}"             deprecation="${build.deprecation}"
# Line 804  Line 894 
894             fork="true">             fork="true">
895    
896        <include name="jsr166y/**/*.java"/>        <include name="jsr166y/**/*.java"/>
       <compilerarg line="${build.args}"/>  
897        <compilerarg value="-XDignore.symbol.file=true"/>        <compilerarg value="-XDignore.symbol.file=true"/>
898        <compilerarg value="-Xlint:all"/>        <compilerarg value="-Xlint:all"/>
899          <compilerarg line="${build.args}"/>
900    
901      </javac>      </javac>
902    </target>    </target>
903    
# Line 815  Line 906 
906            depends="jsr166ycompile"            depends="jsr166ycompile"
907            description="Builds library jar from compiled sources">            description="Builds library jar from compiled sources">
908    
     <mkdir dir="${build.jsr166ylib.dir}"/>  
   
909      <jar destfile="${jsr166y.jar}" index="true">      <jar destfile="${jsr166y.jar}" index="true">
910        <fileset dir="${build.jsr166y.dir}"/>        <fileset dir="${build.jsr166y.classes.dir}"/>
911      </jar>      </jar>
912    
913    </target>    </target>
914    
915    
   
916    <target name="jsr166ydocs"    <target name="jsr166ydocs"
917            description="Builds javadocs to dist dir">            description="Builds javadocs to dist dir">
918    
919      <delete dir="${build.jsr166yjavadocs.dir}"/>      <delete dir="${jsr166ydocs.dir}"/>
920      <mkdir dir="${build.jsr166yjavadocs.dir}"/>      <mkdir dir="${jsr166ydocs.dir}"/>
921    
922      <javadoc destdir="${build.jsr166yjavadocs.dir}"      <javadoc destdir="${jsr166ydocs.dir}"
923               packagenames="jsr166y.*"               packagenames="jsr166y.*"
924               link="${jdkapidocs.url}"               link="${jdkapidocs.url}"
925               source="6"               access="${build.javadoc.access}"
              bootclasspath="${bootclasspath6}"  
926               sourcepath="${topsrc.dir}:${jdk6src.dir}"               sourcepath="${topsrc.dir}:${jdk6src.dir}"
927               executable="${javadoc7}"               bootclasspath="${bootclasspath6}"
928               additionalparam="-XDignore.symbol.file=true" />               source="6"
929                 executable="${javadoc7}">
930          <arg value="-XDignore.symbol.file=true"/>
931    
932        </javadoc>
933    </target>    </target>
934    
935    
936    <target name="jsr166ydist"    <target name="jsr166ydist"
937            depends="jsr166ydist-clean, jsr166ydist-jar, jsr166ydist-docs"            depends="jsr166ydist-jar, jsr166ydist-docs"
938            description="Puts all distributable products in single hierarchy"/>            description="Puts all distributable products in single hierarchy"/>
939    
940    
   
941    <target name="jsr166yclean"    <target name="jsr166yclean"
942            description="Removes all build products">            description="Removes all jsr166y build products">
943    
944      <delete dir="${build.jsr166y.dir}"/>      <delete dir="${build.jsr166y.dir}"/>
     <delete dir="${build.jsr166ylib.dir}"/>  
945    
946    </target>    </target>
947    
948    
   
949    <target name="jsr166ydist-clean"    <target name="jsr166ydist-clean"
950            description="Removes all build and distribution products">            description="Removes all build and distribution products">
951    
952    </target>    </target>
953    
   <target name="jsr166ydist-docs"  
           description="Builds javadocs to dist dir">  
   
     <delete dir="${dist.jsr166yjavadocs.dir}"/>  
     <mkdir dir="${dist.jsr166yjavadocs.dir}"/>  
   
     <javadoc destdir="${dist.jsr166yjavadocs.dir}"  
              packagenames="jsr166y.*"  
              link="${jdkapidocs.url}"  
              source="${build.sourcelevel}"  
              sourcepath="${topsrc.dir}:${jdk6src.dir}"  
              executable="${javadoc7}"  
              additionalparam="-XDignore.symbol.file=true" />  
   
   </target>  
   
954    <target name="jsr166ydist-jar"    <target name="jsr166ydist-jar"
955            depends="jsr166yclean, jsr166yjar">            depends="jsr166yclean, jsr166yjar">
   
956      <copy file="${jsr166y.jar}" todir="${dist.dir}"/>      <copy file="${jsr166y.jar}" todir="${dist.dir}"/>
957      </target>
958    
959      <target name="jsr166ydist-docs"
960              depends="jsr166yclean, jsr166ydocs">
961        <mirror-dir src="${jsr166ydocs.dir}" dst="${dist.jsr166ydocs.dir}"/>
962    </target>    </target>
963    
964    
# Line 895  Line 969 
969            depends="configure-compiler, jsr166yjar"            depends="configure-compiler, jsr166yjar"
970            description="Compiles extra166y sources">            description="Compiles extra166y sources">
971    
972      <mkdir dir="${build.extra166y.dir}"/>      <mkdir dir="${build.extra166y.classes.dir}"/>
973    
974      <javac srcdir="${topsrc.dir}"      <javac srcdir="${topsrc.dir}"
975             destdir="${build.extra166y.dir}"             destdir="${build.extra166y.classes.dir}"
976             debug="${build.debug}"             debug="${build.debug}"
977             debuglevel="${build.debuglevel}"             debuglevel="${build.debuglevel}"
978             deprecation="${build.deprecation}"             deprecation="${build.deprecation}"
979               bootclasspath="@{jsr166y.jar}:${bootclasspath6}"
980             classpath=""             classpath=""
981             source="6"             source="6"
            bootclasspath="${jsr166y.jar}:${bootclasspath6}"  
982             includeAntRuntime="false"             includeAntRuntime="false"
983             includeJavaRuntime="false"             includeJavaRuntime="false"
984             executable="${javac7}"             executable="${javac7}"
985             fork="true">             fork="true">
986    
987        <include name="extra166y/**/*.java"/>        <include name="extra166y/**/*.java"/>
       <compilerarg line="${build.args}"/>  
988        <compilerarg value="-XDignore.symbol.file=true"/>        <compilerarg value="-XDignore.symbol.file=true"/>
989        <compilerarg value="-Xlint:all,-unchecked,-rawtypes,-serial"/>        <compilerarg value="-Xlint:all,-unchecked,-rawtypes,-serial"/>
990          <compilerarg line="${build.args}"/>
991    
992      </javac>      </javac>
   
993    </target>    </target>
994    
995    
   
996    <target name="extra166yjar"    <target name="extra166yjar"
997            depends="extra166ycompile"            depends="extra166ycompile"
998            description="Builds library jar from compiled sources">            description="Builds library jar from compiled sources">
999    
     <mkdir dir="${build.extra166ylib.dir}"/>  
   
1000      <jar destfile="${extra166y.jar}" index="true">      <jar destfile="${extra166y.jar}" index="true">
1001        <fileset dir="${build.extra166y.dir}"/>        <fileset dir="${build.extra166y.classes.dir}"/>
1002      </jar>      </jar>
1003    
1004    </target>    </target>
1005    
1006    
   
1007    <target name="extra166ydocs"    <target name="extra166ydocs"
1008            description="Builds javadocs to build dir">            description="Builds javadocs to build dir">
1009    
1010      <delete dir="${build.extra166yjavadocs.dir}"/>      <delete dir="${extra166ydocs.dir}"/>
1011      <mkdir dir="${build.extra166yjavadocs.dir}"/>      <mkdir dir="${extra166ydocs.dir}"/>
1012    
1013      <javadoc destdir="${build.extra166yjavadocs.dir}"      <javadoc destdir="${extra166ydocs.dir}"
1014               packagenames="extra166y.*"               packagenames="extra166y.*"
1015               link="${jdkapidocs.url}"               link="${jdkapidocs.url}"
1016               source="6"               access="${build.javadoc.access}"
              bootclasspath="${bootclasspath6}"  
1017               sourcepath="${topsrc.dir}:${jdk6src.dir}"               sourcepath="${topsrc.dir}:${jdk6src.dir}"
1018               executable="${javadoc7}"               bootclasspath="${bootclasspath6}"
1019               additionalparam="-XDignore.symbol.file=true" />               source="6"
1020                 executable="${javadoc7}">
1021          <arg value="-XDignore.symbol.file=true"/>
1022    
1023        </javadoc>
1024    </target>    </target>
1025    
1026    
1027    <target name="extra166ydist"    <target name="extra166ydist"
1028            depends="extra166ydist-clean, extra166ydist-jar, extra166ydist-docs"            depends="extra166ydist-jar, extra166ydist-docs"
1029            description="Puts all distributable products in single hierarchy"/>            description="Puts all distributable products in single hierarchy"/>
1030    
1031    
   
1032    <target name="extra166yclean"    <target name="extra166yclean"
1033            description="Removes all build products">            description="Removes all extra166y build products">
1034    
1035      <delete dir="${build.extra166y.dir}"/>      <delete dir="${build.extra166y.dir}"/>
     <delete dir="${build.extra166ylib.dir}"/>  
1036    
1037    </target>    </target>
1038    
1039    
   
1040    <target name="extra166ydist-clean"    <target name="extra166ydist-clean"
1041            description="Removes all build and distribution products">            description="Removes all build and distribution products">
1042    
1043    </target>    </target>
1044    
   <target name="extra166ydist-docs"  
           description="Builds javadocs to dist dir">  
   
     <delete dir="${dist.extra166yjavadocs.dir}"/>  
     <mkdir dir="${dist.extra166yjavadocs.dir}"/>  
   
     <javadoc destdir="${dist.extra166yjavadocs.dir}"  
              packagenames="extra166y.*"  
              link="${jdkapidocs.url}"  
              source="${build.sourcelevel}"  
              sourcepath="${topsrc.dir}:${jdk6src.dir}"  
              executable="${javadoc7}"  
              additionalparam="-XDignore.symbol.file=true" />  
   
   </target>  
   
1045    <target name="extra166ydist-jar"    <target name="extra166ydist-jar"
1046            depends="extra166yclean, extra166yjar">            depends="extra166yclean, extra166yjar">
   
1047      <copy file="${extra166y.jar}" todir="${dist.dir}"/>      <copy file="${extra166y.jar}" todir="${dist.dir}"/>
1048      </target>
1049    
1050      <target name="extra166ydist-docs"
1051              depends="extra166yclean, extra166ydocs">
1052        <mirror-dir src="${extra166ydocs.dir}" dst="${dist.extra166ydocs.dir}"/>
1053    </target>    </target>
1054    
1055    <!-- jsr166e -->    <!-- jsr166e -->
# Line 1003  Line 1058 
1058            depends="configure-compiler"            depends="configure-compiler"
1059            description="Compiles jsr166e sources">            description="Compiles jsr166e sources">
1060    
1061      <mkdir dir="${build.jsr166e.dir}"/>      <mkdir dir="${build.jsr166e.classes.dir}"/>
1062    
1063      <javac srcdir="${topsrc.dir}"      <javac srcdir="${topsrc.dir}"
1064             destdir="${build.jsr166e.dir}"             destdir="${build.jsr166e.classes.dir}"
1065             debug="${build.debug}"             debug="${build.debug}"
1066             debuglevel="${build.debuglevel}"             debuglevel="${build.debuglevel}"
1067             deprecation="${build.deprecation}"             deprecation="${build.deprecation}"
# Line 1018  Line 1073 
1073             fork="true">             fork="true">
1074    
1075        <include name="jsr166e/**/*.java"/>        <include name="jsr166e/**/*.java"/>
       <compilerarg line="${build.args}"/>  
1076        <compilerarg value="-XDignore.symbol.file=true"/>        <compilerarg value="-XDignore.symbol.file=true"/>
1077        <compilerarg value="-Xlint:all"/>        <compilerarg value="-Xlint:all"/>
1078          <compilerarg line="${build.args}"/>
1079    
1080      </javac>      </javac>
   
1081    </target>    </target>
1082    
1083    
   
1084    <target name="jsr166ejar"    <target name="jsr166ejar"
1085            depends="jsr166ecompile"            depends="jsr166ecompile"
1086            description="Builds library jar from compiled sources">            description="Builds library jar from compiled sources">
1087    
     <mkdir dir="${build.jsr166elib.dir}"/>  
   
1088      <jar destfile="${jsr166e.jar}" index="true">      <jar destfile="${jsr166e.jar}" index="true">
1089        <fileset dir="${build.jsr166e.dir}"/>        <fileset dir="${build.jsr166e.classes.dir}"/>
1090      </jar>      </jar>
1091    
1092    </target>    </target>
1093    
1094    
   
1095    <target name="jsr166edocs"    <target name="jsr166edocs"
1096            description="Builds javadocs to build dir">            description="Builds javadocs to build dir">
1097    
1098      <delete dir="${build.jsr166ejavadocs.dir}"/>      <delete dir="${jsr166edocs.dir}"/>
1099      <mkdir dir="${build.jsr166ejavadocs.dir}"/>      <mkdir dir="${jsr166edocs.dir}"/>
1100    
1101      <javadoc destdir="${build.jsr166ejavadocs.dir}"      <javadoc destdir="${jsr166edocs.dir}"
1102               packagenames="jsr166e.*"               packagenames="jsr166e.*"
1103               link="${jdkapidocs.url}"               link="${jdkapidocs.url}"
1104               source="7"               access="${build.javadoc.access}"
1105               sourcepath="${topsrc.dir}:${jdk7src.dir}"               sourcepath="${topsrc.dir}:${jdk7src.dir}"
1106               executable="${javadoc7}"               source="7"
1107               additionalparam="-XDignore.symbol.file=true" >               executable="${javadoc7}">
1108          <arg value="-XDignore.symbol.file=true"/>
1109    
1110      </javadoc>      </javadoc>
1111      </target>
1112    
1113    
1114      <target name="jsr166e-test-tck"
1115              depends="jsr166ejar"
1116              description="Runs tck tests for jsr166e">
1117    
1118        <run-tck-tests
1119          tck.src.dir="${test.src.dir}/tck-jsr166e"
1120          target="7"
1121          workdir="${build.jsr166e.dir}"
1122          classes="${jsr166e.jar}"/>
1123    </target>    </target>
1124    
1125    
1126    <target name="jsr166edist"    <target name="jsr166edist"
1127            depends="jsr166edist-clean, jsr166edist-jar, jsr166edist-docs"            depends="jsr166edist-jar, jsr166edist-docs"
1128            description="Puts all distributable products in single hierarchy"/>            description="Puts all distributable products in single hierarchy"/>
1129    
1130    
   
1131    <target name="jsr166eclean"    <target name="jsr166eclean"
1132            description="Removes all build products">            description="Removes all jsr166e build products">
   
1133      <delete dir="${build.jsr166e.dir}"/>      <delete dir="${build.jsr166e.dir}"/>
     <delete dir="${build.jsr166elib.dir}"/>  
   
1134    </target>    </target>
1135    
1136    
   
1137    <target name="jsr166edist-clean"    <target name="jsr166edist-clean"
1138            description="Removes all build and distribution products">            description="Removes all build and distribution products">
1139    
1140    </target>    </target>
1141    
1142    <target name="jsr166edist-docs"    <target name="jsr166edist-jar"
1143            description="Builds javadocs to dist dir">            depends="jsr166eclean, jsr166ejar">
1144        <copy file="${jsr166e.jar}" todir="${dist.dir}"/>
1145      <delete dir="${dist.jsr166ejavadocs.dir}"/>    </target>
     <mkdir dir="${dist.jsr166ejavadocs.dir}"/>  
   
     <javadoc destdir="${dist.jsr166ejavadocs.dir}"  
              packagenames="jsr166e.*"  
              link="${jdkapidocs.url}"  
              source="7"  
              sourcepath="${topsrc.dir}:${jdk7src.dir}"  
              executable="${javadoc7}"  
              additionalparam="-XDignore.symbol.file=true" />  
1146    
1147      <target name="jsr166edist-docs"
1148              depends="jsr166eclean, jsr166edocs">
1149        <mirror-dir src="${jsr166edocs.dir}" dst="${dist.jsr166edocs.dir}"/>
1150    </target>    </target>
1151    
   <target name="jsr166edist-jar"  
           depends="jsr166eclean, jsr166ejar">  
1152    
1153      <copy file="${jsr166e.jar}" todir="${dist.dir}"/>  <!-- Find buglets that can be detected by static build tools -->
1154    
1155      <target name="lint">
1156        <antcall target="dists">
1157          <param name="build.javadoc.access" value="private"/>
1158        </antcall>
1159    </target>    </target>
1160    
1161    
1162  </project>  </project>

Legend:
Removed from v.1.107  
changed lines
  Added in v.1.139

dl@cs.oswego.edu
ViewVC Help
Powered by ViewVC 1.1.27