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

Diff of /jsr166/build.xml

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

revision 1.127 by jsr166, Wed Jan 23 06:57:08 2013 UTC revision 1.138 by jsr166, Fri Mar 22 18:04:56 2013 UTC
# Line 22  Line 22 
22    $HOME/jdk/src/jdk8    $HOME/jdk/src/jdk8
23    where each of the above is a complete JDK source tree    where each of the above is a complete JDK source tree
24    (e.g. mercurial forest) or a symlink to same.    (e.g. mercurial forest) or a symlink to same.
25    As of 2013-02, the very latest lambda 8 jdk is needed for jdk8.
26  ------------------------------------------------------------------------------  ------------------------------------------------------------------------------
27    </description>    </description>
28    
29    <target name="usage" description="Advises user to run with -projecthelp">    <target name="usage" description="Display main targets by running 'ant -projecthelp'">
30      <echo>Run "ant -projecthelp" for full usage information.</echo>      <java classname="org.apache.tools.ant.Main">
31          <arg value="-projecthelp" />
32        </java>
33    </target>    </target>
34    
35    
# Line 39  Line 42 
42    <property name="build.debug"          value="true"/>    <property name="build.debug"          value="true"/>
43    <property name="build.debuglevel"     value="source,lines,vars"/>    <property name="build.debuglevel"     value="source,lines,vars"/>
44    <property name="build.deprecation"    value="false"/>    <property name="build.deprecation"    value="false"/>
45      <property name="build.javadoc.access" value="protected"/>
46    
47    <!-- Build locations -->    <!-- Build locations -->
48    <property name="build.dir"                   location="build"/>    <property name="build.dir"                   location="build"/>
# Line 166  Line 170 
170    
171    <macrodef name="run-tck-tests">    <macrodef name="run-tck-tests">
172      <attribute name="tck.src.dir" default="${tck.src.dir}"/>      <attribute name="tck.src.dir" default="${tck.src.dir}"/>
     <attribute name="source" default="6"/>  
173      <attribute name="target"/>      <attribute name="target"/>
174        <attribute name="compile-target" default="@{target}"/>
175      <attribute name="workdir"/>      <attribute name="workdir"/>
176      <attribute name="classes"/>      <attribute name="classes"/>
177      <attribute name="jvmflags" default=""/>      <attribute name="jvmflags" default=""/>
178        <element name="javac-elements" optional="true"/>
179      <sequential>      <sequential>
180    
181      <mkdir dir="@{workdir}/tck-classes"/>      <mkdir dir="@{workdir}/tck-classes"/>
# Line 180  Line 185 
185             debug="${build.debug}"             debug="${build.debug}"
186             debuglevel="${build.debuglevel}"             debuglevel="${build.debuglevel}"
187             deprecation="${build.deprecation}"             deprecation="${build.deprecation}"
188             source="@{source}"             source="@{compile-target}"
189               target="@{compile-target}"
190             classpath="${junit.jar}"             classpath="${junit.jar}"
191             bootclasspath="@{classes}:${bootclasspath@{source}}"             bootclasspath="@{classes}:${bootclasspath@{compile-target}}"
192             includeAntRuntime="false"             includeAntRuntime="false"
193             includeJavaRuntime="false"             includeJavaRuntime="false"
194             executable="${javac@{target}}"             executable="${javac@{compile-target}}"
195             fork="true">             fork="true">
196    
197        <include name="*.java"/>        <include name="*.java"/>
198        <compilerarg value="-XDignore.symbol.file=true"/>        <compilerarg value="-XDignore.symbol.file=true"/>
199        <compilerarg value="-Xlint:all,-unchecked,-rawtypes,-serial,-deprecation"/>        <compilerarg value="-Xlint:all,-unchecked,-rawtypes,-serial,-deprecation"/>
200        <compilerarg line="${build.args}"/>        <compilerarg line="${build.args}"/>
201          <javac-elements/>
202    
203      </javac>      </javac>
204    
# Line 210  Line 217 
217      </sequential>      </sequential>
218    </macrodef>    </macrodef>
219    
220      <macrodef name="run-jtreg-tests">
221        <attribute name="jtreg.src.dir" default="${jtreg.src.dir}"/>
222        <attribute name="source" default="7"/>
223        <attribute name="target"/>
224        <attribute name="workdir"/>
225        <attribute name="classes"/>
226        <attribute name="jtregflags" default=""/>
227        <sequential>
228        <delete dir="@{workdir}/JTwork"   quiet="true"/>
229        <delete dir="@{workdir}/JTreport" quiet="true"/>
230        <mkdir dir="@{workdir}/JTwork/scratch"/>
231        <mkdir dir="@{workdir}/JTreport"/>
232        <jtreg dir="@{jtreg.src.dir}"
233               jdk="${jdk@{target}.home}"
234               workDir="@{workdir}/JTwork"
235               reportDir="@{workdir}/JTreport">
236    
237          <arg value="-Xbootclasspath/p:@{classes}"/>
238          <arg value="-agentvm"/>
239          <arg value="-v:nopass,fail"/>
240          <arg value="-vmoptions:-esa -ea"/>
241          <arg value="-automatic"/>
242          <arg value="-k:!ignore"/>
243          <arg line="@{jtregflags}"/>
244        </jtreg>
245        </sequential>
246      </macrodef>
247    
248    <!-- ALoops classpath -->    <!-- ALoops classpath -->
249    <path id="loops.classpath">    <path id="loops.classpath">
250      <pathelement location="${build.loops.dir}"/>      <pathelement location="${build.loops.dir}"/>
# Line 243  Line 278 
278             fork="true">             fork="true">
279    
280        <include name="**/*.java"/>        <include name="**/*.java"/>
281          <compilerarg value="-Xprefer:source"/>
282        <compilerarg value="-XDignore.symbol.file=true"/>        <compilerarg value="-XDignore.symbol.file=true"/>
283        <compilerarg value="-Xlint:all"/>        <compilerarg value="-Xlint:all"/>
284        <compilerarg line="${build.args}"/>        <compilerarg line="${build.args}"/>
# Line 279  Line 315 
315               packagenames="none"               packagenames="none"
316               link="${jdkapi8docs.url}"               link="${jdkapi8docs.url}"
317               overview="${src.dir}/intro.html"               overview="${src.dir}/intro.html"
318                 access="${build.javadoc.access}"
319               sourcepath="${src.dir}:${jdk8src.dir}"               sourcepath="${src.dir}:${jdk8src.dir}"
320               classpath=""               classpath=""
321               executable="${javadoc8}">               executable="${javadoc8}">
# Line 408  Line 445 
445    
446    </target>    </target>
447    
448      <target name="test-tck"
449              depends="jar"
450              description="Runs tck tests for main directly">
451    
452        <run-tck-tests
453          target="8"
454          workdir="${build.dir}"
455          classes="${product.jar}"/>
456      </target>
457    
458      <target name="test-jtreg"
459              depends="jar"
460              description="Runs jtreg tests for main using the jtreg ant task">
461        <run-jtreg-tests
462           target="8"
463           workdir="${build.dir}"
464           classes="${product.jar}"/>
465      </target>
466    
467      <target name="test-ng"
468              depends="test-tck, test-jtreg"
469              description="Runs tck and jtreg tests for main">
470      </target>
471    
472    <target name="run-tests"    <target name="run-tests"
473            depends="compile-tests">            depends="compile-tests">
# Line 574  Line 634 
634             fork="true">             fork="true">
635    
636        <include name="**/*.java"/>        <include name="**/*.java"/>
637          <compilerarg value="-Xprefer:source"/>
638        <compilerarg value="-XDignore.symbol.file=true"/>        <compilerarg value="-XDignore.symbol.file=true"/>
639        <compilerarg value="-Xlint:all"/>        <compilerarg value="-Xlint:all"/>
640        <compilerarg line="${build.args}"/>        <compilerarg line="${build.args}"/>
# Line 582  Line 643 
643    </target>    </target>
644    
645    
646    <target name="4jdk7-jar"    <target name="4jdk7jar"
647            depends="4jdk7compile"            depends="4jdk7compile"
648            description="Builds library jar from compiled sources">            description="Builds library jar from compiled sources">
649    
# Line 594  Line 655 
655    
656    
657    <target name="4jdk7-test-tck"    <target name="4jdk7-test-tck"
658            depends="4jdk7-jar"            depends="4jdk7jar"
659            description="Runs tck tests for jsr166-4jdk7 directly">            description="Runs tck tests for jsr166-4jdk7 directly">
660    
661      <run-tck-tests      <run-tck-tests
662        target="7"        target="7"
663        workdir="${build.4jdk7.dir}"        workdir="${build.4jdk7.dir}"
664        classes="${4jdk7product.jar}"/>        classes="${4jdk7product.jar}">
665          <javac-elements>
666            <!-- JDK8+ test classes -->
667            <exclude name="*8Test.java"/>
668            <exclude name="DoubleAccumulatorTest.java"/>
669            <exclude name="DoubleAdderTest.java"/>
670            <exclude name="LongAccumulatorTest.java"/>
671            <exclude name="LongAdderTest.java"/>
672            <exclude name="CompletableFutureTest.java"/>
673            <exclude name="StampedLockTest.java"/>
674          </javac-elements>
675        </run-tck-tests>
676    </target>    </target>
677    
678    
# Line 633  Line 705 
705    </target>    </target>
706    
707    <target name="4jdk7-test-jtreg"    <target name="4jdk7-test-jtreg"
708            depends="4jdk7compile"            depends="4jdk7jar"
709            description="Runs jtreg tests for jsr166-4jdk7 using the jtreg ant task">            description="Runs jtreg tests for jsr166-4jdk7 using the jtreg ant task">
710      <delete dir="${build.4jdk7.dir}/JTwork"   quiet="true"/>      <run-jtreg-tests
711      <delete dir="${build.4jdk7.dir}/JTreport" quiet="true"/>         target="7"
712      <mkdir dir="${build.4jdk7.dir}/JTwork/scratch"/>         workdir="${build.4jdk7.dir}"
713      <mkdir dir="${build.4jdk7.dir}/JTreport"/>         classes="${4jdk7product.jar}"/>
     <jtreg dir="${jtreg.src.dir}"  
            jdk="${jdk7.home}"  
            workDir="${build.4jdk7.dir}/JTwork"  
            reportDir="${build.4jdk7.dir}/JTreport">  
   
       <arg value="-Xbootclasspath/p:${4jdk7product.jar}"/>  
       <arg value="-agentvm"/>  
       <arg value="-v:nopass,fail"/>  
       <arg value="-vmoptions:-esa -ea"/>  
       <arg value="-automatic"/>  
       <arg value="-k:!ignore"/>  
     </jtreg>  
714    </target>    </target>
715    
716    
# Line 670  Line 730 
730               packagenames="none"               packagenames="none"
731               link="${jdkapi7docs.url}"               link="${jdkapi7docs.url}"
732               overview="${4jdk7src.dir}/intro.html"               overview="${4jdk7src.dir}/intro.html"
733                 access="${build.javadoc.access}"
734               sourcepath="${4jdk7src.dir}:${jdk7src.dir}"               sourcepath="${4jdk7src.dir}:${jdk7src.dir}"
735               classpath=""               classpath=""
736               executable="${javadoc7}">               executable="${javadoc7}">
# Line 700  Line 761 
761    </target>    </target>
762    
763    <target name="4jdk7dist-jar"    <target name="4jdk7dist-jar"
764            depends="4jdk7clean, 4jdk7-jar">            depends="4jdk7clean, 4jdk7jar">
765      <copy file="${4jdk7product.jar}" todir="${dist.dir}"/>      <copy file="${4jdk7product.jar}" todir="${dist.dir}"/>
766    </target>    </target>
767    
# Line 741  Line 802 
802    </target>    </target>
803    
804    
805    <target name="jsr166x-jar"    <target name="jsr166xjar"
806            depends="jsr166xcompile"            depends="jsr166xcompile"
807            description="Builds library jar from compiled sources">            description="Builds library jar from compiled sources">
808    
# Line 761  Line 822 
822      <javadoc destdir="${jsr166xdocs.dir}"      <javadoc destdir="${jsr166xdocs.dir}"
823               packagenames="jsr166x.*"               packagenames="jsr166x.*"
824               link="${jdkapidocs.url}"               link="${jdkapidocs.url}"
825                 access="${build.javadoc.access}"
826               sourcepath="${topsrc.dir}:${jdk6src.dir}"               sourcepath="${topsrc.dir}:${jdk6src.dir}"
827               bootclasspath="${bootclasspath6}"               bootclasspath="${bootclasspath6}"
828               source="5"               source="5"
# Line 791  Line 853 
853    
854    
855    <target name="jsr166xdist-jar"    <target name="jsr166xdist-jar"
856            depends="jsr166xclean, jsr166x-jar">            depends="jsr166xclean, jsr166xjar">
857      <copy file="${jsr166x.jar}" todir="${dist.dir}"/>      <copy file="${jsr166x.jar}" todir="${dist.dir}"/>
858    </target>    </target>
859    
# Line 831  Line 893 
893    </target>    </target>
894    
895    
896    <target name="jsr166y-jar"    <target name="jsr166yjar"
897            depends="jsr166ycompile"            depends="jsr166ycompile"
898            description="Builds library jar from compiled sources">            description="Builds library jar from compiled sources">
899    
# Line 851  Line 913 
913      <javadoc destdir="${jsr166ydocs.dir}"      <javadoc destdir="${jsr166ydocs.dir}"
914               packagenames="jsr166y.*"               packagenames="jsr166y.*"
915               link="${jdkapidocs.url}"               link="${jdkapidocs.url}"
916                 access="${build.javadoc.access}"
917               sourcepath="${topsrc.dir}:${jdk6src.dir}"               sourcepath="${topsrc.dir}:${jdk6src.dir}"
918               bootclasspath="${bootclasspath6}"               bootclasspath="${bootclasspath6}"
919               source="6"               source="6"
# Line 880  Line 943 
943    </target>    </target>
944    
945    <target name="jsr166ydist-jar"    <target name="jsr166ydist-jar"
946            depends="jsr166yclean, jsr166y-jar">            depends="jsr166yclean, jsr166yjar">
947      <copy file="${jsr166y.jar}" todir="${dist.dir}"/>      <copy file="${jsr166y.jar}" todir="${dist.dir}"/>
948    </target>    </target>
949    
# Line 894  Line 957 
957    
958    
959    <target name="extra166ycompile"    <target name="extra166ycompile"
960            depends="configure-compiler, jsr166y-jar"            depends="configure-compiler, jsr166yjar"
961            description="Compiles extra166y sources">            description="Compiles extra166y sources">
962    
963      <mkdir dir="${build.extra166y.classes.dir}"/>      <mkdir dir="${build.extra166y.classes.dir}"/>
# Line 921  Line 984 
984    </target>    </target>
985    
986    
987    <target name="extra166y-jar"    <target name="extra166yjar"
988            depends="extra166ycompile"            depends="extra166ycompile"
989            description="Builds library jar from compiled sources">            description="Builds library jar from compiled sources">
990    
# Line 941  Line 1004 
1004      <javadoc destdir="${extra166ydocs.dir}"      <javadoc destdir="${extra166ydocs.dir}"
1005               packagenames="extra166y.*"               packagenames="extra166y.*"
1006               link="${jdkapidocs.url}"               link="${jdkapidocs.url}"
1007                 access="${build.javadoc.access}"
1008               sourcepath="${topsrc.dir}:${jdk6src.dir}"               sourcepath="${topsrc.dir}:${jdk6src.dir}"
1009               bootclasspath="${bootclasspath6}"               bootclasspath="${bootclasspath6}"
1010               source="6"               source="6"
# Line 970  Line 1034 
1034    </target>    </target>
1035    
1036    <target name="extra166ydist-jar"    <target name="extra166ydist-jar"
1037            depends="extra166yclean, extra166y-jar">            depends="extra166yclean, extra166yjar">
1038      <copy file="${extra166y.jar}" todir="${dist.dir}"/>      <copy file="${extra166y.jar}" todir="${dist.dir}"/>
1039    </target>    </target>
1040    
# Line 1008  Line 1072 
1072    </target>    </target>
1073    
1074    
1075    <target name="jsr166e-jar"    <target name="jsr166ejar"
1076            depends="jsr166ecompile"            depends="jsr166ecompile"
1077            description="Builds library jar from compiled sources">            description="Builds library jar from compiled sources">
1078    
# Line 1028  Line 1092 
1092      <javadoc destdir="${jsr166edocs.dir}"      <javadoc destdir="${jsr166edocs.dir}"
1093               packagenames="jsr166e.*"               packagenames="jsr166e.*"
1094               link="${jdkapidocs.url}"               link="${jdkapidocs.url}"
1095                 access="${build.javadoc.access}"
1096               sourcepath="${topsrc.dir}:${jdk7src.dir}"               sourcepath="${topsrc.dir}:${jdk7src.dir}"
1097               source="7"               source="7"
1098               executable="${javadoc7}">               executable="${javadoc7}">
# Line 1038  Line 1103 
1103    
1104    
1105    <target name="jsr166e-test-tck"    <target name="jsr166e-test-tck"
1106            depends="jsr166e-jar"            depends="jsr166ejar"
1107            description="Runs tck tests for jsr166e">            description="Runs tck tests for jsr166e">
1108    
1109      <run-tck-tests      <run-tck-tests
1110        tck.src.dir="${test.src.dir}/tck-jsr166e"        tck.src.dir="${test.src.dir}/tck-jsr166e"
1111        source="7"        target="7"
       target="8"  
1112        workdir="${build.jsr166e.dir}"        workdir="${build.jsr166e.dir}"
1113        classes="${jsr166e.jar}"/>        classes="${jsr166e.jar}"/>
1114    </target>    </target>
# Line 1067  Line 1131 
1131    </target>    </target>
1132    
1133    <target name="jsr166edist-jar"    <target name="jsr166edist-jar"
1134            depends="jsr166eclean, jsr166e-jar">            depends="jsr166eclean, jsr166ejar">
1135      <copy file="${jsr166e.jar}" todir="${dist.dir}"/>      <copy file="${jsr166e.jar}" todir="${dist.dir}"/>
1136    </target>    </target>
1137    
# Line 1076  Line 1140 
1140      <mirror-dir src="${jsr166edocs.dir}" dst="${dist.jsr166edocs.dir}"/>      <mirror-dir src="${jsr166edocs.dir}" dst="${dist.jsr166edocs.dir}"/>
1141    </target>    </target>
1142    
1143    
1144    <!-- Find buglets that can be detected by static build tools -->
1145    
1146      <target name="lint">
1147        <antcall target="dists">
1148          <param name="build.javadoc.access" value="private"/>
1149        </antcall>
1150      </target>
1151    
1152    
1153  </project>  </project>

Legend:
Removed from v.1.127  
changed lines
  Added in v.1.138

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