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

Diff of /jsr166/build.xml

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

revision 1.74 by dl, Thu Sep 13 11:19:25 2007 UTC revision 1.105 by jsr166, Sat Jan 19 21:54:53 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    
# Line 21  Line 35 
35    
36    
37    <!-- Compilation options -->    <!-- Compilation options -->
38    <property name="build.sourcelevel"    value="1.5"/>    <property name="build.sourcelevel"    value="1.6"/>
39    <property name="build.debug"          value="true"/>    <property name="build.debug"          value="true"/>
40    <property name="build.debuglevel"     value="source,lines,vars"/>    <property name="build.debuglevel"     value="source,lines,vars"/>
41    <property name="build.deprecation"    value="false"/>    <property name="build.deprecation"    value="false"/>
42    
43    <!-- Build locations -->    <!-- Build locations -->
44    <property name="build.dir"            location="build"/>    <property name="build.dir"                   location="build"/>
45    <property name="build.classes.dir"    location="${build.dir}/classes"/>    <property name="build.classes.dir"           location="${build.dir}/classes"/>
46    <property name="build.testcases.dir"  location="${build.dir}/testcases"/>    <property name="build.testcases.dir"         location="${build.dir}/testcases"/>
47    <property name="build.j1.dir"         location="${build.dir}/j1"/>    <property name="build.loops.dir"             location="${build.dir}/loops"/>
48    <property name="build.loops.dir"      location="${build.dir}/loops"/>    <property name="build.lib.dir"               location="${build.dir}/lib"/>
49    <property name="build.lib.dir"        location="${build.dir}/lib"/>    <property name="build.javadocs.dir"          location="${build.dir}/javadocs"/>
50    <property name="build.ant.dir"        location="${build.dir}/ant"/>    <property name="build.reports.dir"           location="${build.dir}/reports"/>
51    <property name="build.javadocs.dir"   location="${build.dir}/javadocs"/>  
52    <property name="build.reports.dir"    location="${build.dir}/reports"/>    <property name="build.4jdk7.dir"              location="${build.dir}/4jdk7"/>
53    <property name="build.checkstyle.dir" location="${build.dir}/checkstyle"/>    <property name="build.4jdk7.lib.dir"          location="${build.4jdk7.dir}"/>
54    <property name="build.doccheck.dir"   location="${build.dir}/doccheck"/>    <property name="build.4jdk7.classes.dir"      location="${build.4jdk7.dir}/classes"/>
55    <property name="build.filter.src.dir" location="${build.dir}/filtersrc"/>    <property name="build.4jdk7.tck.classes.dir"  location="${build.4jdk7.dir}/tck/classes"/>
56    <property name="build.dc-filter.dir"  location="${build.dir}/filterdocchk"/>    <property name="build.4jdk7.docs.dir"         location="${build.4jdk7.dir}/docs"/>
57    <property name="build.jsr166x.dir"    location="${build.dir}/jsr166x"/>  
58      <property name="build.jsr166x.dir"           location="${build.dir}/jsr166x"/>
59    <property name="build.jsr166xlib.dir"        location="${build.dir}/jsr166xlib"/>    <property name="build.jsr166xlib.dir"        location="${build.dir}/jsr166xlib"/>
60    <property name="build.jsr166xjavadocs.dir"   location="${build.dir}/jsr166xjavadocs"/>    <property name="build.jsr166xjavadocs.dir"   location="${build.dir}/jsr166xjavadocs"/>
61    
62    <property name="build.jsr166y.dir"    location="${build.dir}/jsr166y"/>    <property name="build.jsr166y.dir"           location="${build.dir}/jsr166y"/>
63    <property name="build.jsr166ylib.dir"        location="${build.dir}/jsr166ylib"/>    <property name="build.jsr166ylib.dir"        location="${build.dir}/jsr166ylib"/>
64    <property name="build.jsr166yjavadocs.dir"   location="${build.dir}/jsr166yjavadocs"/>    <property name="build.jsr166yjavadocs.dir"   location="${build.dir}/jsr166yjavadocs"/>
65    
66      <property name="build.jsr166e.dir"           location="${build.dir}/jsr166e"/>
67      <property name="build.jsr166elib.dir"        location="${build.dir}/jsr166elib"/>
68      <property name="build.jsr166ejavadocs.dir"   location="${build.dir}/jsr166ejavadocs"/>
69    
70      <property name="build.extra166y.dir"         location="${build.dir}/extra166y"/>
71      <property name="build.extra166ylib.dir"      location="${build.dir}/extra166ylib"/>
72      <property name="build.extra166yjavadocs.dir" location="${build.dir}/extra166yjavadocs"/>
73    
74      <!-- JDK binary locations -->
75      <property name="jdks.home"  location="${user.home}/jdk"/>
76    
77      <macrodef name="defjdklocations">
78        <attribute name="v"/>
79        <sequential>
80        <property name="jdk@{v}.home"   location="${jdks.home}/jdk@{v}"/>
81        <property name="java@{v}"       location="${jdk@{v}.home}/bin/java"/>
82        <property name="javac@{v}"      location="${jdk@{v}.home}/bin/javac"/>
83        <property name="javadoc@{v}"    location="${jdk@{v}.home}/bin/javadoc"/>
84        <property name="bootdir@{v}"    location="${jdk@{v}.home}/jre/lib"/>
85        <property name="jdk@{v}src.dir" location="${jdks.home}/src/jdk@{v}/jdk/src/share/classes"/>
86        <property name="bootclasspath@{v}"
87         value="${bootdir@{v}}/resources.jar:${bootdir@{v}}/rt.jar:${bootdir@{v}}/jsse.jar:${bootdir@{v}}/jce.jar:${bootdir@{v}}/:${bootdir@{v}}/charsets.jar"/>
88        </sequential>
89      </macrodef>
90    
91      <defjdklocations v="6"/>
92      <defjdklocations v="7"/>
93      <defjdklocations v="8"/>
94    
95      <macrodef name="run-tck-tests">
96        <attribute name="jvm"/>
97        <attribute name="tck.classes"/>
98        <attribute name="product.jar" default="${product.jar}"/>
99        <attribute name="jvmflags" default=""/>
100        <sequential>
101        <java classname="JSR166TestCase"
102              jvm="@{jvm}" fork="true">
103            <jvmarg value="-Xbootclasspath/p:@{product.jar}"/>
104            <jvmarg line="@{jvmflags}"/>
105            <classpath>
106              <pathelement location="${junit.jar}"/>
107              <pathelement location="@{tck.classes}"/>
108            </classpath>
109        </java>
110        </sequential>
111      </macrodef>
112    
113    <!-- Source locations -->    <!-- Source locations -->
114    <property name="src.dir"              location="${basedir}/src/main"/>    <property name="src.dir"              location="${basedir}/src/main"/>
115    <property name="test.src.dir"         location="${basedir}/src/test"/>    <property name="test.src.dir"         location="${basedir}/src/test"/>
   <property name="j1.src.dir"           location="${basedir}/src/javaone"/>  
116    <property name="loops.src.dir"        location="${basedir}/src/loops"/>    <property name="loops.src.dir"        location="${basedir}/src/loops"/>
117    <property name="tck.src.dir"          location="${test.src.dir}/tck"/>    <property name="tck.src.dir"          location="${test.src.dir}/tck"/>
118    <property name="jtreg.src.dir"        location="${test.src.dir}/jtreg"/>    <property name="jtreg.src.dir"        location="${test.src.dir}/jtreg"/>
   <property name="ant.src.dir"          location="${basedir}/etc/ant"/>  
   <property name="stylesheet.dir"       location="${basedir}/etc/xsl"/>  
119    <property name="lib.dir"              location="${basedir}/lib"/>    <property name="lib.dir"              location="${basedir}/lib"/>
120    <property name="dist.dir"             location="${basedir}/dist"/>    <property name="dist.dir"             location="${basedir}/dist"/>
121    <property name="topsrc.dir"           location="${basedir}/src"/>    <property name="topsrc.dir"           location="${basedir}/src"/>
122    <property name="jsr166xsrc.dir"       location="${basedir}/src/jsr166x"/>    <property name="4jdk7src.dir"         location="${topsrc.dir}/jdk7"/>
123    <property name="jsr166ysrc.dir"       location="${basedir}/src/jsr166y"/>    <property name="jsr166xsrc.dir"       location="${topsrc.dir}/jsr166x"/>
124      <property name="jsr166ysrc.dir"       location="${topsrc.dir}/jsr166y"/>
125      <property name="jsr166esrc.dir"       location="${topsrc.dir}/jsr166e"/>
126      <property name="extra166ysrc.dir"     location="${topsrc.dir}/extra166y"/>
127      <property name="jdksrc.dir"           location="/home/dl/1.6.0/j2se/martin/j2se/src/share/classes"/>
128    
129    <!-- Distribution locations -->    <!-- Distribution locations -->
130    <property name="dist.javadocs.dir"    location="${dist.dir}/docs"/>    <property name="dist.javadocs.dir"           location="${dist.dir}/docs"/>
131      <property name="dist.4jdk7.docs.dir"         location="${dist.dir}/jsr166-4jdk7docs"/>
132    <property name="dist.jsr166xjavadocs.dir"    location="${dist.dir}/jsr166xdocs"/>    <property name="dist.jsr166xjavadocs.dir"    location="${dist.dir}/jsr166xdocs"/>
133    <property name="dist.jsr166yjavadocs.dir"    location="${dist.dir}/jsr166ydocs"/>    <property name="dist.jsr166yjavadocs.dir"    location="${dist.dir}/jsr166ydocs"/>
134      <property name="dist.jsr166ejavadocs.dir"    location="${dist.dir}/jsr166edocs"/>
135      <property name="dist.extra166yjavadocs.dir"  location="${dist.dir}/extra166ydocs"/>
136    
137    <!-- Jar locations -->    <!-- Jar locations -->
138    <property name="product.jar"          location="${build.lib.dir}/jsr166.jar"/>    <property name="product.jar"          location="${build.lib.dir}/jsr166.jar"/>
139      <property name="4jdk7product.jar"     location="${build.4jdk7.lib.dir}/jsr166-4jdk7.jar"/>
140    <property name="jsr166xproduct.jar"   location="${build.jsr166xlib.dir}/jsr166x.jar"/>    <property name="jsr166xproduct.jar"   location="${build.jsr166xlib.dir}/jsr166x.jar"/>
141    <property name="jsr166yproduct.jar"   location="${build.jsr166ylib.dir}/jsr166y.jar"/>    <property name="jsr166yproduct.jar"   location="${build.jsr166ylib.dir}/jsr166y.jar"/>
142      <property name="jsr166eproduct.jar"   location="${build.jsr166elib.dir}/jsr166e.jar"/>
143      <property name="extra166yproduct.jar" location="${build.extra166ylib.dir}/extra166y.jar"/>
144    <property name="junit.jar"            location="${lib.dir}/junit.jar"/>    <property name="junit.jar"            location="${lib.dir}/junit.jar"/>
   <property name="concurrent.jar"       location="${lib.dir}/concurrent.jar"/>  
145    
146    <!-- Bootclasspath argument -->    <!-- Bootclasspath argument -->
147    <property name="bootclasspath.args"   value="-Xbootclasspath/p:${product.jar}"/>    <property name="bootclasspath.args"   value="-Xbootclasspath/p:${product.jar}"/>
148    
149      <!-- Canonical location of jdk API docs, to use with javadoc link attribute -->
150      <property name="jdkapi5docs.url"      value="http://docs.oracle.com/javase/1.5.0/docs/api/"/>
151      <property name="jdkapi6docs.url"      value="http://docs.oracle.com/javase/6/docs/api/"/>
152      <property name="jdkapi7docs.url"      value="http://docs.oracle.com/javase/7/docs/api/"/>
153    
154      <property name="jdkapi8docs.url"      value="http://download.java.net/jdk8/docs/api/"/>
155      <!-- The below does not yet exist as of 2012-11 -->
156      <!-- <property name="jdkapi8docs.url" value="http://docs.oracle.com/javase/8/docs/api/"/> -->
157      <property name="jdkapidocs.url"       value="${jdkapi7docs.url}"/>
158    
159    <!-- Test classpath -->    <!-- Test classpath -->
160    <path id="test.classpath">    <path id="test.classpath">
161      <pathelement location="${build.testcases.dir}"/>      <pathelement location="${build.testcases.dir}"/>
# Line 89  Line 167 
167      <pathelement location="${build.loops.dir}"/>      <pathelement location="${build.loops.dir}"/>
168    </path>    </path>
169    
170    <!-- J1 classpath -->    <!-- Support @jls tag, used in jdk8+ javadoc -->
171    <path id="j1.classpath">    <!-- TODO: How do we get &trade to work? -->
172      <pathelement location="${build.classes.dir}"/>    <!-- TODO: Why isn't @jls a "standard" tag? -->
173      <pathelement location="${build.j1.dir}"/>    <!--   property name="javadoc.jls.cite" value="The Java&trade; Language Specification" -->
174      <pathelement location="${junit.jar}"/>    <property name="javadoc.jls.cite" value="The Java Language Specification"/>
175      <property name="javadoc.jls.option" value="jls:a:See &lt;cite&gt;${javadoc.jls.cite}&lt;/cite&gt;:"/>
     <!-- Include dl.u.c for BoundedBuffer comparison -->  
     <pathelement location="${concurrent.jar}"/>  
   </path>  
   
176    
177    <!-- Main targets -->    <!-- Main targets -->
178    
179      <target name="dists"
180              depends="dist, jsr166xdist, jsr166ydist,jsr166edist,  extra166ydist"
181              description="Builds all public jars and docs"/>
182    
183    <target name="compile"    <target name="compile"
184            depends="init, configure-compiler"            depends="configure-compiler"
185            description="Compiles main sources to build folder">            description="Compiles src/main sources to build dir">
186    
187      <mkdir dir="${build.classes.dir}"/>      <mkdir dir="${build.classes.dir}"/>
188    
189      <javac srcdir="${src.dir}"      <javac srcdir="${src.dir}"
190            destdir="${build.classes.dir}"             destdir="${build.classes.dir}"
191              debug="${build.debug}"             debug="${build.debug}"
192         debuglevel="${build.debuglevel}"             debuglevel="${build.debuglevel}"
193        deprecation="${build.deprecation}"             deprecation="${build.deprecation}"
194             source="${build.sourcelevel}"             classpath=""
195               fork="true">             includeAntRuntime="false"
196               includeJavaRuntime="false"
197               executable="${javac8}"
198               fork="true">
199    
200        <include name="**/*.java"/>        <include name="**/*.java"/>
201        <compilerarg value="-XDignore.symbol.file"/>        <compilerarg line="${build.args}"/>
202          <compilerarg value="-XDignore.symbol.file=true"/>
203          <compilerarg value="-Xlint:all"/>
204    
205  <!--  <!--
206        <exclude name="java/lang/**"/>        <exclude name="java/lang/**"/>
# Line 147  Line 229 
229    
230    
231    <target name="test"    <target name="test"
232            depends="init, configure-tests, report-tests"            depends="configure-tests, report-tests"
233            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)" />
234    
235    
236    
237    <target name="docs"    <target name="docs"
238            description="Builds javadocs with custom tags to build folder">            description="Builds javadocs for src/main to dist dir">
   
     <delete dir="${build.javadocs.dir}"/>  
     <mkdir dir="${build.javadocs.dir}"/>  
   
     <javadoc destdir="${build.javadocs.dir}"  
                 link="http://java.sun.com/javase/6/docs/api/"  
             overview="${src.dir}/intro.html"  
             sourcepath="${src.dir}:/home/dl/1.6.0/j2se/martin/j2se/src/share/classes"  
     >            
   
       <packageset dir="${src.dir}"/>  
   
     </javadoc>  
   
   </target>  
239    
240        <delete dir="${dist.javadocs.dir}"/>
241        <mkdir dir="${dist.javadocs.dir}"/>
242    
243        <!-- the packagenames="none" hack below prevents scanning the -->
244        <!-- sourcepath for packages -->
245    
246    <target name="doccheck"      <javadoc destdir="${dist.javadocs.dir}"
247            depends="filter-doccheck"               packagenames="none"
248            description="Reports on javadoc style errors">               link="${jdkapi8docs.url}"
249                 overview="${src.dir}/intro.html"
250      <delete dir="${build.doccheck.dir}"/>               sourcepath="${src.dir}:${jdk8src.dir}"
251      <mkdir dir="${build.doccheck.dir}"/>               classpath=""
252                 executable="${javadoc8}">
253      <javadoc doclet="com.sun.tools.doclets.doccheck.DocCheck"        <arg value="-XDignore.symbol.file=true"/>
254           docletpath="${lib.dir}/doccheck.jar"        <arg value="-tag"/>
255              destdir="${build.doccheck.dir}">        <arg value="${javadoc.jls.option}"/>
256        <packageset dir="${build.dc-filter.dir}"/>        <fileset dir="${src.dir}" defaultexcludes="yes">
257            <include name="**/*.java"/>
258          </fileset>
259      </javadoc>      </javadoc>
260    
     <echo>DocCheck output is in ${build.doccheck.dir}</echo>  
   
   </target>  
   
   
   
   <target name="checkstyle"  
           depends="filter-src"  
           description="Reports on style errors in Java source (verbose, mostly chaff)">  
   
     <taskdef resource="checkstyletask.properties"  
             classpath="${lib.dir}/checkstyle-all-3.1.jar"/>  
   
     <mkdir dir="${build.checkstyle.dir}"/>  
   
     <checkstyle config="etc/checkstyle/sun_checks.xml"  
        failOnViolation="false">  
       <formatter type="xml" toFile="${build.checkstyle.dir}/checkstyle-report.xml"/>  
       <fileset dir="${build.filter.src.dir}" includes="**/*.java"/>  
     </checkstyle>  
   
     <style in="${build.checkstyle.dir}/checkstyle-report.xml"  
           out="${build.checkstyle.dir}/checkstyle-report.html"  
         style="${stylesheet.dir}/checkstyle-frames.xsl"/>  
   
261    </target>    </target>
262    
263    
264    
265    <target name="dist"    <target name="dist"
266            depends="init, dist-clean, dist-jar, dist-docs"            depends="dist-clean, dist-jar, docs"
267            description="Puts all distributable products in single hierarchy"/>            description="Puts all distributable products in single hierarchy"/>
268    
269    
   
270    <target name="release"    <target name="release"
271            depends="dist"            depends="dist"
272            description="Puts entire CVS tree, plus distribution productions, in a jar">            description="Puts entire CVS tree, plus distribution productions, in a jar">
# Line 260  Line 307 
307    
308    
309    
   <target name="dist-docs"  
           description="Builds javadocs without custom tags to dist folder">  
   
     <delete dir="${dist.javadocs.dir}"/>  
     <mkdir dir="${dist.javadocs.dir}"/>  
   
     <javadoc destdir="${dist.javadocs.dir}"  
             link="http://java.sun.com/javase/6/docs/api/"  
             overview="${src.dir}/intro.html"  
   
             sourcepath="${src.dir}:/home/dl/1.6.0/j2se/martin/j2se/src/share/classes"  
      >  
 <!--  
       <packageset dir="${src.dir}" defaultexcludes="yes">  
       <include name="java/util/concurrent"/>  
       <include name="java/util/concurrent/atomic"/>  
       <include name="java/util/concurrent/locks"/>  
       </packageset>  
 -->  
       <fileset dir="${topsrc.dir}" defaultexcludes="yes">  
       <include name="main/java/util/concurrent/*.java"/>  
       <include name="main/java/util/concurrent/atomic/*.java"/>  
       <include name="main/java/util/concurrent/locks/*.java"/>  
       <include name="main/java/util/*.java"/>  
 <!--  
       <include name="main/java/util/concurrent/*.html"/>  
       <include name="main/java/util/concurrent/atomic/*.html"/>  
       <include name="main/java/util/concurrent/locks/*.html"/>  
       <include name="main/java/util/*.html"/>  
 -->  
 <!--      <include name="jsr166x/*.java"/> -->  
       </fileset>  
     </javadoc>  
   
   </target>  
   
   
   
310    <!-- Internal targets -->    <!-- Internal targets -->
311    
312    
   <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>  
   
   
313    <target name="dist-jar"    <target name="dist-jar"
314            depends="clean, jar">            depends="clean, jar">
315    
# Line 319  Line 318 
318    </target>    </target>
319    
320    
   <target name="compile-ant-filter"  
           depends="init">  
   
     <mkdir dir="${build.ant.dir}"/>  
   
     <javac srcdir="${ant.src.dir}"  
           destdir="${build.ant.dir}"  
            source="1.4"/>  
   
   </target>  
   
   
   <target name="filter-src"  
           depends="compile-ant-filter">  
   
     <mkdir dir="${build.filter.src.dir}"/>  
   
     <copy todir="${build.filter.src.dir}">  
       <fileset dir="${src.dir}">  
         <include name="**/*.html"/>  
       </fileset>  
     </copy>  
   
     <copy todir="${build.filter.src.dir}">  
       <fileset dir="${src.dir}">  
         <exclude name="**/*.html"/>  
         <!-- Files excluded from dist-docs -->  
         <exclude name="java/util/Random.*"/>  
         <exclude name="sun/misc/Unsafe.*"/>  
       </fileset>  
       <!--  
       <filterchain>  
       -->  
   
         <!--  
          # This filter gets rid of angle-bracketed type parameters  
          # so that javadoc can run on the result. The following  
          # heuristic seems to work:  
          #  
          # For all lines not starting with space(s)-asterisk-space(s),  
          #   replace <something> with a space, where there may be more  
          #   than one right angle bracket at the end, and "something"  
          #   must not contain parens or pipes. (This may need some  
          #   tweaking.)  
          -->  
   
         <!--  
         <filterreader classname="jsr166.ant.filters.ReplaceFilter"  
                       classpath="${build.ant.dir}">  
           <param name="notmatching" value="^\s+\*\s.*$"/>  
           <param name="pattern"     value="&lt;[^|>()]+?>+"/>  
           <param name="replacement" value=" "/>  
         </filterreader>  
         -->  
   
       <!--  
       </filterchain>  
       -->  
     </copy>  
   
   </target>  
   
   
   <target name="filter-doccheck"  
           depends="filter-src">  
   
     <mkdir dir="${build.dc-filter.dir}"/>  
   
     <copy todir="${build.dc-filter.dir}">  
       <fileset dir="${build.filter.src.dir}">  
         <include name="**/*.html"/>  
       </fileset>  
     </copy>  
   
     <property name="generic.declarations"  
              value="/** Fake type parameter. */ public interface E {} /** Fake type parameter. */ public interface T {} /** Fake type parameter. */ public interface K {} /** Fake type parameter. */ public interface V {}"  
     />  
   
     <copy todir="${build.dc-filter.dir}">  
       <fileset dir="${build.filter.src.dir}">  
         <exclude name="**/*.html"/>  
       </fileset>  
       <filterchain>  
         <!--  
          # These two filters try to make the source look like  
          # something that doccheck can process. The first removes  
          # -source 1.4 assertions and the second adds in a bunch  
          # of single letter public nested marker interfaces so that  
          # the generic type parameters are recognized.  
          -->  
   
         <filterreader classname="jsr166.ant.filters.ReplaceFilter"  
                       classpath="${build.ant.dir}">  
           <param name="matching"    value="^\s*assert[\s ].*$"/>  
           <param name="pattern"     value="assert"/>  
           <param name="replacement" value="//assert"/>  
         </filterreader>  
   
         <filterreader classname="jsr166.ant.filters.ReplaceFilter"  
                       classpath="${build.ant.dir}">  
           <param name="matching"    value="^([^*]*(class|interface|implements) .*|)\{.*$"/>  
           <param name="pattern"     value="$"/>  
           <param name="replacement" value=" ${generic.declarations}"/>  
         </filterreader>  
   
       </filterchain>  
     </copy>  
   
   </target>  
   
   
321    <target name="compile-tests"    <target name="compile-tests"
322            depends="jar">            depends="jar">
323    
# Line 445  Line 333 
333    
334        <compilerarg value="${bootclasspath.args}"/>        <compilerarg value="${bootclasspath.args}"/>
335        <compilerarg line="${build.args}"/>        <compilerarg line="${build.args}"/>
336          <compilerarg value="-XDignore.symbol.file=true"/>
337    
338        <classpath refid="test.classpath"/>        <classpath refid="test.classpath"/>
339    
# Line 462  Line 351 
351    
352        <compilerarg value="${bootclasspath.args}"/>        <compilerarg value="${bootclasspath.args}"/>
353        <compilerarg line="${build.args}"/>        <compilerarg line="${build.args}"/>
354          <compilerarg value="-XDignore.symbol.file=true"/>
355    
356        <classpath refid="test.classpath"/>        <classpath refid="test.classpath"/>
357    
# Line 478  Line 368 
368    
369        <compilerarg value="${bootclasspath.args}"/>        <compilerarg value="${bootclasspath.args}"/>
370        <compilerarg line="${build.args}"/>        <compilerarg line="${build.args}"/>
371          <compilerarg value="-XDignore.symbol.file=true"/>
372    
373        <classpath refid="test.classpath"/>        <classpath refid="test.classpath"/>
374    
# Line 550  Line 441 
441        <fileset dir="${build.reports.dir}">        <fileset dir="${build.reports.dir}">
442          <include name="TEST-*.xml"/>          <include name="TEST-*.xml"/>
443        </fileset>        </fileset>
444        <report styledir="${stylesheet.dir}"        <report format="${junit.report.format}" todir="${build.reports.dir}"
                 format="${junit.report.format}"  
                  todir="${build.reports.dir}"  
445        />        />
446      </junitreport>      </junitreport>
447    
# Line 602  Line 491 
491    </target>    </target>
492    
493    
   
   <!-- Anthill targets -->  
   
   <target name="anthill-build">  
   
     <!-- Override this in user.properties -->  
     <property name="tiger.home" location="e:/j2sdk1.5.0"/>  
   
     <exec resultproperty="result.property" dir="${basedir}" executable="${tiger.home}/bin/java">  
       <arg value="-Xmx256000000"/>  
       <!-- classpath of new JVM -->  
       <arg value="-classpath"/> <arg path="${java.class.path}"/>  
       <!-- location of Ant home directory -->  
       <arg value="-Dant.home=${ant.home}"/>  
       <!-- the Ant main class -->  
       <arg value="org.apache.tools.ant.Main"/>  
       <!-- The build file -->  
       <arg value="-buildfile"/>  <arg value="build.xml"/>  
       <!-- the target to build on the new Ant instance -->  
       <arg value="-DJAVA_HOME=${tiger.home}"/>  
       <arg value="do-anthill-build"/>  
     </exec>  
   </target>  
   
   <target name="do-anthill-build"  
           depends="jar, test, docs, dist-docs"/>  
   
   <target name="anthill-publish">  
   
     <copy todir="${deployDir}/docs/private">  
       <fileset dir="${build.javadocs.dir}"/>  
     </copy>  
   
     <copy todir="${deployDir}/docs/public">  
       <fileset dir="${dist.javadocs.dir}"/>  
     </copy>  
   
     <copy tofile="${deployDir}/index.html"  
           file="${basedir}/etc/anthill-index.html"/>  
   
     <copy todir="${deployDir}/notes">  
       <fileset dir="${basedir}/etc/notes"/>  
     </copy>  
   
   </target>  
   
   
   
494    <!-- Various demos and test programs -->    <!-- Various demos and test programs -->
495    
496    
497    <target name="sample" depends="init, configure-compiler"    <target name="loops" depends="configure-compiler"
           description="Standalone demo program">  
   
     <mkdir dir="${build.testcases.dir}"/>  
   
     <javac srcdir="${test.src.dir}"  
           destdir="${build.testcases.dir}"  
             debug="${build.debug}"  
        debuglevel="${build.debuglevel}"  
       deprecation="${build.deprecation}"  
            source="${build.sourcelevel}"  
              fork="true">  
   
       <include name="jsr166/test/Sample.java"/>  
   
     </javac>  
   
     <copy todir="${build.testcases.dir}">  
       <fileset dir="${test.src.dir}">  
         <include name="**/*.properties"/>  
       </fileset>  
     </copy>  
   
   
     <java classname="jsr166.test.Sample" fork="true">  
       <classpath refid="test.classpath"/>  
       <!-- <jvmarg value="-ea"/> -->  
       <!-- <jvmarg value="-server"/> -->  
       <!-- <arg value="1000"/> -->  
     </java>  
   </target>  
   
   
   <target name="loops" depends="init, configure-compiler"  
498            description="Benchmark from Doug Lea's AQS paper">            description="Benchmark from Doug Lea's AQS paper">
499    
500      <mkdir dir="${build.loops.dir}"/>      <mkdir dir="${build.loops.dir}"/>
# Line 701  Line 509 
509    
510        <compilerarg line="${build.args}"/>        <compilerarg line="${build.args}"/>
511        <classpath refid="loops.classpath"/>        <classpath refid="loops.classpath"/>
512          <compilerarg value="-XDignore.symbol.file=true"/>
513    
514      </javac>      </javac>
515    
# Line 711  Line 520 
520    </target>    </target>
521    
522    
523    <target name="compile-j1" depends="init, configure-compiler, compile">    <!-- jsr166 4jdk7 -->
524    
     <mkdir dir="${build.j1.dir}"/>  
525    
526      <javac srcdir="${j1.src.dir}"    <target name="4jdk7compile"
527            destdir="${build.j1.dir}"            depends="configure-compiler"
528              debug="${build.debug}"            description="Compiles src/jdk7 sources, targeting jdk7">
529         debuglevel="${build.debuglevel}"  
530        deprecation="${build.deprecation}"      <mkdir dir="${build.4jdk7.classes.dir}"/>
531             source="${build.sourcelevel}" >  
532        <javac srcdir="${4jdk7src.dir}"
533               destdir="${build.4jdk7.classes.dir}"
534               debug="${build.debug}"
535               debuglevel="${build.debuglevel}"
536               deprecation="${build.deprecation}"
537               source="1.6"
538               classpath=""
539               bootclasspath="${bootclasspath6}"
540               includeAntRuntime="false"
541               includeJavaRuntime="false"
542               executable="${javac7}"
543               fork="true">
544    
545        <include name="**/*.java"/>        <include name="**/*.java"/>
       <exclude name="**/dijkstra/**"/>  
   
546        <compilerarg line="${build.args}"/>        <compilerarg line="${build.args}"/>
547        <classpath refid="j1.classpath"/>        <compilerarg value="-XDignore.symbol.file=true"/>
548          <compilerarg value="-Xlint:all"/>
549    
550      </javac>      </javac>
551    
552    </target>      <mkdir dir="${build.4jdk7.lib.dir}"/>
553    
554        <jar destfile="${4jdk7product.jar}" index="true">
555          <fileset dir="${build.4jdk7.classes.dir}"/>
556        </jar>
557    
558    <target name="sw" depends="compile-j1"      <mkdir dir="${build.4jdk7.tck.classes.dir}"/>
           description="Runs the SwingWorker demo">  
559    
560      <!--      <javac srcdir="${tck.src.dir}"
561      <java classname="jsr166.swing.SwingWorkerDemo" fork="true">             destdir="${build.4jdk7.tck.classes.dir}"
562        <classpath refid="j1.classpath"/>             debug="${build.debug}"
563      </java>             debuglevel="${build.debuglevel}"
564      -->             deprecation="${build.deprecation}"
565               source="1.6"
566               classpath="${junit.jar}"
567               bootclasspath="${4jdk7product.jar}:${bootclasspath6}"
568               includeAntRuntime="false"
569               includeJavaRuntime="false"
570               executable="${javac7}"
571               fork="true">
572    
573      <copy todir="${build.j1.dir}" file="${j1.src.dir}/jsr166/swing/SwingWorker.html"/>        <include name="**/*.java"/>
574          <compilerarg line="${build.args}"/>
575          <compilerarg value="-XDignore.symbol.file=true"/>
576          <compilerarg value="-Xlint:all,-unchecked,-rawtypes,-serial,-deprecation"/>
577    
578      <exec dir="${build.j1.dir}" executable="appletviewer.exe">      </javac>
       <arg value="${build.j1.dir}/SwingWorker.html"/>  
     </exec>  
579    
580    </target>    </target>
581    
   <target name="j1" depends="compile-j1"  
           description="Runs a standalone JavaOne program">  
   
     <java classname="${j1.test}" fork="true">  
       <classpath refid="j1.classpath"/>  
       <jvmarg value="-client"/>  
   
       <!-- TestPseudoRandom args -->  
       <arg value="2"/>  
       <arg value="25"/>  
       <arg value="100000"/>  
   
       <!-- WebCrawler args -->  
       <!--  
       <arg value="jsr166.webcrawler.WebCrawler3"/>  
       <arg value="http://www.priorartisans.com"/>  
       <arg value="25"/>  
       -->  
   
     </java>  
582    
583      <target name="4jdk7-test-tck"
584              depends="4jdk7compile"
585              description="Runs tck tests for jsr166-4jdk7 directly">
586        <run-tck-tests
587          jvm="${java7}"
588          tck.classes="${build.4jdk7.tck.classes.dir}"
589          product.jar="${4jdk7product.jar}"/>
590    </target>    </target>
591    
592    
593    <target name="test-j1" depends="compile-j1"    <target name="4jdk7-test-tck-junit"
594            description="Runs testcases from the JavaOne source directories">            depends="4jdk7compile"
595              description="Runs tck tests for jsr166-4jdk7 via junit task (experimental)">
596    
597      <junit printsummary="true"      <junit printsummary="true"
598               showoutput="true"             showoutput="true"
599            errorProperty="junit.failed"             errorProperty="junit.failed"
600          failureProperty="junit.failed"             failureProperty="junit.failed"
601                      dir="${build.j1.dir}"             includeantruntime="true"
602                     fork="true">             jvm="${java7}"
603               fork="true">
       <!-- <jvmarg value="-server"/> -->  
       <classpath refid="j1.classpath"/>  
       <formatter type="xml"/>  
   
       <batchtest todir="${build.j1.dir}">  
         <fileset dir="${j1.src.dir}">  
           <include name="**/*Test.java"/>  
         </fileset>  
       </batchtest>  
   
     </junit>  
604    
605      <available property="junit.report.format"        <jvmarg value="-Xbootclasspath/p:${4jdk7product.jar}"/>
606                    value="frames"        <jvmarg value="-server"/>
               classname="org.apache.xalan.lib.Redirect"/>  
     <property name="junit.report.format" value="noframes"/>  
   
     <junitreport todir="${build.j1.dir}">  
       <fileset dir="${build.j1.dir}">  
         <include name="TEST-*.xml"/>  
       </fileset>  
       <report styledir="${stylesheet.dir}"  
                 format="${junit.report.format}"  
                  todir="${build.j1.dir}"  
       />  
     </junitreport>  
   
     <fail message="Test Cases Failed" if="junit.failed"/>  
   
   </target>  
   
   
   
   <!-- C++ and JNI definitions and demos -->  
   
   <target name="configure-cpp">  
   
     <!-- Define tasks and types -->  
   
     <path id="cpptasks.path">  
       <pathelement location="${lib.dir}/cpptasks.jar"/>  
     </path>  
     <taskdef resource="cpptasks.tasks" classpathref="cpptasks.path"/>  
     <typedef resource="cpptasks.types" classpathref="cpptasks.path"/>  
   
     <!-- Set platform property for JNI includes -->  
   
     <condition property="platform" value="linux">  
       <os name="Linux"/>  
     </condition>  
     <condition property="platform" value="win32">  
       <os family="windows"/>  
     </condition>  
     <condition property="platform" value="solaris">  
       <os name="SunOS"/>  
     </condition>  
   
   </target>  
   
   
   <target name="cppdemo" depends="configure-cpp">  
607    
608      <mkdir dir="${build.dir}"/>        <classpath>
609            <pathelement location="${junit.jar}"/>
610            <pathelement location="${build.4jdk7.tck.classes.dir}"/>
611          </classpath>
612    
613      <cc multithreaded="true"        <formatter type="brief"/>
                  name="g++"  
                objdir="${build.dir}"  
               outfile="${build.dir}/CppDemo">  
       <fileset dir="${test.src.dir}" includes="CppDemo.cpp"/>  
       <libset libs="stdc++"/>  
     </cc>  
614    
615      <exec executable="${build.dir}/CppDemo">        <test name="JSR166TestCase" haltonfailure="no">
616        <arg line="count in word frequency of word in command line count"/>        </test>
     </exec>  
617    
618        </junit>
619    </target>    </target>
620    
621    
622    <target name="jnidemo" depends="init, configure-compiler, configure-cpp">    <target name="4jdk7docs"
623              description="Builds javadocs for src/jdk7 to dist dir">
     <mkdir dir="${build.testcases.dir}"/>  
624    
625      <javac srcdir="${test.src.dir}"      <delete dir="${dist.4jdk7.docs.dir}"/>
626            destdir="${build.testcases.dir}"      <mkdir dir="${dist.4jdk7.docs.dir}"/>
             debug="${build.debug}"  
        debuglevel="${build.debuglevel}"  
       deprecation="${build.deprecation}"  
            source="${build.sourcelevel}"  
              fork="true">  
       <compilerarg value="${bootclasspath.args}"/>  
       <compilerarg line="${build.args}"/>  
       <classpath refid="test.classpath"/>  
       <include name="JniDemo.java"/>  
     </javac>  
627    
628      <javah destdir="${build.testcases.dir}"      <javadoc destdir="${dist.4jdk7.docs.dir}"
629        classpathref="test.classpath">               packagenames="none"
630        <class name="JniDemo"/>               link="${jdkapi7docs.url}"
631      </javah>               overview="${4jdk7src.dir}/intro.html"
632                 sourcepath="${4jdk7src.dir}:${jdk7src.dir}"
633      <cc multithreaded="true"               classpath=""
634                   name="g++"               executable="${javadoc7}">
635                 objdir="${build.dir}"        <arg value="-XDignore.symbol.file=true"/>
636                outfile="${build.dir}/JniDemo"        <fileset dir="${4jdk7src.dir}" defaultexcludes="yes">
637                outtype="shared">          <include name="**/*.java"/>
638          </fileset>
639        <compiler>      </javadoc>
         <defineset>  
           <define name="__int64" value="long long"/>  
         </defineset>  
         <includepath location="${java.home}/../include"/>  
         <includepath location="${java.home}/../include/${platform}"/>  
         <compilerarg value="-mno-cygwin"/>  
       </compiler>  
   
       <linker>  
         <linkerarg value="--add-stdcall-alias"/>  
       </linker>  
   
       <includepath location="${build.testcases.dir}"/>  
   
       <fileset dir="${test.src.dir}" includes="JniDemo.cpp"/>  
   
       <libset libs="stdc++"/>  
   
     </cc>  
   
     <!-- Necessary if windows, harmless if not -->  
     <copy file="${build.dir}/libJniDemo.so" tofile="${build.dir}/JniDemo.dll"/>  
   
     <java classname="JniDemo" fork="true">  
       <!-- Watch out: path separator hardwired to semicolon here! -->  
       <sysproperty key="java.library.path" path="${java.library.path};${build.dir}"/>  
       <classpath refid="test.classpath"/>  
       <arg line="count in word frequency of word in command line count"/>  
     </java>  
640    
641    </target>    </target>
642    
643    
644      <target name="4jdk7dist"
645              depends="4jdk7dist-clean, 4jdk7dist-jar, 4jdk7docs"
646              description="Puts all distributable products in single hierarchy"/>
647    
   <!-- Backward compatibility, work in progress (some files not checked in) -->  
   
   
   
   <property name="pretiger.src.dir"     location="${build.dir}/pretiger/src"/>  
   <property name="build.pretiger.dir"   location="${build.dir}/pretiger/classes"/>  
   <property name="pretiger.jar"         location="${build.lib.dir}/jsr166-pretiger.jar"/>  
   <property name="pretiger.sourcelevel" value="1.4"/>  
648    
   <target name="defang"  
        depends="init"  
    description="Generates pre-Tiger compatible source">  
649    
650      <delete dir="${pretiger.src.dir}"/>    <target name="4jdk7clean"
651      <mkdir dir="${pretiger.src.dir}"/>            description="Removes all build products">
652    
653      <exec executable="perl">      <delete dir="${build.4jdk7.dir}"/>
       <arg file="etc/defang.pl"/>  
       <!-- <arg value="-v"/> -->  
       <arg value="-s"/> <arg file="${src.dir}"/>  
       <arg value="-t"/> <arg file="${pretiger.src.dir}"/>  
     </exec>  
654    
655    </target>    </target>
656    
   <target name="compile-pretiger"  
           depends="init, configure-compiler, defang"  
           description="Compiles pre-Tiger sources to build folder">  
   
     <mkdir dir="${build.pretiger.dir}"/>  
657    
     <javac srcdir="${pretiger.src.dir}"  
           destdir="${build.pretiger.dir}"  
             debug="${build.debug}"  
        debuglevel="${build.debuglevel}"  
       deprecation="${build.deprecation}"  
            source="${pretiger.sourcelevel}"  
              fork="true">  
658    
659        <compilerarg line="${build.args}"/>    <target name="4jdk7dist-clean"
660        <exclude name="**/Thread.java"/>            description="Removes all build and distribution products">
   
     </javac>  
661    
662    </target>    </target>
663    
664    <target name="pretiger" depends="compile-pretiger">    <target name="4jdk7dist-jar"
665              depends="4jdk7clean, 4jdk7compile">
666    
667      <mkdir dir="${build.lib.dir}"/>      <copy file="${4jdk7product.jar}" todir="${dist.dir}"/>
   
     <jar destfile="${pretiger.jar}">  
       <fileset dir="${build.pretiger.dir}">  
       </fileset>  
     </jar>  
668    
669    </target>    </target>
670    
# Line 987  Line 672 
672    
673    
674    <target name="jsr166xcompile"    <target name="jsr166xcompile"
675            depends="init, configure-compiler"            depends="configure-compiler"
676            description="Compiles jsr166x sources">            description="Compiles jsr166x sources to build dir">
677    
678      <mkdir dir="${build.jsr166x.dir}"/>      <mkdir dir="${build.jsr166x.dir}"/>
679    
680      <javac srcdir="${jsr166xsrc.dir}"      <javac srcdir="${topsrc.dir}"
681            destdir="${build.jsr166x.dir}"             destdir="${build.jsr166x.dir}"
682              debug="${build.debug}"             debug="${build.debug}"
683         debuglevel="${build.debuglevel}"             debuglevel="${build.debuglevel}"
684        deprecation="${build.deprecation}"             deprecation="${build.deprecation}"
685             source="${build.sourcelevel}"             classpath=""
686               fork="true">             source="1.5"
687               bootclasspath="${bootclasspath6}"
688               includeAntRuntime="false"
689               includeJavaRuntime="false"
690               executable="${javac7}"
691               fork="true">
692    
693        <include name="**/*.java"/>        <include name="jsr166x/**/*.java"/>
694        <compilerarg line="${build.args}"/>        <compilerarg line="${build.args}"/>
695          <compilerarg value="-XDignore.symbol.file=true"/>
696          <compilerarg value="-Xlint:all,-unchecked,-rawtypes"/>
697    
698      </javac>      </javac>
699    
# Line 1024  Line 716 
716    
717    
718    <target name="jsr166xdocs"    <target name="jsr166xdocs"
719            description="Builds javadocs with custom tags to build folder">            description="Builds javadocs to dist dir">
720    
721      <delete dir="${build.jsr166xjavadocs.dir}"/>      <delete dir="${build.jsr166xjavadocs.dir}"/>
722      <mkdir dir="${build.jsr166xjavadocs.dir}"/>      <mkdir dir="${build.jsr166xjavadocs.dir}"/>
723    
724      <javadoc destdir="${build.jsr166xjavadocs.dir}"      <javadoc destdir="${build.jsr166xjavadocs.dir}"
725               link="http://java.sun.com/javase/6/docs/api/"               packagenames="jsr166x"
726                 link="${jdkapidocs.url}"
727              sourcepath="${jsr166xsrc.dir}:/home/dl/1.5.0/j2se/martin/j2se/src/share/classes"               source="${build.sourcelevel}"
728                 sourcepath="${topsrc.dir}:${jdksrc.dir}"
729      >               additionalparam="-XDignore.symbol.file=true" />
       <packageset dir="${topsrc.dir}" defaultexcludes="yes">  
       <include name="jsr166x"/>  
       </packageset>  
   
   
     </javadoc>  
730    
731    </target>    </target>
732    
# Line 1069  Line 755 
755    
756    
757    <target name="jsr166xdist-docs"    <target name="jsr166xdist-docs"
758            description="Builds javadocs without custom tags to dist folder">            description="Builds javadocs to dist dir">
759    
760      <delete dir="${dist.jsr166xjavadocs.dir}"/>      <delete dir="${dist.jsr166xjavadocs.dir}"/>
761      <mkdir dir="${dist.jsr166xjavadocs.dir}"/>      <mkdir dir="${dist.jsr166xjavadocs.dir}"/>
762    
763      <javadoc destdir="${dist.jsr166xjavadocs.dir}"      <javadoc destdir="${dist.jsr166xjavadocs.dir}"
764                  link="http://java.sun.com/javase/6/docs/api/"               packagenames="jsr166x"
765                source="${build.sourcelevel}">               link="${jdkapidocs.url}"
766                 source="${build.sourcelevel}"
767        <packageset dir="${topsrc.dir}" defaultexcludes="yes">               sourcepath="${topsrc.dir}:${jdksrc.dir}"
768        <include name="jsr166x"/>               additionalparam="-XDignore.symbol.file=true" />
       </packageset>  
   
     </javadoc>  
769    
770    </target>    </target>
771    
# Line 1097  Line 780 
780    
781    
782    <target name="jsr166ycompile"    <target name="jsr166ycompile"
783            depends="init, configure-compiler"            depends="configure-compiler"
784            description="Compiles jsr166y sources">            description="Compiles jsr166y sources">
785    
786      <mkdir dir="${build.jsr166y.dir}"/>      <mkdir dir="${build.jsr166y.dir}"/>
787    
788      <javac srcdir="${jsr166ysrc.dir}"      <javac srcdir="${topsrc.dir}"
789            destdir="${build.jsr166y.dir}"             destdir="${build.jsr166y.dir}"
790              debug="${build.debug}"             debug="${build.debug}"
791         debuglevel="${build.debuglevel}"             debuglevel="${build.debuglevel}"
792        deprecation="${build.deprecation}"             deprecation="${build.deprecation}"
793             source="${build.sourcelevel}"             source="1.6"
794               fork="true">             classpath=""
795               bootclasspath="${bootclasspath6}"
796               includeAntRuntime="false"
797               includeJavaRuntime="false"
798               executable="${javac7}"
799               fork="true">
800    
801        <include name="**/*.java"/>        <include name="jsr166y/**/*.java"/>
802        <compilerarg line="${build.args}"/>        <compilerarg line="${build.args}"/>
803        <compilerarg value="${bootclasspath.args}"/>        <compilerarg value="-XDignore.symbol.file=true"/>
804          <compilerarg value="-Xlint:all"/>
 <!--       <compilerarg line="-Xlint -Xmaxwarns 1000"/> -->  
   
805      </javac>      </javac>
   
806    </target>    </target>
807    
808    
   
809    <target name="jsr166yjar"    <target name="jsr166yjar"
810            depends="jsr166ycompile"            depends="jsr166ycompile"
811            description="Builds library jar from compiled sources">            description="Builds library jar from compiled sources">
812    
813      <mkdir dir="${build.jsr166ylib.dir}"/>      <mkdir dir="${build.jsr166ylib.dir}"/>
814    
815      <jar destfile="${jsr166yproduct.jar}">      <jar destfile="${jsr166yproduct.jar}" index="true">
816        <fileset dir="${build.jsr166y.dir}"/>        <fileset dir="${build.jsr166y.dir}"/>
817      </jar>      </jar>
818    
# Line 1137  Line 821 
821    
822    
823    <target name="jsr166ydocs"    <target name="jsr166ydocs"
824            description="Builds javadocs with custom tags to build folder">            description="Builds javadocs to dist dir">
825    
826      <delete dir="${build.jsr166yjavadocs.dir}"/>      <delete dir="${build.jsr166yjavadocs.dir}"/>
827      <mkdir dir="${build.jsr166yjavadocs.dir}"/>      <mkdir dir="${build.jsr166yjavadocs.dir}"/>
828    
829      <javadoc destdir="${build.jsr166yjavadocs.dir}"      <javadoc destdir="${build.jsr166yjavadocs.dir}"
830                  link="http://java.sun.com/javase/6/docs/api/"               packagenames="jsr166y"
831              sourcepath="${jsr166ysrc.dir}:/home/dl/1.5.0/j2se/martin/j2se/src/share/classes"               link="${jdkapidocs.url}"
832                 source="${build.sourcelevel}"
833      >               sourcepath="${topsrc.dir}:${jdksrc.dir}"
834        <packageset dir="${topsrc.dir}" defaultexcludes="no">               additionalparam="-XDignore.symbol.file=true" />
       <include name="jsr166y"/>  
       </packageset>  
   
   
     </javadoc>  
835    
836    </target>    </target>
837    
# Line 1179  Line 858 
858    </target>    </target>
859    
860    <target name="jsr166ydist-docs"    <target name="jsr166ydist-docs"
861            description="Builds javadocs without custom tags to dist folder">            description="Builds javadocs to dist dir">
862    
863      <delete dir="${dist.jsr166yjavadocs.dir}"/>      <delete dir="${dist.jsr166yjavadocs.dir}"/>
864      <mkdir dir="${dist.jsr166yjavadocs.dir}"/>      <mkdir dir="${dist.jsr166yjavadocs.dir}"/>
865    
866      <javadoc destdir="${dist.jsr166yjavadocs.dir}"      <javadoc destdir="${dist.jsr166yjavadocs.dir}"
867                  link="http://java.sun.com/javase/6/docs/api/"               packagenames="jsr166y"
868                source="${build.sourcelevel}">               link="${jdkapidocs.url}"
869        <fileset dir="${topsrc.dir}" defaultexcludes="yes">               source="${build.sourcelevel}"
870        <include name="jsr166y/*.java"/>               sourcepath="${topsrc.dir}:${jdksrc.dir}"
871        <include name="jsr166y/forkjoin/*.java"/>               additionalparam="-XDignore.symbol.file=true" />
             </fileset>  
     </javadoc>  
872    
873    </target>    </target>
874    
# Line 1202  Line 879 
879    
880    </target>    </target>
881    
882    
883      <!-- extra166y -->
884    
885    
886      <target name="extra166ycompile"
887              depends="configure-compiler, jsr166yjar"
888              description="Compiles extra166y sources">
889    
890        <mkdir dir="${build.extra166y.dir}"/>
891    
892        <javac srcdir="${topsrc.dir}"
893               destdir="${build.extra166y.dir}"
894               debug="${build.debug}"
895               debuglevel="${build.debuglevel}"
896               deprecation="${build.deprecation}"
897               classpath=""
898               source="1.6"
899               bootclasspath="${jsr166yproduct.jar}:${bootclasspath6}"
900               includeAntRuntime="false"
901               includeJavaRuntime="false"
902               executable="${javac7}"
903               fork="true">
904    
905          <include name="extra166y/**/*.java"/>
906          <compilerarg line="${build.args}"/>
907          <compilerarg value="-XDignore.symbol.file=true"/>
908          <compilerarg value="-Xlint:all,-unchecked,-rawtypes,-serial"/>
909    
910        </javac>
911    
912      </target>
913    
914    
915    
916      <target name="extra166yjar"
917              depends="extra166ycompile"
918              description="Builds library jar from compiled sources">
919    
920        <mkdir dir="${build.extra166ylib.dir}"/>
921    
922        <jar destfile="${extra166yproduct.jar}" index="true">
923          <fileset dir="${build.extra166y.dir}"/>
924        </jar>
925    
926      </target>
927    
928    
929    
930      <target name="extra166ydocs"
931              description="Builds javadocs with custom tags to build dir">
932    
933        <delete dir="${build.extra166yjavadocs.dir}"/>
934        <mkdir dir="${build.extra166yjavadocs.dir}"/>
935    
936        <javadoc destdir="${build.extra166yjavadocs.dir}"
937                 packagenames="extra166y"
938                 link="${jdkapidocs.url}"
939                 source="${build.sourcelevel}"
940                 sourcepath="${topsrc.dir}:${jdksrc.dir}"
941                 additionalparam="-XDignore.symbol.file=true" />
942    
943      </target>
944    
945    
946      <target name="extra166ydist"
947              depends="extra166ydist-clean, extra166ydist-jar, extra166ydist-docs"
948              description="Puts all distributable products in single hierarchy"/>
949    
950    
951    
952      <target name="extra166yclean"
953              description="Removes all build products">
954    
955        <delete dir="${build.extra166y.dir}"/>
956        <delete dir="${build.extra166ylib.dir}"/>
957    
958      </target>
959    
960    
961    
962      <target name="extra166ydist-clean"
963              description="Removes all build and distribution products">
964    
965      </target>
966    
967      <target name="extra166ydist-docs"
968              description="Builds javadocs to dist dir">
969    
970        <delete dir="${dist.extra166yjavadocs.dir}"/>
971        <mkdir dir="${dist.extra166yjavadocs.dir}"/>
972    
973        <javadoc destdir="${dist.extra166yjavadocs.dir}"
974                 packagenames="extra166y"
975                 link="${jdkapidocs.url}"
976                 source="${build.sourcelevel}"
977                 sourcepath="${topsrc.dir}:${jdksrc.dir}"
978                 additionalparam="-XDignore.symbol.file=true" />
979    
980      </target>
981    
982      <target name="extra166ydist-jar"
983              depends="extra166yclean, extra166yjar">
984    
985        <copy file="${extra166yproduct.jar}" todir="${dist.dir}"/>
986    
987      </target>
988    
989      <!-- jsr166e -->
990    
991      <target name="jsr166ecompile"
992              depends="configure-compiler"
993              description="Compiles jsr166e sources">
994    
995        <mkdir dir="${build.jsr166e.dir}"/>
996    
997        <javac srcdir="${topsrc.dir}"
998               destdir="${build.jsr166e.dir}"
999               debug="${build.debug}"
1000               debuglevel="${build.debuglevel}"
1001               deprecation="${build.deprecation}"
1002               source="1.7"
1003               classpath=""
1004               includeAntRuntime="false"
1005               includeJavaRuntime="false"
1006               executable="${javac7}"
1007               fork="true">
1008    
1009          <include name="jsr166e/**/*.java"/>
1010          <compilerarg line="${build.args}"/>
1011          <compilerarg value="-XDignore.symbol.file=true"/>
1012          <compilerarg value="-Xlint:all"/>
1013    
1014        </javac>
1015    
1016      </target>
1017    
1018    
1019    
1020      <target name="jsr166ejar"
1021              depends="jsr166ecompile"
1022              description="Builds library jar from compiled sources">
1023    
1024        <mkdir dir="${build.jsr166elib.dir}"/>
1025    
1026        <jar destfile="${jsr166eproduct.jar}" index="true">
1027          <fileset dir="${build.jsr166e.dir}"/>
1028        </jar>
1029    
1030      </target>
1031    
1032    
1033    
1034      <target name="jsr166edocs"
1035              description="Builds javadocs with custom tags to build dir">
1036    
1037        <delete dir="${build.jsr166ejavadocs.dir}"/>
1038        <mkdir dir="${build.jsr166ejavadocs.dir}"/>
1039    
1040        <javadoc destdir="${build.jsr166ejavadocs.dir}"
1041                 packagenames="jsr166e,jsr166e.extra"
1042                 link="${jdkapi7docs.url}"
1043                 source="1.7"
1044                 sourcepath="${topsrc.dir}:${jdk7src.dir}"
1045                 executable="${javadoc7}"
1046                 additionalparam="-XDignore.symbol.file=true" >
1047          <fileset dir="${topsrc.dir}" defaultexcludes="yes">
1048            <include name="jsr166e/**/*.java"/>
1049          </fileset>
1050        </javadoc>
1051    
1052      </target>
1053    
1054    
1055      <target name="jsr166edist"
1056              depends="jsr166edist-clean, jsr166edist-jar, jsr166edist-docs"
1057              description="Puts all distributable products in single hierarchy"/>
1058    
1059    
1060    
1061      <target name="jsr166eclean"
1062              description="Removes all build products">
1063    
1064        <delete dir="${build.jsr166e.dir}"/>
1065        <delete dir="${build.jsr166elib.dir}"/>
1066    
1067      </target>
1068    
1069    
1070    
1071      <target name="jsr166edist-clean"
1072              description="Removes all build and distribution products">
1073    
1074      </target>
1075    
1076      <target name="jsr166edist-docs"
1077              description="Builds javadocs to dist dir">
1078    
1079        <delete dir="${dist.jsr166ejavadocs.dir}"/>
1080        <mkdir dir="${dist.jsr166ejavadocs.dir}"/>
1081    
1082        <javadoc destdir="${dist.jsr166ejavadocs.dir}"
1083                 packagenames="jsr166e,jsr166e.extra"
1084                 link="${jdkapidocs.url}"
1085                 source="1.7"
1086                 sourcepath="${topsrc.dir}:${jdksrc.dir}"
1087                 additionalparam="-XDignore.symbol.file=true" />
1088    
1089      </target>
1090    
1091      <target name="jsr166edist-jar"
1092              depends="jsr166eclean, jsr166ejar">
1093    
1094        <copy file="${jsr166eproduct.jar}" todir="${dist.dir}"/>
1095    
1096      </target>
1097    
1098  </project>  </project>

Legend:
Removed from v.1.74  
changed lines
  Added in v.1.105

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