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

Diff of /jsr166/build.xml

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

revision 1.175 by jsr166, Fri Sep 4 19:37:34 2015 UTC revision 1.182 by jsr166, Sun Sep 13 17:46:07 2015 UTC
# Line 1  Line 1 
1  <project name="jsr166" default="usage">  <project name="jsr166" default="usage"
2      xmlns:if="ant:if" xmlns:unless="ant:unless">
3    
4    <description>    <description>
5  ------------------------------------------------------------------------------  ------------------------------------------------------------------------------
# Line 28  Line 29 
29    Alternatively, define ant variables thus:    Alternatively, define ant variables thus:
30    ant -Djdk$N.home=...    ant -Djdk$N.home=...
31    for $N in 6 7 8 9 ...    for $N in 6 7 8 9 ...
32    
33      As of 2015-09, there is incomplete hacky support for jigsaw
34      Build for jigsaw using something like:
35      ant -Djdk9.home="$HOME/jdk/jigsaw" -Djdk9.src.dir="$HOME/jdk/src/jigsaw" clean test dist
36      "docs" target is still broken.
37  ------------------------------------------------------------------------------  ------------------------------------------------------------------------------
38    </description>    </description>
39    
# Line 38  Line 44 
44      </java>      </java>
45    </target>    </target>
46    
47      <!-- HOWTO printf debug: <echo message="prop=${prop}"/> -->
48    
49    <!-- User-specific settings -->    <!-- User-specific settings -->
50    <property file="user.properties"/>    <property file="user.properties"/>
# Line 93  Line 100 
100      <property name="java@{v}"       location="${jdk@{v}.home}/bin/java"/>      <property name="java@{v}"       location="${jdk@{v}.home}/bin/java"/>
101      <property name="javac@{v}"      location="${jdk@{v}.home}/bin/javac"/>      <property name="javac@{v}"      location="${jdk@{v}.home}/bin/javac"/>
102      <property name="javadoc@{v}"    location="${jdk@{v}.home}/bin/javadoc"/>      <property name="javadoc@{v}"    location="${jdk@{v}.home}/bin/javadoc"/>
103      <property name="jdk@{v}src.dir" location="${jdks.home}/src/jdk@{v}/jdk/src/share/classes"/>      <local name="have.java.base"/>
104        <available property="have.java.base"
105          file="${jdks.home}/src/jdk@{v}/jdk/src/java.base/share/classes" type="dir"/>
106        <property name="jdk@{v}src.dir" location="${jdks.home}/src/jdk@{v}/jdk/src/java.base/share/classes"
107          if:set="have.java.base"/>
108        <property name="jdk@{v}src.dir" location="${jdks.home}/src/jdk@{v}/jdk/src/share/classes"
109          unless:set="have.java.base"/>
110        <local name="modules"/>
111        <available property="modules" file="${jdk@{v}.home}/jmods" type="dir"/>
112      <local name="boot.jar.dir"/>      <local name="boot.jar.dir"/>
113      <property name="boot.jar.dir"   location="${jdk@{v}.home}/jre/lib"/>      <property name="boot.jar.dir"   location="${jdk@{v}.home}/jre/lib" unless:set="modules"/>
114      <path id="bootclasspath@{v}">      <path id="bootclasspath@{v}" unless:set="modules">
115        <pathelement path="${boot.jar.dir}/resources.jar"/>        <pathelement path="${boot.jar.dir}/resources.jar"/>
116        <pathelement path="${boot.jar.dir}/rt.jar"/>        <pathelement path="${boot.jar.dir}/rt.jar"/>
117        <pathelement path="${boot.jar.dir}/jsse.jar"/>        <pathelement path="${boot.jar.dir}/jsse.jar"/>
118        <pathelement path="${boot.jar.dir}/jce.jar"/>        <pathelement path="${boot.jar.dir}/jce.jar"/>
119        <pathelement path="${boot.jar.dir}/charsets.jar"/>        <pathelement path="${boot.jar.dir}/charsets.jar"/>
120      </path>      </path>
121      <property name="bootclasspath@{v}" value="${toString:bootclasspath@{v}}"/>      <property name="bootclasspath@{v}" value="${toString:bootclasspath@{v}}" unless:set="modules"/>
122      </sequential>      </sequential>
123    </macrodef>    </macrodef>
124    
# Line 204  Line 219 
219      <attribute name="classes"/>      <attribute name="classes"/>
220      <attribute name="jvmflags" default="-ea -esa -Djsr166.testImplementationDetails=true"/>      <attribute name="jvmflags" default="-ea -esa -Djsr166.testImplementationDetails=true"/>
221      <element name="javac-elements" optional="true"/>      <element name="javac-elements" optional="true"/>
222    
223      <sequential>      <sequential>
224    
225        <local name="modules"/>
226        <condition property="modules">
227          <available file="${jdk@{compile-target}.home}/jmods" type="dir"/>
228        </condition>
229    
230      <mkdir dir="@{workdir}/tck-classes"/>      <mkdir dir="@{workdir}/tck-classes"/>
231    
232      <javac srcdir="@{tck.src.dir}"      <javac srcdir="@{tck.src.dir}"
# Line 224  Line 245 
245        <include name="*.java"/>        <include name="*.java"/>
246        <compilerarg value="-XDignore.symbol.file=true"/>        <compilerarg value="-XDignore.symbol.file=true"/>
247        <compilerarg value="-Xlint:all,-unchecked,-rawtypes,-serial,-deprecation"/>        <compilerarg value="-Xlint:all,-unchecked,-rawtypes,-serial,-deprecation"/>
248        <compilerarg value="-Xbootclasspath/p:@{classes}"/>        <compilerarg value="-Xbootclasspath/p:@{classes}" unless:set="modules"/>
249          <compilerarg value="-Xoverride:${build.classes.dir}" if:set="modules"/>
250        <compilerarg line="${build.args}"/>        <compilerarg line="${build.args}"/>
251        <javac-elements/>        <javac-elements/>
252    
# Line 234  Line 256 
256            failonerror="true"            failonerror="true"
257            jvm="${java@{target}}"            jvm="${java@{target}}"
258            fork="true">            fork="true">
259          <jvmarg value="-Xbootclasspath/p:@{classes}"/>          <jvmarg value="-Xbootclasspath/p:@{classes}" unless:set="modules"/>
260            <jvmarg value="-Xoverride:${build.classes.dir}" if:set="modules"/>
261          <jvmarg line="@{jvmflags}"/>          <jvmarg line="@{jvmflags}"/>
262    
263          <!-- ant -Djava.util.concurrent.ForkJoinPool.common.parallelism=1 tck -->          <!-- ant -Djava.util.concurrent.ForkJoinPool.common.parallelism=1 tck -->
# Line 283  Line 306 
306      <attribute name="workdir"/>      <attribute name="workdir"/>
307      <attribute name="classes"/>      <attribute name="classes"/>
308      <attribute name="jtregflags" default=""/>      <attribute name="jtregflags" default=""/>
309    
310      <sequential>      <sequential>
311    
312        <local name="modules"/>
313        <condition property="modules">
314          <available file="${jdk@{target}.home}/jmods" type="dir"/>
315        </condition>
316    
317      <delete dir="@{workdir}/JTwork"   quiet="true"/>      <delete dir="@{workdir}/JTwork"   quiet="true"/>
318      <delete dir="@{workdir}/JTreport" quiet="true"/>      <delete dir="@{workdir}/JTreport" quiet="true"/>
319      <mkdir dir="@{workdir}/JTwork/scratch"/>      <mkdir dir="@{workdir}/JTwork/scratch"/>
# Line 293  Line 323 
323             workDir="@{workdir}/JTwork"             workDir="@{workdir}/JTwork"
324             reportDir="@{workdir}/JTreport">             reportDir="@{workdir}/JTreport">
325        <patternset refid="jdk@{target}.jtreg.tests"/>        <patternset refid="jdk@{target}.jtreg.tests"/>
326        <arg value="-Xbootclasspath/p:@{classes}"/>        <arg value="-Xbootclasspath/p:@{classes}" unless:set="modules"/>
327          <arg value="-Xoverride:${build.classes.dir}" if:set="modules"/>
328        <arg value="-agentvm"/>        <arg value="-agentvm"/>
329        <arg value="-v:nopass,fail"/>        <arg value="-v:nopass,fail"/>
330        <arg value="-vmoptions:-esa -ea"/>        <arg value="-vmoptions:-esa -ea"/>
# Line 326  Line 357 
357            depends="configure-compiler"            depends="configure-compiler"
358            description="Compiles src/main sources to build dir">            description="Compiles src/main sources to build dir">
359    
360      <mkdir dir="${build.classes.dir}"/>      <local name="modules"/>
361        <condition property="modules">
362          <and>
363            <available file="${jdk9.home}/jmods" type="dir"/>
364            <equals arg1="9" arg2="${build.main.java.version}"/>
365          </and>
366        </condition>
367    
368        <local name="destdir"/>
369        <property name="destdir" value="${build.classes.dir}/java.base" if:set="modules"/>
370        <property name="destdir" value="${build.classes.dir}" unless:set="modules"/>
371    
372        <mkdir dir="${destdir}"/>
373    
374      <javac srcdir="${src.dir}"      <javac srcdir="${src.dir}"
375             destdir="${build.classes.dir}"             destdir="${destdir}"
376             debug="${build.debug}"             debug="${build.debug}"
377             debuglevel="${build.debuglevel}"             debuglevel="${build.debuglevel}"
378             deprecation="${build.deprecation}"             deprecation="${build.deprecation}"
# Line 340  Line 383 
383             fork="true">             fork="true">
384    
385        <include name="**/*.java"/>        <include name="**/*.java"/>
386          <compilerarg value="-Xmodule:java.base" if:set="modules"/>
387        <compilerarg value="-Xprefer:source"/>        <compilerarg value="-Xprefer:source"/>
388        <compilerarg value="-XDignore.symbol.file=true"/>        <compilerarg value="-XDignore.symbol.file=true"/>
389        <compilerarg value="-Xlint:all"/>        <compilerarg value="-Xlint:all"/>
# Line 358  Line 402 
402    
403      <jar destfile="${product.jar}">      <jar destfile="${product.jar}">
404        <fileset dir="${build.classes.dir}"/>        <fileset dir="${build.classes.dir}"/>
405          <manifest>
406            <attribute name="Built-By" value="${user.name}"/>
407            <attribute name="Implementation-Vendor" value="JCP JSR-166 Expert Group."/>
408          </manifest>
409      </jar>      </jar>
410    </target>    </target>
411    
# Line 385  Line 433 
433        <arg line="-Xdocrootparent ${java9.docroot.url}"/>        <arg line="-Xdocrootparent ${java9.docroot.url}"/>
434        <arg line="-Xmaxerrs 1000 -Xmaxwarns 1000"/>        <arg line="-Xmaxerrs 1000 -Xmaxwarns 1000"/>
435        <arg value="-XDignore.symbol.file=true"/>        <arg value="-XDignore.symbol.file=true"/>
436    <!--  TODO     <arg value="-Xmodule:java.base"/> -->
437        <arg value="-tag"/>        <arg value="-tag"/>
438        <arg value="${javadoc.jls.option}"/>        <arg value="${javadoc.jls.option}"/>
439        <arg value="-tag"/>        <arg value="-tag"/>
# Line 416  Line 465 
465        <exclude name="src/emulation/**"/>        <exclude name="src/emulation/**"/>
466        <exclude name="**/SyntaxTest.java"/>        <exclude name="**/SyntaxTest.java"/>
467        <exclude name="**/SuperfluousAbstract.java"/>        <exclude name="**/SuperfluousAbstract.java"/>
468          <manifest>
469            <attribute name="Built-By" value="${user.name}"/>
470            <attribute name="Implementation-Vendor" value="JCP JSR-166 Expert Group."/>
471          </manifest>
472      </jar>      </jar>
473    </target>    </target>
474    
# Line 514  Line 567 
567    
568    
569    <target name="configure-compiler">    <target name="configure-compiler">
570        <fail message="ant version too old">
571          <condition>
572            <not> <antversion atleast="1.9.1"/> </not>
573          </condition>
574        </fail>
575    
576      <property name="unchecked.option" value="-Xlint:unchecked"/>      <property name="unchecked.option" value="-Xlint:unchecked"/>
577    
# Line 653  Line 711 
711    
712      <jar destfile="${4jdk7product.jar}">      <jar destfile="${4jdk7product.jar}">
713        <fileset dir="${build.4jdk7.classes.dir}"/>        <fileset dir="${build.4jdk7.classes.dir}"/>
714          <manifest>
715            <attribute name="Built-By" value="${user.name}"/>
716            <attribute name="Implementation-Vendor" value="JCP JSR-166 Expert Group."/>
717          </manifest>
718      </jar>      </jar>
719    
720    </target>    </target>
# Line 670  Line 732 
732          <!-- JDK8+ test classes -->          <!-- JDK8+ test classes -->
733          <exclude name="*8Test.java"/>          <exclude name="*8Test.java"/>
734          <exclude name="*9Test.java"/>          <exclude name="*9Test.java"/>
735            <exclude name="*10Test.java"/>
736          <exclude name="DoubleAccumulatorTest.java"/>          <exclude name="DoubleAccumulatorTest.java"/>
737          <exclude name="DoubleAdderTest.java"/>          <exclude name="DoubleAdderTest.java"/>
738          <exclude name="LongAccumulatorTest.java"/>          <exclude name="LongAccumulatorTest.java"/>
# Line 677  Line 740 
740          <exclude name="CompletableFutureTest.java"/>          <exclude name="CompletableFutureTest.java"/>
741          <exclude name="SplittableRandomTest.java"/>          <exclude name="SplittableRandomTest.java"/>
742          <exclude name="StampedLockTest.java"/>          <exclude name="StampedLockTest.java"/>
743            <exclude name="SubmissionPublisherTest.java"/>
744        </javac-elements>        </javac-elements>
745      </run-tck-tests>      </run-tck-tests>
746    </target>    </target>
# Line 811  Line 875 
875    
876      <jar destfile="${jsr166x.jar}">      <jar destfile="${jsr166x.jar}">
877        <fileset dir="${build.jsr166x.classes.dir}"/>        <fileset dir="${build.jsr166x.classes.dir}"/>
878          <manifest>
879            <attribute name="Built-By" value="${user.name}"/>
880            <attribute name="Implementation-Vendor" value="JCP JSR-166 Expert Group."/>
881          </manifest>
882      </jar>      </jar>
883    
884    </target>    </target>
# Line 898  Line 966 
966    
967      <jar destfile="${jsr166y.jar}" index="true">      <jar destfile="${jsr166y.jar}" index="true">
968        <fileset dir="${build.jsr166y.classes.dir}"/>        <fileset dir="${build.jsr166y.classes.dir}"/>
969          <manifest>
970            <attribute name="Built-By" value="${user.name}"/>
971            <attribute name="Implementation-Vendor" value="JCP JSR-166 Expert Group."/>
972          </manifest>
973      </jar>      </jar>
974    
975    </target>    </target>
# Line 986  Line 1058 
1058    
1059      <jar destfile="${extra166y.jar}" index="true">      <jar destfile="${extra166y.jar}" index="true">
1060        <fileset dir="${build.extra166y.classes.dir}"/>        <fileset dir="${build.extra166y.classes.dir}"/>
1061          <manifest>
1062            <attribute name="Built-By" value="${user.name}"/>
1063            <attribute name="Implementation-Vendor" value="JCP JSR-166 Expert Group."/>
1064          </manifest>
1065      </jar>      </jar>
1066    
1067    </target>    </target>
# Line 1101  Line 1177 
1177    
1178      <jar destfile="${jsr166e.jar}" index="true">      <jar destfile="${jsr166e.jar}" index="true">
1179        <fileset dir="${build.jsr166e.classes.dir}"/>        <fileset dir="${build.jsr166e.classes.dir}"/>
1180          <manifest>
1181            <attribute name="Built-By" value="${user.name}"/>
1182            <attribute name="Implementation-Vendor" value="JCP JSR-166 Expert Group."/>
1183          </manifest>
1184      </jar>      </jar>
1185    
1186    </target>    </target>

Legend:
Removed from v.1.175  
changed lines
  Added in v.1.182

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