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

Diff of /jsr166/build.xml

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

revision 1.97 by jsr166, Tue Jan 15 01:15:02 2013 UTC revision 1.129 by jsr166, Wed Jan 23 07:17:13 2013 UTC
# Line 8  Line 8 
8    
9    User-specific settings are read from user.properties.    User-specific settings are read from user.properties.
10    See user.properties.sample for an explanation of some useful settings.    See user.properties.sample for an explanation of some useful settings.
11    
12      The repository contains all dependencies except for ant and the JDK
13      itself.  Because the JDK version matters and because different
14      targets require different JDKs, we assume that users have created a
15      hierarchy containing:
16      $HOME/jdk/jdk6
17      $HOME/jdk/jdk7
18      $HOME/jdk/jdk8
19      where each of the above is a JDK or a symlink to same, and
20      $HOME/jdk/src/jdk6
21      $HOME/jdk/src/jdk7
22      $HOME/jdk/src/jdk8
23      where each of the above is a complete JDK source tree
24      (e.g. mercurial forest) or a symlink to same.
25  ------------------------------------------------------------------------------  ------------------------------------------------------------------------------
26    </description>    </description>
27    
28    <target name="usage" description="Advises user to run with -projecthelp">    <target name="usage" description="Display main targets by running 'ant -projecthelp'">
29      <echo>Run "ant -projecthelp" for full usage information.</echo>      <java classname="org.apache.tools.ant.Main">
30          <arg value="-projecthelp" />
31        </java>
32    </target>    </target>
33    
34    
# Line 21  Line 37 
37    
38    
39    <!-- Compilation options -->    <!-- Compilation options -->
40    <property name="build.sourcelevel"    value="1.6"/>    <property name="build.sourcelevel"    value="6"/>
41    <property name="build.debug"          value="true"/>    <property name="build.debug"          value="true"/>
42    <property name="build.debuglevel"     value="source,lines,vars"/>    <property name="build.debuglevel"     value="source,lines,vars"/>
43    <property name="build.deprecation"    value="false"/>    <property name="build.deprecation"    value="false"/>
# Line 31  Line 47 
47    <property name="build.classes.dir"           location="${build.dir}/classes"/>    <property name="build.classes.dir"           location="${build.dir}/classes"/>
48    <property name="build.testcases.dir"         location="${build.dir}/testcases"/>    <property name="build.testcases.dir"         location="${build.dir}/testcases"/>
49    <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"/>  
50    <property name="build.reports.dir"           location="${build.dir}/reports"/>    <property name="build.reports.dir"           location="${build.dir}/reports"/>
51    
52    <property name="build.jdk7.dir"              location="${build.dir}/jdk7"/>    <property name="build.4jdk7.dir"             location="${build.dir}/jsr166-4jdk7"/>
53    <property name="build.jdk7.lib.dir"          location="${build.jdk7.dir}"/>    <property name="build.4jdk7.classes.dir"     location="${build.4jdk7.dir}/classes"/>
54    <property name="build.jdk7.classes.dir"      location="${build.jdk7.dir}/classes"/>    <property name="build.4jdk7.tck.classes.dir" location="${build.4jdk7.dir}/tck-classes"/>
55    <property name="build.jdk7.tck.classes.dir"  location="${build.jdk7.dir}/tck/classes"/>    <property name="build.4jdk7.docs.dir"        location="${build.4jdk7.dir}/docs"/>
   <property name="build.jdk7.docs.dir"         location="${build.jdk7.dir}/docs"/>  
56    
57    <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"/>  
   
58    <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"/>  
   
59    <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"/>  
   
60    <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"/>  
61    
62    <!-- JDK binary locations -->    <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"/>    <property name="jdks.home"  location="${user.home}/jdk"/>
69    
70    <macrodef name="defjdklocations">    <macrodef name="defjdklocations">
71      <attribute name="v"/>      <attribute name="v"/>
72      <sequential>      <sequential>
73      <property name="jdk@{v}.home"  location="${jdks.home}/jdk@{v}"/>      <property name="jdk@{v}.home"   location="${jdks.home}/jdk@{v}"/>
74      <property name="java@{v}"      location="${jdk@{v}.home}/bin/java"/>      <property name="java@{v}"       location="${jdk@{v}.home}/bin/java"/>
75      <property name="javac@{v}"     location="${jdk@{v}.home}/bin/javac"/>      <property name="javac@{v}"      location="${jdk@{v}.home}/bin/javac"/>
76      <property name="javadoc@{v}"   location="${jdk@{v}.home}/bin/javadoc"/>      <property name="javadoc@{v}"    location="${jdk@{v}.home}/bin/javadoc"/>
77      <property name="bootdir@{v}"   location="${jdk@{v}.home}/jre/lib"/>      <property name="jdk@{v}src.dir" location="${jdks.home}/src/jdk@{v}/jdk/src/share/classes"/>
78      <property name="bootclasspath@{v}"      <local name="boot.jar.dir"/>
79       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"/>
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>      </sequential>
89    </macrodef>    </macrodef>
90    
91    <defjdklocations v="6"/>    <macrodef name="mirror-dir">
92    <defjdklocations v="7"/>      <attribute name="src"/>
93    <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=""/>  
94      <sequential>      <sequential>
95      <java classname="JSR166TestCase"      <delete dir="@{dst}"/>
96            jvm="@{jvm}" fork="true">      <mkdir dir="@{dst}"/>
97          <jvmarg value="-Xbootclasspath/p:@{product.jar}"/>      <copy todir="@{dst}" preservelastmodified="true">
98          <jvmarg line="@{jvmflags}"/>        <fileset dir="@{src}"/>
99          <classpath>      </copy>
           <pathelement location="${junit.jar}"/>  
           <pathelement location="@{tck.classes}"/>  
         </classpath>  
     </java>  
100      </sequential>      </sequential>
101    </macrodef>    </macrodef>
102    
103      <defjdklocations v="6"/>
104      <defjdklocations v="7"/>
105      <defjdklocations v="8"/>
106    
107    <!-- Source locations -->    <!-- Source locations -->
108    <property name="src.dir"              location="${basedir}/src/main"/>    <property name="src.dir"              location="${basedir}/src/main"/>
109    <property name="test.src.dir"         location="${basedir}/src/test"/>    <property name="test.src.dir"         location="${basedir}/src/test"/>
# Line 104  Line 113 
113    <property name="lib.dir"              location="${basedir}/lib"/>    <property name="lib.dir"              location="${basedir}/lib"/>
114    <property name="dist.dir"             location="${basedir}/dist"/>    <property name="dist.dir"             location="${basedir}/dist"/>
115    <property name="topsrc.dir"           location="${basedir}/src"/>    <property name="topsrc.dir"           location="${basedir}/src"/>
116    <property name="jdk7src.dir"          location="${topsrc.dir}/jdk7"/>    <property name="4jdk7src.dir"         location="${topsrc.dir}/jdk7"/>
117    <property name="jsr166xsrc.dir"       location="${topsrc.dir}/jsr166x"/>    <property name="jsr166xsrc.dir"       location="${topsrc.dir}/jsr166x"/>
118    <property name="jsr166ysrc.dir"       location="${topsrc.dir}/jsr166y"/>    <property name="jsr166ysrc.dir"       location="${topsrc.dir}/jsr166y"/>
119    <property name="jsr166esrc.dir"       location="${topsrc.dir}/jsr166e"/>    <property name="jsr166esrc.dir"       location="${topsrc.dir}/jsr166e"/>
120    <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"/>  
121    
122    <!-- Distribution locations -->    <!-- Javadoc locations -->
123    <property name="dist.javadocs.dir"           location="${dist.dir}/docs"/>    <property name="docs.dir"          location="${build.dir}/docs"/>
124    <property name="dist.jdk7.docs.dir"          location="${dist.dir}/jsr166-jdk7docs"/>    <property name="4jdk7docs.dir"     location="${build.4jdk7.dir}/docs"/>
125    <property name="dist.jsr166xjavadocs.dir"    location="${dist.dir}/jsr166xdocs"/>    <property name="jsr166xdocs.dir"   location="${build.jsr166x.dir}/docs"/>
126    <property name="dist.jsr166yjavadocs.dir"    location="${dist.dir}/jsr166ydocs"/>    <property name="jsr166ydocs.dir"   location="${build.jsr166y.dir}/docs"/>
127    <property name="dist.jsr166ejavadocs.dir"    location="${dist.dir}/jsr166edocs"/>    <property name="jsr166edocs.dir"   location="${build.jsr166e.dir}/docs"/>
128    <property name="dist.extra166yjavadocs.dir"  location="${dist.dir}/extra166ydocs"/>    <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 -->    <!-- Jar locations -->
138    <property name="product.jar"          location="${build.lib.dir}/jsr166.jar"/>    <property name="product.jar"      location="${build.dir}/jsr166.jar"/>
139    <property name="jdk7product.jar"      location="${build.jdk7.lib.dir}/jsr166-jdk7.jar"/>    <property name="4jdk7product.jar" location="${build.4jdk7.dir}/jsr166-4jdk7.jar"/>
140    <property name="jsr166xproduct.jar"   location="${build.jsr166xlib.dir}/jsr166x.jar"/>    <property name="jsr166x.jar"      location="${build.jsr166x.dir}/jsr166x.jar"/>
141    <property name="jsr166yproduct.jar"   location="${build.jsr166ylib.dir}/jsr166y.jar"/>    <property name="jsr166y.jar"      location="${build.jsr166y.dir}/jsr166y.jar"/>
142    <property name="jsr166eproduct.jar"   location="${build.jsr166elib.dir}/jsr166e.jar"/>    <property name="jsr166e.jar"      location="${build.jsr166e.dir}/jsr166e.jar"/>
143    <property name="extra166yproduct.jar" location="${build.extra166ylib.dir}/extra166y.jar"/>    <property name="extra166y.jar"    location="${build.extra166y.dir}/extra166y.jar"/>
144    <property name="junit.jar"            location="${lib.dir}/junit.jar"/>    <property name="junit.jar"        location="${lib.dir}/junit.jar"/>
   
   <!-- Bootclasspath argument -->  
   <property name="bootclasspath.args"   value="-Xbootclasspath/p:${product.jar}"/>  
145    
146    <!-- Canonical location of jdk API docs, to use with javadoc link attribute -->    <!-- 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/"/>    <property name="jdkapi5docs.url"      value="http://docs.oracle.com/javase/1.5.0/docs/api/"/>
# Line 137  Line 149 
149    <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/"/>
150    
151    <property name="jdkapi8docs.url"      value="http://download.java.net/jdk8/docs/api/"/>    <property name="jdkapi8docs.url"      value="http://download.java.net/jdk8/docs/api/"/>
152    <!-- The below does not yet exist as of 2012-11 -->    <!-- The below does not yet exist as of 2013-01 -->
153    <!-- <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/"/> -->
154    
155      <!-- Default jdk api doc location (latest stable release seems best) -->
156    <property name="jdkapidocs.url"       value="${jdkapi7docs.url}"/>    <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 -->    <!-- Test classpath -->
164    <path id="test.classpath">    <path id="test.classpath">
165      <pathelement location="${build.testcases.dir}"/>      <pathelement location="${build.testcases.dir}"/>
166      <pathelement location="${junit.jar}"/>      <pathelement location="${junit.jar}"/>
167    </path>    </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 -->    <!-- ALoops classpath -->
216    <path id="loops.classpath">    <path id="loops.classpath">
217      <pathelement location="${build.loops.dir}"/>      <pathelement location="${build.loops.dir}"/>
218    </path>    </path>
219    
220      <!-- Support @jls tag, used in jdk8+ javadoc -->
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 -->    <!-- Main targets -->
225    
226    <target name="dists"    <target name="dists"
227            depends="dist, jsr166xdist, jsr166ydist,jsr166edist,  extra166ydist"            depends="dist, 4jdk7dist, jsr166edist, jsr166ydist, extra166ydist, jsr166xdist"
228            description="Builds all public jars and docs"/>            description="Builds all public jars and docs"/>
229    
230    <target name="compile"    <target name="compile"
231            depends="init, configure-compiler"            depends="configure-compiler"
232            description="Compiles main sources to build folder">            description="Compiles src/main sources to build dir">
233    
234      <mkdir dir="${build.classes.dir}"/>      <mkdir dir="${build.classes.dir}"/>
235    
236      <javac srcdir="${src.dir}"      <javac srcdir="${src.dir}"
237            destdir="${build.classes.dir}"             destdir="${build.classes.dir}"
238              debug="${build.debug}"             debug="${build.debug}"
239         debuglevel="${build.debuglevel}"             debuglevel="${build.debuglevel}"
240        deprecation="${build.deprecation}"             deprecation="${build.deprecation}"
241             source="${build.sourcelevel}"             classpath=""
242               fork="true">             includeAntRuntime="false"
243               includeJavaRuntime="false"
244               executable="${javac8}"
245               fork="true">
246    
247        <include name="**/*.java"/>        <include name="**/*.java"/>
248        <compilerarg value="-XDignore.symbol.file=true"/>        <compilerarg value="-XDignore.symbol.file=true"/>
249          <compilerarg value="-Xlint:all"/>
 <!--  
       <exclude name="java/lang/**"/>  
250        <compilerarg line="${build.args}"/>        <compilerarg line="${build.args}"/>
       <compilerarg line="-Xlint -Xmaxwarns 1000"/>  
 -->  
251    
252      </javac>      </javac>
   
253    </target>    </target>
254    
255    
   
256    <target name="jar"    <target name="jar"
257            depends="compile"            depends="compile"
258            description="Builds library jar from compiled sources">            description="Builds library jar from compiled sources">
259    
     <mkdir dir="${build.lib.dir}"/>  
   
260      <jar destfile="${product.jar}">      <jar destfile="${product.jar}">
261        <fileset dir="${build.classes.dir}"/>        <fileset dir="${build.classes.dir}"/>
262      </jar>      </jar>
   
263    </target>    </target>
264    
265    
   
266    <target name="test"    <target name="test"
267            depends="init, configure-tests, report-tests"            depends="configure-tests, report-tests"
268            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)" />
269    
270    
   
271    <target name="docs"    <target name="docs"
272            description="Builds javadocs with custom tags to build folder">            description="Builds javadocs for src/main to dist dir">
273    
274      <delete dir="${build.javadocs.dir}"/>      <delete dir="${docs.dir}"/>
275      <mkdir dir="${build.javadocs.dir}"/>      <mkdir dir="${docs.dir}"/>
276    
277      <!-- the packagenames="none" hack below prevents scanning the -->      <!-- the packagenames="none" hack below prevents scanning the -->
278      <!-- sourcepath for packages -->      <!-- sourcepath for packages -->
279    
280      <javadoc destdir="${build.javadocs.dir}"      <javadoc destdir="${docs.dir}"
281               packagenames="none"               packagenames="none"
282               link="${jdkapidocs.url}"               link="${jdkapi8docs.url}"
283               overview="${src.dir}/intro.html"               overview="${src.dir}/intro.html"
284               sourcepath="${src.dir}:${jdksrc.dir}"               sourcepath="${src.dir}:${jdk8src.dir}"
285               additionalparam="-XDignore.symbol.file=true" >               classpath=""
286                 executable="${javadoc8}">
287        <fileset dir="${src.dir}" defaultexcludes="yes">        <fileset dir="${src.dir}" defaultexcludes="yes">
288          <include name="**/*.java"/>          <include name="**/*.java"/>
289        </fileset>        </fileset>
290          <arg value="-XDignore.symbol.file=true"/>
291          <arg value="-tag"/>
292          <arg value="${javadoc.jls.option}"/>
293      </javadoc>      </javadoc>
   
294    </target>    </target>
295    
296    
   
297    <target name="dist"    <target name="dist"
298            depends="init, dist-clean, dist-jar, dist-docs"            depends="dist-clean, dist-jar, dist-docs"
299            description="Puts all distributable products in single hierarchy"/>            description="Puts all distributable products in single hierarchy"/>
300    
301    
# Line 252  Line 314 
314        <exclude name="**/SyntaxTest.java"/>        <exclude name="**/SyntaxTest.java"/>
315        <exclude name="**/SuperfluousAbstract.java"/>        <exclude name="**/SuperfluousAbstract.java"/>
316      </jar>      </jar>
   
317    </target>    </target>
318    
319    
   
320    <target name="clean"    <target name="clean"
321            description="Removes all build products">            description="Removes all build products">
322    
323      <delete dir="${build.dir}"/>      <delete dir="${build.dir}"/>
     <delete dir="${build.classes.dir}"/>  
     <delete dir="${build.lib.dir}"/>  
324    
325    </target>    </target>
326    
327    
   
328    <target name="dist-clean"    <target name="dist-clean"
329            description="Removes all build and distribution products">            description="Removes all build and distribution products">
330    
# Line 276  Line 333 
333    </target>    </target>
334    
335    
   
   <target name="dist-docs"  
           description="Builds javadocs without custom tags to dist folder">  
   
     <delete dir="${dist.javadocs.dir}"/>  
     <mkdir dir="${dist.javadocs.dir}"/>  
   
     <!-- the packagenames="none" hack below prevents scanning the -->  
     <!-- sourcepath for packages -->  
   
     <javadoc destdir="${dist.javadocs.dir}"  
              packagenames="none"  
              link="${jdkapidocs.url}"  
              overview="${src.dir}/intro.html"  
              sourcepath="${src.dir}:${jdksrc.dir}"  
              additionalparam="-XDignore.symbol.file=true" >  
       <fileset dir="${src.dir}" defaultexcludes="yes">  
         <include name="**/*.java"/>  
       </fileset>  
     </javadoc>  
   
   </target>  
   
   
   
336    <!-- Internal targets -->    <!-- Internal targets -->
337    
338    
   <target name="init">  
   
     <!-- Version is kept in a separate file -->  
     <loadfile property="version" srcFile="version.properties"/>  
     <echo>Building JSR-166 version ${version}</echo>  
     <echo>java.home is ${java.home}</echo>  
   
   </target>  
   
   
339    <target name="dist-jar"    <target name="dist-jar"
340            depends="clean, jar">            depends="clean, jar">
   
341      <copy file="${product.jar}" todir="${dist.dir}"/>      <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>    </target>
348    
349    
# Line 328  Line 353 
353      <mkdir dir="${build.testcases.dir}"/>      <mkdir dir="${build.testcases.dir}"/>
354    
355      <javac srcdir="${tck.src.dir}"      <javac srcdir="${tck.src.dir}"
356            destdir="${build.testcases.dir}"             destdir="${build.testcases.dir}"
357              debug="${build.debug}"             debug="${build.debug}"
358         debuglevel="${build.debuglevel}"             debuglevel="${build.debuglevel}"
359        deprecation="${build.deprecation}"             deprecation="${build.deprecation}"
360             source="${build.sourcelevel}"             source="6"
361               fork="true">             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}"/>        <include name="**/*.java"/>
       <compilerarg line="${build.args}"/>  
369        <compilerarg value="-XDignore.symbol.file=true"/>        <compilerarg value="-XDignore.symbol.file=true"/>
370          <compilerarg value="-Xlint:all,-unchecked,-rawtypes,-serial,-deprecation"/>
371        <classpath refid="test.classpath"/>        <compilerarg line="${build.args}"/>
372    
373      </javac>      </javac>
374    
375      <javac srcdir="${test.src.dir}"      <javac srcdir="${test.src.dir}"
376            destdir="${build.testcases.dir}"             destdir="${build.testcases.dir}"
377              debug="${build.debug}"             debug="${build.debug}"
378         debuglevel="${build.debuglevel}"             debuglevel="${build.debuglevel}"
379        deprecation="${build.deprecation}"             deprecation="${build.deprecation}"
380             source="${build.sourcelevel}"             source="6"
381               fork="true">             classpath=""
382               bootclasspath="@{product.jar}:${bootclasspath6}"
383        <include name="jsr166/test/**"/>             includeAntRuntime="false"
384               includeJavaRuntime="false"
385               executable="${javac8}"
386               fork="true">
387    
388        <compilerarg value="${bootclasspath.args}"/>        <include name="jsr166/test/**/*.java"/>
       <compilerarg line="${build.args}"/>  
389        <compilerarg value="-XDignore.symbol.file=true"/>        <compilerarg value="-XDignore.symbol.file=true"/>
390          <compilerarg value="-Xlint:all,-unchecked,-rawtypes,-serial,-deprecation"/>
391        <classpath refid="test.classpath"/>        <compilerarg line="${build.args}"/>
392    
393      </javac>      </javac>
394    
# Line 370  Line 401 
401             source="${build.sourcelevel}"             source="${build.sourcelevel}"
402               fork="true">               fork="true">
403    
404        <compilerarg value="${bootclasspath.args}"/>        <compilerarg value="-Xbootclasspath/p:${product.jar}"/>
       <compilerarg line="${build.args}"/>  
405        <compilerarg value="-XDignore.symbol.file=true"/>        <compilerarg value="-XDignore.symbol.file=true"/>
406          <compilerarg line="${build.args}"/>
       <classpath refid="test.classpath"/>  
407    
408      </javac>      </javac>
409  -->  -->
# Line 395  Line 424 
424            errorProperty="junit.failed"            errorProperty="junit.failed"
425          failureProperty="junit.failed"          failureProperty="junit.failed"
426                      dir="${build.reports.dir}"                      dir="${build.reports.dir}"
427                        jvm="${java8}"
428                     fork="true">                     fork="true">
429    
430        <jvmarg value="${bootclasspath.args}"/>        <jvmarg value="-Xbootclasspath/p:${product.jar}"/>
431        <jvmarg value="-server"/>        <jvmarg value="-server"/>
432        <jvmarg value="-showversion"/>        <jvmarg value="-showversion"/>
433    
# Line 498  Line 528 
528    <!-- Various demos and test programs -->    <!-- Various demos and test programs -->
529    
530    
531    <target name="loops" depends="init, configure-compiler"    <target name="loops" depends="configure-compiler"
532            description="Benchmark from Doug Lea's AQS paper">            description="Benchmark from Doug Lea's AQS paper">
533    
534      <mkdir dir="${build.loops.dir}"/>      <mkdir dir="${build.loops.dir}"/>
# Line 524  Line 554 
554    </target>    </target>
555    
556    
557    <!-- jdk7 -->    <!-- jsr166 4jdk7 -->
   
558    
559    <target name="jdk7compile"    <target name="4jdk7compile"
560            depends="configure-compiler"            depends="configure-compiler"
561            description="Compiles src/jdk7 sources">            description="Compiles src/jdk7 sources, targeting jdk7">
562    
563      <mkdir dir="${build.jdk7.classes.dir}"/>      <mkdir dir="${build.4jdk7.classes.dir}"/>
564    
565      <javac srcdir="${jdk7src.dir}"      <javac srcdir="${4jdk7src.dir}"
566             destdir="${build.jdk7.classes.dir}"             destdir="${build.4jdk7.classes.dir}"
567             debug="${build.debug}"             debug="${build.debug}"
568             debuglevel="${build.debuglevel}"             debuglevel="${build.debuglevel}"
569             deprecation="${build.deprecation}"             deprecation="${build.deprecation}"
570             source="1.6"             source="6"
571             classpath=""             classpath=""
572             bootclasspath="${bootclasspath6}"             bootclasspath="${bootclasspath6}"
573             includeAntRuntime="false"             includeAntRuntime="false"
# Line 547  Line 576 
576             fork="true">             fork="true">
577    
578        <include name="**/*.java"/>        <include name="**/*.java"/>
       <compilerarg line="${build.args}"/>  
579        <compilerarg value="-XDignore.symbol.file=true"/>        <compilerarg value="-XDignore.symbol.file=true"/>
580        <compilerarg value="-Xlint:all"/>        <compilerarg value="-Xlint:all"/>
581          <compilerarg line="${build.args}"/>
582    
583      </javac>      </javac>
584      </target>
585    
     <mkdir dir="${build.jdk7.lib.dir}"/>  
   
     <jar destfile="${jdk7product.jar}" index="true">  
       <fileset dir="${build.jdk7.classes.dir}"/>  
     </jar>  
   
     <mkdir dir="${build.jdk7.tck.classes.dir}"/>  
   
     <javac srcdir="${tck.src.dir}"  
            destdir="${build.jdk7.tck.classes.dir}"  
            debug="${build.debug}"  
            debuglevel="${build.debuglevel}"  
            deprecation="${build.deprecation}"  
            source="1.6"  
            classpath="${junit.jar}"  
            bootclasspath="${jdk7product.jar}:${bootclasspath6}"  
            includeAntRuntime="false"  
            includeJavaRuntime="false"  
            executable="${javac7}"  
            fork="true">  
586    
587        <include name="**/*.java"/>    <target name="4jdk7jar"
588        <compilerarg line="${build.args}"/>            depends="4jdk7compile"
589        <compilerarg value="-XDignore.symbol.file=true"/>            description="Builds library jar from compiled sources">
       <compilerarg value="-Xlint:all,-unchecked,-rawtypes,-serial,-deprecation"/>  
590    
591      </javac>      <jar destfile="${4jdk7product.jar}">
592          <fileset dir="${build.4jdk7.classes.dir}"/>
593        </jar>
594    
595    </target>    </target>
596    
597    
598    <target name="run-jdk7-tck-tests"    <target name="4jdk7-test-tck"
599            depends="jdk7compile"            depends="4jdk7jar"
600            description="Runs tck tests for jsr166-jdk7 directly">            description="Runs tck tests for jsr166-4jdk7 directly">
601    
602      <run-tck-tests      <run-tck-tests
603        jvm="${java7}"        target="7"
604        tck.classes="${build.jdk7.tck.classes.dir}"        workdir="${build.4jdk7.dir}"
605        product.jar="${jdk7product.jar}"/>        classes="${4jdk7product.jar}"/>
606    </target>    </target>
607    
608    
609    <target name="run-jdk7-tck-tests-via-junit-task"    <target name="4jdk7-test-tck-junit"
610            depends="jdk7compile">            depends="4jdk7compile"
611              description="Runs tck tests for jsr166-4jdk7 via junit task (experimental)">
612    
613      <junit printsummary="true"      <junit printsummary="true"
614             showoutput="true"             showoutput="true"
# Line 605  Line 618 
618             jvm="${java7}"             jvm="${java7}"
619             fork="true">             fork="true">
620    
621        <jvmarg value="-Xbootclasspath/p:${jdk7product.jar}"/>        <jvmarg value="-Xbootclasspath/p:${4jdk7product.jar}"/>
622        <jvmarg value="-server"/>        <jvmarg value="-server"/>
623    
624        <classpath>        <classpath>
625          <pathelement location="${junit.jar}"/>          <pathelement location="${junit.jar}"/>
626          <pathelement location="${build.jdk7.tck.classes.dir}"/>          <pathelement location="${build.4jdk7.tck.classes.dir}"/>
627        </classpath>        </classpath>
628    
629        <formatter type="brief"/>        <formatter type="brief"/>
# Line 621  Line 634 
634      </junit>      </junit>
635    </target>    </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="jdk7docs"    <target name="4jdk7docs"
666            description="Builds javadocs with custom tags to build folder">            description="Builds javadocs for src/jdk7 to dist dir">
667    
668      <delete dir="${build.jdk7.docs.dir}"/>      <delete dir="${4jdk7docs.dir}"/>
669      <mkdir dir="${build.jdk7.docs.dir}"/>      <mkdir dir="${4jdk7docs.dir}"/>
670    
671      <javadoc destdir="${build.jdk7.docs.dir}"      <javadoc destdir="${4jdk7docs.dir}"
672               packagenames="none"               packagenames="none"
673               link="${jdkapi7docs.url}"               link="${jdkapi7docs.url}"
674               overview="${jdk7src.dir}/intro.html"               overview="${4jdk7src.dir}/intro.html"
675               sourcepath="${jdk7src.dir}"               sourcepath="${4jdk7src.dir}:${jdk7src.dir}"
              bootclasspath="${bootclasspath6}"  
676               classpath=""               classpath=""
677               source="1.6"               executable="${javadoc7}">
678               executable="${javadoc7}"        <fileset dir="${4jdk7src.dir}" defaultexcludes="yes">
              additionalparam="-XDignore.symbol.file=true" >  
       <fileset dir="${jdk7src.dir}" defaultexcludes="yes">  
679          <include name="**/*.java"/>          <include name="**/*.java"/>
680        </fileset>        </fileset>
681          <arg value="-XDignore.symbol.file=true"/>
682      </javadoc>      </javadoc>
   
683    </target>    </target>
684    
685    
686    <target name="jdk7dist"    <target name="4jdk7dist"
687            depends="jdk7dist-clean, jdk7dist-jar, jdk7dist-docs"            depends="4jdk7dist-jar, 4jdk7dist-docs"
688            description="Puts all distributable products in single hierarchy"/>            description="Puts all distributable products in single hierarchy"/>
689    
690    
691      <target name="4jdk7clean"
692              description="Removes all 4jdk7 build products">
693    
694    <target name="jdk7clean"      <delete dir="${build.4jdk7.dir}"/>
           description="Removes all build products">  
   
     <delete dir="${build.jdk7.dir}"/>  
695    
696    </target>    </target>
697    
698    
699      <target name="4jdk7dist-clean"
   <target name="jdk7dist-clean"  
700            description="Removes all build and distribution products">            description="Removes all build and distribution products">
701    
702    </target>    </target>
703    
704    <target name="jdk7dist-docs"    <target name="4jdk7dist-jar"
705            description="Builds javadocs without custom tags to dist folder">            depends="4jdk7clean, 4jdk7jar">
706        <copy file="${4jdk7product.jar}" todir="${dist.dir}"/>
     <delete dir="${dist.jdk7.docs.dir}"/>  
     <mkdir dir="${dist.jdk7.docs.dir}"/>  
   
     <javadoc destdir="${dist.jdk7.docs.dir}"  
              packagenames="none"  
              link="${jdkapi7docs.url}"  
              overview="${jdk7src.dir}/intro.html"  
              sourcepath="${jdk7src.dir}"  
              classpath=""  
              executable="${javadoc7}"  
              bootclasspath="${bootclasspath6}"  
              source="1.6">  
       <arg value="-XDignore.symbol.file=true"/>  
       <fileset dir="${jdk7src.dir}" defaultexcludes="yes">  
         <include name="**/*.java"/>  
       </fileset>  
     </javadoc>  
   
707    </target>    </target>
708    
   <target name="jdk7dist-jar"  
           depends="jdk7clean, jdk7compile">  
   
     <copy file="${jdk7product.jar}" todir="${dist.dir}"/>  
709    
710      <target name="4jdk7dist-docs"
711              depends="4jdk7clean, 4jdk7docs">
712        <mirror-dir src="${4jdk7docs.dir}" dst="${dist.4jdk7docs.dir}"/>
713    </target>    </target>
714    
   <!-- jsr166x -->  
715    
716      <!-- jsr166x -->
717    
718    <target name="jsr166xcompile"    <target name="jsr166xcompile"
719            depends="init, configure-compiler"            depends="configure-compiler"
720            description="Compiles jsr166x sources">            description="Compiles jsr166x sources to build dir">
721    
722      <mkdir dir="${build.jsr166x.dir}"/>      <mkdir dir="${build.jsr166x.classes.dir}"/>
723    
724      <javac srcdir="${jsr166xsrc.dir}"      <javac srcdir="${topsrc.dir}"
725            destdir="${build.jsr166x.dir}"             destdir="${build.jsr166x.classes.dir}"
726              debug="${build.debug}"             debug="${build.debug}"
727         debuglevel="${build.debuglevel}"             debuglevel="${build.debuglevel}"
728        deprecation="${build.deprecation}"             deprecation="${build.deprecation}"
729             source="${build.sourcelevel}"             classpath=""
730               fork="true">             bootclasspath="${bootclasspath6}"
731               source="5"
732               includeAntRuntime="false"
733               includeJavaRuntime="false"
734               executable="${javac7}"
735               fork="true">
736    
737        <include name="**/*.java"/>        <include name="jsr166x/**/*.java"/>
       <compilerarg line="${build.args}"/>  
738        <compilerarg value="-XDignore.symbol.file=true"/>        <compilerarg value="-XDignore.symbol.file=true"/>
739          <compilerarg value="-Xlint:all,-unchecked,-rawtypes"/>
740          <compilerarg line="${build.args}"/>
741    
742      </javac>      </javac>
   
743    </target>    </target>
744    
745    
   
746    <target name="jsr166xjar"    <target name="jsr166xjar"
747            depends="jsr166xcompile"            depends="jsr166xcompile"
748            description="Builds library jar from compiled sources">            description="Builds library jar from compiled sources">
749    
750      <mkdir dir="${build.jsr166xlib.dir}"/>      <jar destfile="${jsr166x.jar}">
751          <fileset dir="${build.jsr166x.classes.dir}"/>
     <jar destfile="${jsr166xproduct.jar}">  
       <fileset dir="${build.jsr166x.dir}"/>  
752      </jar>      </jar>
753    
754    </target>    </target>
755    
756    
   
757    <target name="jsr166xdocs"    <target name="jsr166xdocs"
758            description="Builds javadocs with custom tags to build folder">            description="Builds javadocs to dist dir">
759    
760      <delete dir="${build.jsr166xjavadocs.dir}"/>      <delete dir="${jsr166xdocs.dir}"/>
761      <mkdir dir="${build.jsr166xjavadocs.dir}"/>      <mkdir dir="${jsr166xdocs.dir}"/>
762    
763      <javadoc destdir="${build.jsr166xjavadocs.dir}"      <javadoc destdir="${jsr166xdocs.dir}"
764               packagenames="jsr166x"               packagenames="jsr166x.*"
765               link="${jdkapidocs.url}"               link="${jdkapidocs.url}"
766               source="${build.sourcelevel}"               sourcepath="${topsrc.dir}:${jdk6src.dir}"
767               sourcepath="${topsrc.dir}:${jdksrc.dir}"               bootclasspath="${bootclasspath6}"
768               additionalparam="-XDignore.symbol.file=true" />               source="5"
769                 executable="${javadoc7}">
770          <arg value="-XDignore.symbol.file=true"/>
771    
772        </javadoc>
773    </target>    </target>
774    
775    
776    <target name="jsr166xdist"    <target name="jsr166xdist"
777            depends="jsr166xdist-clean, jsr166xdist-jar, jsr166xdist-docs"            depends="jsr166xdist-jar, jsr166xdist-docs"
778            description="Puts all distributable products in single hierarchy"/>            description="Puts all distributable products in single hierarchy"/>
779    
780    
   
781    <target name="jsr166xclean"    <target name="jsr166xclean"
782            description="Removes all build products">            description="Removes all jsr166x build products">
783    
784      <delete dir="${build.jsr166x.dir}"/>      <delete dir="${build.jsr166x.dir}"/>
     <delete dir="${build.jsr166xlib.dir}"/>  
785    
786    </target>    </target>
787    
788    
   
789    <target name="jsr166xdist-clean"    <target name="jsr166xdist-clean"
790            description="Removes all build and distribution products">            description="Removes all build and distribution products">
791    
792    </target>    </target>
793    
794    
   
   <target name="jsr166xdist-docs"  
           description="Builds javadocs without custom tags to dist folder">  
   
     <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}:${jdksrc.dir}"  
              additionalparam="-XDignore.symbol.file=true" />  
   
   </target>  
   
795    <target name="jsr166xdist-jar"    <target name="jsr166xdist-jar"
796            depends="jsr166xclean, jsr166xjar">            depends="jsr166xclean, jsr166xjar">
797        <copy file="${jsr166x.jar}" todir="${dist.dir}"/>
798      </target>
799    
800      <copy file="${jsr166xproduct.jar}" todir="${dist.dir}"/>    <target name="jsr166xdist-docs"
801              depends="jsr166xclean, jsr166xdocs">
802        <mirror-dir src="${jsr166xdocs.dir}" dst="${dist.jsr166xdocs.dir}"/>
803    </target>    </target>
804    
805    <!-- jsr166y -->    <!-- jsr166y -->
806    
807    
808    <target name="jsr166ycompile"    <target name="jsr166ycompile"
809            depends="init, configure-compiler"            depends="configure-compiler"
810            description="Compiles jsr166y sources">            description="Compiles jsr166y sources">
811    
812      <mkdir dir="${build.jsr166y.dir}"/>      <mkdir dir="${build.jsr166y.classes.dir}"/>
813    
814      <javac srcdir="${jsr166ysrc.dir}"      <javac srcdir="${topsrc.dir}"
815            destdir="${build.jsr166y.dir}"             destdir="${build.jsr166y.classes.dir}"
816              debug="${build.debug}"             debug="${build.debug}"
817         debuglevel="${build.debuglevel}"             debuglevel="${build.debuglevel}"
818        deprecation="${build.deprecation}"             deprecation="${build.deprecation}"
819             source="${build.sourcelevel}"             source="6"
820               fork="true">             classpath=""
821               bootclasspath="${bootclasspath6}"
822               includeAntRuntime="false"
823               includeJavaRuntime="false"
824               executable="${javac7}"
825               fork="true">
826    
827        <include name="**/*.java"/>        <include name="jsr166y/**/*.java"/>
       <compilerarg line="${build.args}"/>  
828        <compilerarg value="-XDignore.symbol.file=true"/>        <compilerarg value="-XDignore.symbol.file=true"/>
829        <compilerarg value="${bootclasspath.args}"/>        <compilerarg value="-Xlint:all"/>
830          <compilerarg line="${build.args}"/>
 <!--       <compilerarg line="-Xlint -Xmaxwarns 1000"/> -->  
831    
832      </javac>      </javac>
   
833    </target>    </target>
834    
835    
   
836    <target name="jsr166yjar"    <target name="jsr166yjar"
837            depends="jsr166ycompile"            depends="jsr166ycompile"
838            description="Builds library jar from compiled sources">            description="Builds library jar from compiled sources">
839    
840      <mkdir dir="${build.jsr166ylib.dir}"/>      <jar destfile="${jsr166y.jar}" index="true">
841          <fileset dir="${build.jsr166y.classes.dir}"/>
     <jar destfile="${jsr166yproduct.jar}" index="true">  
       <fileset dir="${build.jsr166y.dir}"/>  
842      </jar>      </jar>
843    
844    </target>    </target>
845    
846    
   
847    <target name="jsr166ydocs"    <target name="jsr166ydocs"
848            description="Builds javadocs with custom tags to build folder">            description="Builds javadocs to dist dir">
849    
850      <delete dir="${build.jsr166yjavadocs.dir}"/>      <delete dir="${jsr166ydocs.dir}"/>
851      <mkdir dir="${build.jsr166yjavadocs.dir}"/>      <mkdir dir="${jsr166ydocs.dir}"/>
852    
853      <javadoc destdir="${build.jsr166yjavadocs.dir}"      <javadoc destdir="${jsr166ydocs.dir}"
854               packagenames="jsr166y"               packagenames="jsr166y.*"
855               link="${jdkapidocs.url}"               link="${jdkapidocs.url}"
856               source="${build.sourcelevel}"               sourcepath="${topsrc.dir}:${jdk6src.dir}"
857               sourcepath="${topsrc.dir}:${jdksrc.dir}"               bootclasspath="${bootclasspath6}"
858               additionalparam="-XDignore.symbol.file=true" />               source="6"
859                 executable="${javadoc7}">
860          <arg value="-XDignore.symbol.file=true"/>
861    
862        </javadoc>
863    </target>    </target>
864    
865    
866    <target name="jsr166ydist"    <target name="jsr166ydist"
867            depends="jsr166ydist-clean, jsr166ydist-jar, jsr166ydist-docs"            depends="jsr166ydist-jar, jsr166ydist-docs"
868            description="Puts all distributable products in single hierarchy"/>            description="Puts all distributable products in single hierarchy"/>
869    
870    
   
871    <target name="jsr166yclean"    <target name="jsr166yclean"
872            description="Removes all build products">            description="Removes all jsr166y build products">
873    
874      <delete dir="${build.jsr166y.dir}"/>      <delete dir="${build.jsr166y.dir}"/>
     <delete dir="${build.jsr166ylib.dir}"/>  
875    
876    </target>    </target>
877    
878    
   
879    <target name="jsr166ydist-clean"    <target name="jsr166ydist-clean"
880            description="Removes all build and distribution products">            description="Removes all build and distribution products">
881    
882    </target>    </target>
883    
   <target name="jsr166ydist-docs"  
           description="Builds javadocs without custom tags to dist folder">  
   
     <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}:${jdksrc.dir}"  
              additionalparam="-XDignore.symbol.file=true" />  
   
   </target>  
   
884    <target name="jsr166ydist-jar"    <target name="jsr166ydist-jar"
885            depends="jsr166yclean, jsr166yjar">            depends="jsr166yclean, jsr166yjar">
886        <copy file="${jsr166y.jar}" todir="${dist.dir}"/>
887      </target>
888    
889      <copy file="${jsr166yproduct.jar}" todir="${dist.dir}"/>    <target name="jsr166ydist-docs"
890              depends="jsr166yclean, jsr166ydocs">
891        <mirror-dir src="${jsr166ydocs.dir}" dst="${dist.jsr166ydocs.dir}"/>
892    </target>    </target>
893    
894    
# Line 906  Line 896 
896    
897    
898    <target name="extra166ycompile"    <target name="extra166ycompile"
899            depends="init, configure-compiler, jsr166ycompile"            depends="configure-compiler, jsr166yjar"
900            description="Compiles extra166y sources">            description="Compiles extra166y sources">
901    
902      <mkdir dir="${build.extra166y.dir}"/>      <mkdir dir="${build.extra166y.classes.dir}"/>
903    
904      <javac srcdir="${extra166ysrc.dir}"      <javac srcdir="${topsrc.dir}"
905            destdir="${build.extra166y.dir}"             destdir="${build.extra166y.classes.dir}"
906              debug="${build.debug}"             debug="${build.debug}"
907              classpath="${jsr166yproduct.jar}"             debuglevel="${build.debuglevel}"
908         debuglevel="${build.debuglevel}"             deprecation="${build.deprecation}"
909        deprecation="${build.deprecation}"             bootclasspath="@{jsr166y.jar}:${bootclasspath6}"
910             source="${build.sourcelevel}"             classpath=""
911               fork="true">             source="6"
912               includeAntRuntime="false"
913               includeJavaRuntime="false"
914               executable="${javac7}"
915               fork="true">
916    
917        <include name="**/*.java"/>        <include name="extra166y/**/*.java"/>
       <compilerarg line="${build.args}"/>  
918        <compilerarg value="-XDignore.symbol.file=true"/>        <compilerarg value="-XDignore.symbol.file=true"/>
919        <compilerarg value="${bootclasspath.args}"/>        <compilerarg value="-Xlint:all,-unchecked,-rawtypes,-serial"/>
920          <compilerarg line="${build.args}"/>
 <!--       <compilerarg line="-Xlint -Xmaxwarns 1000"/> -->  
921    
922      </javac>      </javac>
   
923    </target>    </target>
924    
925    
   
926    <target name="extra166yjar"    <target name="extra166yjar"
927            depends="extra166ycompile"            depends="extra166ycompile"
928            description="Builds library jar from compiled sources">            description="Builds library jar from compiled sources">
929    
930      <mkdir dir="${build.extra166ylib.dir}"/>      <jar destfile="${extra166y.jar}" index="true">
931          <fileset dir="${build.extra166y.classes.dir}"/>
     <jar destfile="${extra166yproduct.jar}" index="true">  
       <fileset dir="${build.extra166y.dir}"/>  
932      </jar>      </jar>
933    
934    </target>    </target>
935    
936    
   
937    <target name="extra166ydocs"    <target name="extra166ydocs"
938            description="Builds javadocs with custom tags to build folder">            description="Builds javadocs to build dir">
939    
940      <delete dir="${build.extra166yjavadocs.dir}"/>      <delete dir="${extra166ydocs.dir}"/>
941      <mkdir dir="${build.extra166yjavadocs.dir}"/>      <mkdir dir="${extra166ydocs.dir}"/>
942    
943      <javadoc destdir="${build.extra166yjavadocs.dir}"      <javadoc destdir="${extra166ydocs.dir}"
944               packagenames="extra166y"               packagenames="extra166y.*"
945               link="${jdkapidocs.url}"               link="${jdkapidocs.url}"
946               source="${build.sourcelevel}"               sourcepath="${topsrc.dir}:${jdk6src.dir}"
947               sourcepath="${topsrc.dir}:${jdksrc.dir}"               bootclasspath="${bootclasspath6}"
948               additionalparam="-XDignore.symbol.file=true" />               source="6"
949                 executable="${javadoc7}">
950          <arg value="-XDignore.symbol.file=true"/>
951    
952        </javadoc>
953    </target>    </target>
954    
955    
956    <target name="extra166ydist"    <target name="extra166ydist"
957            depends="extra166ydist-clean, extra166ydist-jar, extra166ydist-docs"            depends="extra166ydist-jar, extra166ydist-docs"
958            description="Puts all distributable products in single hierarchy"/>            description="Puts all distributable products in single hierarchy"/>
959    
960    
   
961    <target name="extra166yclean"    <target name="extra166yclean"
962            description="Removes all build products">            description="Removes all extra166y build products">
963    
964      <delete dir="${build.extra166y.dir}"/>      <delete dir="${build.extra166y.dir}"/>
     <delete dir="${build.extra166ylib.dir}"/>  
965    
966    </target>    </target>
967    
968    
   
969    <target name="extra166ydist-clean"    <target name="extra166ydist-clean"
970            description="Removes all build and distribution products">            description="Removes all build and distribution products">
971    
972    </target>    </target>
973    
   <target name="extra166ydist-docs"  
           description="Builds javadocs without custom tags to dist folder">  
   
     <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}:${jdksrc.dir}"  
              additionalparam="-XDignore.symbol.file=true" />  
   
   </target>  
   
974    <target name="extra166ydist-jar"    <target name="extra166ydist-jar"
975            depends="extra166yclean, extra166yjar">            depends="extra166yclean, extra166yjar">
976        <copy file="${extra166y.jar}" todir="${dist.dir}"/>
977      </target>
978    
979      <copy file="${extra166yproduct.jar}" todir="${dist.dir}"/>    <target name="extra166ydist-docs"
980              depends="extra166yclean, extra166ydocs">
981        <mirror-dir src="${extra166ydocs.dir}" dst="${dist.extra166ydocs.dir}"/>
982    </target>    </target>
983    
984    <!-- jsr166e -->    <!-- jsr166e -->
# Line 1012  Line 987 
987            depends="configure-compiler"            depends="configure-compiler"
988            description="Compiles jsr166e sources">            description="Compiles jsr166e sources">
989    
990      <mkdir dir="${build.jsr166e.dir}"/>      <mkdir dir="${build.jsr166e.classes.dir}"/>
991    
992      <javac srcdir="${topsrc.dir}"      <javac srcdir="${topsrc.dir}"
993             destdir="${build.jsr166e.dir}"             destdir="${build.jsr166e.classes.dir}"
994             debug="${build.debug}"             debug="${build.debug}"
995             debuglevel="${build.debuglevel}"             debuglevel="${build.debuglevel}"
996             deprecation="${build.deprecation}"             deprecation="${build.deprecation}"
997             source="1.7"             source="7"
998             classpath=""             classpath=""
999             includeAntRuntime="false"             includeAntRuntime="false"
1000             includeJavaRuntime="false"             includeJavaRuntime="false"
# Line 1027  Line 1002 
1002             fork="true">             fork="true">
1003    
1004        <include name="jsr166e/**/*.java"/>        <include name="jsr166e/**/*.java"/>
       <compilerarg line="${build.args}"/>  
1005        <compilerarg value="-XDignore.symbol.file=true"/>        <compilerarg value="-XDignore.symbol.file=true"/>
1006        <compilerarg value="-Xlint:all"/>        <compilerarg value="-Xlint:all"/>
1007          <compilerarg line="${build.args}"/>
1008    
1009      </javac>      </javac>
   
1010    </target>    </target>
1011    
1012    
   
1013    <target name="jsr166ejar"    <target name="jsr166ejar"
1014            depends="jsr166ecompile"            depends="jsr166ecompile"
1015            description="Builds library jar from compiled sources">            description="Builds library jar from compiled sources">
1016    
1017      <mkdir dir="${build.jsr166elib.dir}"/>      <jar destfile="${jsr166e.jar}" index="true">
1018          <fileset dir="${build.jsr166e.classes.dir}"/>
     <jar destfile="${jsr166eproduct.jar}" index="true">  
       <fileset dir="${build.jsr166e.dir}"/>  
1019      </jar>      </jar>
1020    
1021    </target>    </target>
1022    
1023    
   
1024    <target name="jsr166edocs"    <target name="jsr166edocs"
1025            description="Builds javadocs with custom tags to build folder">            description="Builds javadocs to build dir">
1026    
1027      <delete dir="${build.jsr166ejavadocs.dir}"/>      <delete dir="${jsr166edocs.dir}"/>
1028      <mkdir dir="${build.jsr166ejavadocs.dir}"/>      <mkdir dir="${jsr166edocs.dir}"/>
1029    
1030        <javadoc destdir="${jsr166edocs.dir}"
1031                 packagenames="jsr166e.*"
1032                 link="${jdkapidocs.url}"
1033                 sourcepath="${topsrc.dir}:${jdk7src.dir}"
1034                 source="7"
1035                 executable="${javadoc7}">
1036          <arg value="-XDignore.symbol.file=true"/>
1037    
     <javadoc destdir="${build.jsr166ejavadocs.dir}"  
              packagenames="jsr166e,jsr166e.extra"  
              link="${jdkapi7docs.url}"  
              source="1.7"  
              sourcepath="${topsrc.dir}:${jdk7src.dir}:${jdksrc.dir}"  
              executable="${javadoc7}"  
              additionalparam="-XDignore.symbol.file=true" >  
       <fileset dir="${topsrc.dir}" defaultexcludes="yes">  
         <include name="jsr166e/**/*.java"/>  
       </fileset>  
1038      </javadoc>      </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>    </target>
1053    
1054    
1055    <target name="jsr166edist"    <target name="jsr166edist"
1056            depends="jsr166edist-clean, jsr166edist-jar, jsr166edist-docs"            depends="jsr166edist-jar, jsr166edist-docs"
1057            description="Puts all distributable products in single hierarchy"/>            description="Puts all distributable products in single hierarchy"/>
1058    
1059    
   
1060    <target name="jsr166eclean"    <target name="jsr166eclean"
1061            description="Removes all build products">            description="Removes all jsr166e build products">
   
1062      <delete dir="${build.jsr166e.dir}"/>      <delete dir="${build.jsr166e.dir}"/>
     <delete dir="${build.jsr166elib.dir}"/>  
   
1063    </target>    </target>
1064    
1065    
   
1066    <target name="jsr166edist-clean"    <target name="jsr166edist-clean"
1067            description="Removes all build and distribution products">            description="Removes all build and distribution products">
1068    
1069    </target>    </target>
1070    
   <target name="jsr166edist-docs"  
           description="Builds javadocs without custom tags to dist folder">  
   
     <delete dir="${dist.jsr166ejavadocs.dir}"/>  
     <mkdir dir="${dist.jsr166ejavadocs.dir}"/>  
   
     <javadoc destdir="${dist.jsr166ejavadocs.dir}"  
              packagenames="jsr166e,jsr166e.extra"  
              link="${jdkapidocs.url}"  
              source="1.7"  
              sourcepath="${topsrc.dir}:${jdksrc.dir}"  
              additionalparam="-XDignore.symbol.file=true" />  
   
   </target>  
   
1071    <target name="jsr166edist-jar"    <target name="jsr166edist-jar"
1072            depends="jsr166eclean, jsr166ejar">            depends="jsr166eclean, jsr166ejar">
1073        <copy file="${jsr166e.jar}" todir="${dist.dir}"/>
1074      </target>
1075    
1076      <copy file="${jsr166eproduct.jar}" todir="${dist.dir}"/>    <target name="jsr166edist-docs"
1077              depends="jsr166eclean, jsr166edocs">
1078        <mirror-dir src="${jsr166edocs.dir}" dst="${dist.jsr166edocs.dir}"/>
1079    </target>    </target>
1080    
1081  </project>  </project>

Legend:
Removed from v.1.97  
changed lines
  Added in v.1.129

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