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

Diff of /jsr166/build.xml

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

revision 1.200 by jsr166, Sat Mar 26 06:22:49 2016 UTC revision 1.218 by jsr166, Sat Sep 10 04:06:10 2016 UTC
# Line 7  Line 7 
7    
8    Usage: ant [target]    Usage: ant [target]
9    
10      See http://gee.cs.oswego.edu/dl/concurrency-interest/index.html for
11      more details.
12    
13    User-specific settings are read from user.properties.    User-specific settings are read from user.properties.
14    See user.properties.sample for an explanation of some useful settings.    See user.properties.sample for an explanation of some useful settings.
15    
# Line 30  Line 33 
33    ant -Djdk$N.home=... -Djdk$N.src.home=...    ant -Djdk$N.home=... -Djdk$N.src.home=...
34    for $N in 6 7 8 9 ...    for $N in 6 7 8 9 ...
35    
36    As of 2015-09, there is incomplete hacky support for jigsaw    As of 2016-03, the sources in src/main are for jdk9+ only.  The "docs"
37    Build for jigsaw using something like:    target is currently broken.
   ant -Djdk9.home="$HOME/jdk/jigsaw" -Djdk9.src.home="$HOME/jdk/src/jigsaw" clean test dist  
   "docs" target is still broken.  
38  ------------------------------------------------------------------------------  ------------------------------------------------------------------------------
39    </description>    </description>
40    
41    <!-- Display main targets by running 'ant -projecthelp' -->    <!-- Run 'ant -projecthelp' (default target) -->
42    <target name="usage">    <target name="usage">
43      <java classname="org.apache.tools.ant.Main">      <java classname="org.apache.tools.ant.Main">
44        <arg value="-projecthelp" />        <arg value="-projecthelp" />
# Line 185  Line 186 
186    <property name="java6.docroot.url"      value="http://docs.oracle.com/javase/6/docs"/>    <property name="java6.docroot.url"      value="http://docs.oracle.com/javase/6/docs"/>
187    <property name="java7.docroot.url"      value="http://docs.oracle.com/javase/7/docs"/>    <property name="java7.docroot.url"      value="http://docs.oracle.com/javase/7/docs"/>
188    <property name="java8.docroot.url"      value="http://docs.oracle.com/javase/8/docs"/>    <property name="java8.docroot.url"      value="http://docs.oracle.com/javase/8/docs"/>
189    <!-- The expected canonical location does not yet exist as of 2016-03 -->    <!-- The expected canonical location does not yet exist as of 2016-04 -->
190    <!-- <property name="java9.docroot.url" value="http://docs.oracle.com/javase/9/docs"/> -->    <!-- <property name="java9.docroot.url" value="http://docs.oracle.com/javase/9/docs"/> -->
191    <property name="java9.docroot.url"      value="http://download.java.net/jdk9/docs"/>    <property name="java9.docroot.url"      value="http://download.java.net/java/jdk9/docs"/>
192    <!-- Default jdk doc location (latest stable release seems best) -->    <!-- Default jdk doc location (latest stable release seems best) -->
193    <property name="java.docroot.url"       value="${java8.docroot.url}"/>    <property name="java.docroot.url"       value="${java8.docroot.url}"/>
194    
# Line 219  Line 220 
220      <attribute name="compile-target" default="@{target}"/>      <attribute name="compile-target" default="@{target}"/>
221      <attribute name="workdir"/>      <attribute name="workdir"/>
222      <attribute name="classes"/>      <attribute name="classes"/>
223      <attribute name="jvmflags" default="-ea -esa -Djsr166.testImplementationDetails=true"/>      <!--
224            <attribute name="jvmflags" default="-XX:+UseParallelGC -XX:-UseBiasedLocking -ea -esa -Djsr166.testImplementationDetails=true"/>
225        -->
226            <attribute name="jvmflags" default="-ea -esa -Djsr166.testImplementationDetails=true"/>
227      <element name="javac-elements" optional="true"/>      <element name="javac-elements" optional="true"/>
228    
229      <sequential>      <sequential>
# Line 248  Line 252 
252        <compilerarg value="-XDignore.symbol.file=true"/>        <compilerarg value="-XDignore.symbol.file=true"/>
253        <compilerarg value="-Xlint:all,-unchecked,-rawtypes,-serial,-deprecation,-try"/>        <compilerarg value="-Xlint:all,-unchecked,-rawtypes,-serial,-deprecation,-try"/>
254        <compilerarg value="-Xbootclasspath/p:@{classes}" unless:set="modules"/>        <compilerarg value="-Xbootclasspath/p:@{classes}" unless:set="modules"/>
255        <compilerarg value="-Xpatch:${build.classes.dir}" if:set="modules"/>        <compilerarg line="--patch-module java.base=${build.classes.dir}/java.base" if:set="modules"/>
256        <compilerarg line="${build.args}"/>        <compilerarg line="${build.args}"/>
257        <javac-elements/>        <javac-elements/>
258    
# Line 259  Line 263 
263            jvm="${java@{target}}"            jvm="${java@{target}}"
264            fork="true">            fork="true">
265          <jvmarg value="-Xbootclasspath/p:@{classes}" unless:set="modules"/>          <jvmarg value="-Xbootclasspath/p:@{classes}" unless:set="modules"/>
266          <jvmarg value="-Xpatch:${build.classes.dir}" if:set="modules"/>          <jvmarg line="--patch-module java.base=${build.classes.dir}/java.base" if:set="modules"/>
267          <jvmarg line="@{jvmflags}"/>          <jvmarg line="@{jvmflags}"/>
268            <!-- ant -Dvmoptions="-Xmx8m" -Djsr166.tckTestClass=CompletableFutureTest tck -->
269            <jvmarg line="${vmoptions}" if:set="vmoptions"/>
270    
271          <!-- ant -Djava.util.concurrent.ForkJoinPool.common.parallelism=1 tck -->          <!-- ant -Djava.util.concurrent.ForkJoinPool.common.parallelism=1 tck -->
272          <syspropertyset id="system-properties-used-by-tck">          <syspropertyset id="system-properties-used-by-tck">
273            <propertyref prefix="java.util.concurrent.ForkJoinPool"/>            <propertyref prefix="java.util.concurrent.ForkJoinPool"/>
274            <propertyref prefix="jsr166."/>            <propertyref prefix="jsr166."/>
# Line 323  Line 329 
329    
330      <delete dir="@{workdir}/JTwork"   quiet="true"/>      <delete dir="@{workdir}/JTwork"   quiet="true"/>
331      <delete dir="@{workdir}/JTreport" quiet="true"/>      <delete dir="@{workdir}/JTreport" quiet="true"/>
     <mkdir dir="@{workdir}/JTwork/scratch"/>  
     <!-- workaround for https://bugs.openjdk.java.net/browse/CODETOOLS-7901571 -->  
     <mkdir dir="@{workdir}/JTreport/html"/>  
     <mkdir dir="@{workdir}/JTreport/text"/>  
332      <jtreg dir="${jtreg@{target}.src.dir}"      <jtreg dir="${jtreg@{target}.src.dir}"
333             jdk="${jdk@{target}.home}"             jdk="${jdk@{target}.home}"
334             workDir="@{workdir}/JTwork"             workDir="@{workdir}/JTwork"
335             reportDir="@{workdir}/JTreport">             reportDir="@{workdir}/JTreport">
336        <patternset refid="jdk@{target}.jtreg.tests"/>        <patternset refid="jdk@{target}.jtreg.tests"/>
337        <arg value="-Xbootclasspath/p:@{classes}" unless:set="modules"/>        <arg value="-Xbootclasspath/p:@{classes}" unless:set="modules"/>
338        <arg value="-Xpatch:${build.classes.dir}" if:set="modules"/>        <arg value="-vmoptions:--patch-module java.base=${build.classes.dir}/java.base" if:set="modules"/>
339        <arg value="-agentvm"/>        <arg value="-agentvm"/>
340        <arg value="-verbose:${jtreg.verbose}"/>        <arg value="-verbose:${jtreg.verbose}"/>
341        <arg value="-vmoptions:-esa -ea"/>        <arg value="-vmoptions:-esa -ea"/>
# Line 403  Line 405 
405        <compilerarg line="${build.args}"/>        <compilerarg line="${build.args}"/>
406    
407      </javac>      </javac>
   
     <!-- We need jdk9's Contended annotation, but at compile time only -->  
     <delete file="${destdir}/jdk/internal/vm/annotation/Contended.class"/>  
408    </target>    </target>
409    
410    
411    <target name="jar"    <target name="jar"
412            depends="compile"            depends="compile"
413            description="Builds library jar from compiled sources">            description="Builds library jar for src/main from compiled sources">
414        <local name="subdir"/>
415        <available property="subdir" file="${build.classes.dir}/java.base" type="dir" value="/java.base"/>
416      <jar destfile="${product.jar}">      <jar destfile="${product.jar}">
417        <fileset dir="${build.classes.dir}"/>        <fileset dir="${build.classes.dir}${subdir}"/>
418        <manifest>        <manifest>
419          <attribute name="Built-By" value="${user.name}"/>          <attribute name="Built-By" value="${user.name}"/>
420          <attribute name="Implementation-Vendor" value="JCP JSR-166 Expert Group."/>          <attribute name="Implementation-Vendor" value="JCP JSR-166 Expert Group."/>
# Line 432  Line 432 
432      <!-- the packagenames="none" hack below prevents scanning the -->      <!-- the packagenames="none" hack below prevents scanning the -->
433      <!-- sourcepath for packages -->      <!-- sourcepath for packages -->
434    
435    <!--  TODO: sourcepath="${src.dir}:${jdk9.src.dir}" -->
436    <!--  TODO: sourcepath="${src.dir}:${jdk9.src.dir}:${jdk9.src.home}/jdk/src/java.logging/share/classes" -->
437      <javadoc destdir="${docs.dir}"      <javadoc destdir="${docs.dir}"
438               packagenames="none"               packagenames="none"
439               link="${java9.api.url}"               link="${java9.api.url}"
440               overview="${src.dir}/intro.html"               overview="${src.dir}/intro.html"
441               access="${build.javadoc.access}"               access="${build.javadoc.access}"
442               sourcepath="${src.dir}:${jdk9.src.dir}"               sourcepath="${src.dir}"
443               classpath=""               classpath=""
444               executable="${javadoc9}">               executable="${javadoc9}">
445        <fileset dir="${src.dir}" defaultexcludes="yes">        <fileset dir="${src.dir}" defaultexcludes="yes">
# Line 446  Line 448 
448        <arg line="-Xdocrootparent ${java9.docroot.url}"/>        <arg line="-Xdocrootparent ${java9.docroot.url}"/>
449        <arg line="-Xmaxerrs 1000 -Xmaxwarns 1000"/>        <arg line="-Xmaxerrs 1000 -Xmaxwarns 1000"/>
450        <arg value="-XDignore.symbol.file=true"/>        <arg value="-XDignore.symbol.file=true"/>
451  <!--  TODO     <arg value="-Xmodule:java.base"/> -->        <arg value="-Xmodule:java.base"/>
452        <arg value="-tag"/>        <arg value="-tag"/>
453        <arg value="${javadoc.jls.option}"/>        <arg value="${javadoc.jls.option}"/>
454        <arg value="-tag"/>        <arg value="-tag"/>
# Line 520  Line 522 
522    
523    <target name="tck"    <target name="tck"
524            depends="jar"            depends="jar"
525            description="Runs tck tests for main directly">            description="Runs tck tests for src/main directly">
526    
527      <run-tck-tests      <run-tck-tests
528        target="${build.main.java.version}"        target="${build.main.java.version}"
# Line 529  Line 531 
531    </target>    </target>
532    
533    <target name="tck-parallelism-1"    <target name="tck-parallelism-1"
534            description="Runs tck with given common pool parallelism">            description="Runs tck with common pool parallelism 1">
535      <antcall target="tck">      <antcall target="tck">
536        <param name="java.util.concurrent.ForkJoinPool.common.parallelism" value="1"/>        <param name="java.util.concurrent.ForkJoinPool.common.parallelism" value="1"/>
537      </antcall>      </antcall>
538    </target>    </target>
539    
540    <target name="tck-parallelism-0"    <target name="tck-parallelism-0"
541            description="Runs tck with given common pool parallelism">            description="Runs tck with common pool parallelism 0">
542      <antcall target="tck">      <antcall target="tck">
543        <param name="java.util.concurrent.ForkJoinPool.common.parallelism" value="0"/>        <param name="java.util.concurrent.ForkJoinPool.common.parallelism" value="0"/>
544      </antcall>      </antcall>
545    </target>    </target>
546    
547      <target name="tck-security-manager"
548              description="Runs tck with a security manager">
549        <antcall target="tck">
550          <param name="jsr166.useSecurityManager" value="true"/>
551        </antcall>
552      </target>
553    
554    <target name="jtreg"    <target name="jtreg"
555            depends="jar"            depends="jar"
556            description="Runs jtreg tests for main using the jtreg ant task">            description="Runs jtreg tests for src/main using the jtreg ant task">
557      <run-jtreg-tests      <run-jtreg-tests
558         target="${build.main.java.version}"         target="${build.main.java.version}"
559         workdir="${build.dir}"         workdir="${build.dir}"
# Line 552  Line 561 
561    </target>    </target>
562    
563    <target name="test"    <target name="test"
564            depends="tck, tck-parallelism-1, jtreg"            depends="tck, tck-parallelism-1, tck-parallelism-0, jtreg"
565            description="Runs tck and jtreg tests for main">            description="Runs tck and jtreg tests for src/main">
566    </target>    </target>
567    
568    <target name="jtreg8" description="Runs jtreg tests with jdk8">  <!--   <target name="jtreg8" description="Runs jtreg tests with jdk8"> -->
569    
570      <antcall target="jtreg">  <!--     <antcall target="jtreg"> -->
571        <param name="build.main.java.version" value="8"/>  <!--       <param name="build.main.java.version" value="8"/> -->
572        <param name="build.main.javac" value="${javac8}"/>  <!--       <param name="build.main.javac" value="${javac8}"/> -->
573      </antcall>  <!--     </antcall> -->
574    
575    </target>  <!--   </target> -->
576    
577    <target name="test89"  <!--   <target name="test89" -->
578            description="Runs tck and jtreg tests for main for multiple java versions">  <!--           description="Runs tck and jtreg tests for src/main for multiple java versions"> -->
579    
580      <antcall target="clean"/>  <!--     <antcall target="clean"/> -->
581      <antcall target="test">  <!--     <antcall target="test"> -->
582        <param name="build.main.java.version" value="8"/>  <!--       <param name="build.main.java.version" value="8"/> -->
583        <param name="build.main.javac" value="${javac8}"/>  <!--       <param name="build.main.javac" value="${javac8}"/> -->
584      </antcall>  <!--     </antcall> -->
585    
586      <antcall target="clean"/>  <!--     <antcall target="clean"/> -->
587      <antcall target="test">  <!--     <antcall target="test"> -->
588        <param name="build.main.java.version" value="9"/>  <!--       <param name="build.main.java.version" value="9"/> -->
589        <param name="build.main.javac" value="${javac9}"/>  <!--       <param name="build.main.javac" value="${javac9}"/> -->
590      </antcall>  <!--     </antcall> -->
591    
592    </target>  <!--   </target> -->
593    
594    
595    
# Line 610  Line 619 
619    <!-- Various demos and test programs -->    <!-- Various demos and test programs -->
620    
621    
622    <target name="loops" depends="configure-compiler"    <!-- description="Benchmark from Doug Lea's AQS paper" -->
623            description="Benchmark from Doug Lea's AQS paper">    <target name="loops" depends="configure-compiler">
624    
625      <mkdir dir="${build.loops.dir}"/>      <mkdir dir="${build.loops.dir}"/>
626    
# Line 787  Line 796 
796               access="${build.javadoc.access}"               access="${build.javadoc.access}"
797               sourcepath="${4jdk8src.dir}:${jdk8.src.dir}"               sourcepath="${4jdk8src.dir}:${jdk8.src.dir}"
798               classpath=""               classpath=""
799               executable="${javadoc8}">               executable="${javadoc8}"
800                 failonerror = "true">
801        <fileset dir="${4jdk8src.dir}" defaultexcludes="yes">        <fileset dir="${4jdk8src.dir}" defaultexcludes="yes">
802          <include name="**/*.java"/>          <include name="**/*.java"/>
803        </fileset>        </fileset>
# Line 935  Line 945 
945    </target>    </target>
946    
947    
948      <!-- Runs tck tests for jsr166-4jdk7 via junit task (dead experiment) -->
949    <target name="4jdk7-tck-junit"    <target name="4jdk7-tck-junit"
950            depends="4jdk7compile"            depends="4jdk7compile">
           description="Runs tck tests for jsr166-4jdk7 via junit task (experimental)">  
951    
952      <junit printsummary="true"      <junit printsummary="true"
953             showoutput="true"             showoutput="true"
# Line 992  Line 1002 
1002               access="${build.javadoc.access}"               access="${build.javadoc.access}"
1003               sourcepath="${4jdk7src.dir}:${jdk7.src.dir}"               sourcepath="${4jdk7src.dir}:${jdk7.src.dir}"
1004               classpath=""               classpath=""
1005               executable="${javadoc7}">               executable="${javadoc7}"
1006                 failonerror = "true">
1007        <fileset dir="${4jdk7src.dir}" defaultexcludes="yes">        <fileset dir="${4jdk7src.dir}" defaultexcludes="yes">
1008          <include name="**/*.java"/>          <include name="**/*.java"/>
1009        </fileset>        </fileset>
# Line 1087  Line 1098 
1098               sourcepath="${topsrc.dir}:${jdk6.src.dir}"               sourcepath="${topsrc.dir}:${jdk6.src.dir}"
1099               bootclasspath="${bootclasspath6}"               bootclasspath="${bootclasspath6}"
1100               source="5"               source="5"
1101               executable="${javadoc7}">               executable="${javadoc7}"
1102                 failonerror = "true">
1103        <arg line="-Xdocrootparent ${java.docroot.url}"/>        <arg line="-Xdocrootparent ${java.docroot.url}"/>
1104        <arg value="-XDignore.symbol.file=true"/>        <arg value="-XDignore.symbol.file=true"/>
1105    
# Line 1179  Line 1191 
1191               sourcepath="${topsrc.dir}:${jdk6.src.dir}"               sourcepath="${topsrc.dir}:${jdk6.src.dir}"
1192               bootclasspath="${bootclasspath6}"               bootclasspath="${bootclasspath6}"
1193               source="6"               source="6"
1194               executable="${javadoc7}">               executable="${javadoc7}"
1195                 failonerror = "true">
1196        <arg line="-Xdocrootparent ${java.docroot.url}"/>        <arg line="-Xdocrootparent ${java.docroot.url}"/>
1197        <arg value="-XDignore.symbol.file=true"/>        <arg value="-XDignore.symbol.file=true"/>
1198    
# Line 1392  Line 1405 
1405               access="${build.javadoc.access}"               access="${build.javadoc.access}"
1406               sourcepath="${topsrc.dir}:${jdk6.src.dir}"               sourcepath="${topsrc.dir}:${jdk6.src.dir}"
1407               source="${build.jsr166e.java.version}"               source="${build.jsr166e.java.version}"
1408               executable="${javadoc7}">               executable="${javadoc7}"
1409                 failonerror = "true">
1410        <arg line="-Xdocrootparent ${java.docroot.url}"/>        <arg line="-Xdocrootparent ${java.docroot.url}"/>
1411        <arg value="-XDignore.symbol.file=true"/>        <arg value="-XDignore.symbol.file=true"/>
1412    

Legend:
Removed from v.1.200  
changed lines
  Added in v.1.218

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