ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/jsr166/jsr166/build.xml
(Generate patch)

Comparing jsr166/build.xml (file contents):
Revision 1.108 by jsr166, Sat Jan 19 23:58:12 2013 UTC vs.
Revision 1.117 by jsr166, Sun Jan 20 07:43:30 2013 UTC

# Line 35 | Line 35
35  
36  
37    <!-- Compilation options -->
38 <  <property name="build.sourcelevel"    value="1.6"/>
38 >  <property name="build.sourcelevel"    value="6"/>
39    <property name="build.debug"          value="true"/>
40    <property name="build.debuglevel"     value="source,lines,vars"/>
41    <property name="build.deprecation"    value="false"/>
# Line 45 | Line 45
45    <property name="build.classes.dir"           location="${build.dir}/classes"/>
46    <property name="build.testcases.dir"         location="${build.dir}/testcases"/>
47    <property name="build.loops.dir"             location="${build.dir}/loops"/>
48  <property name="build.lib.dir"               location="${build.dir}/lib"/>
48    <property name="build.reports.dir"           location="${build.dir}/reports"/>
49  
50 <  <property name="build.4jdk7.dir"              location="${build.dir}/4jdk7"/>
51 <  <property name="build.4jdk7.lib.dir"          location="${build.4jdk7.dir}"/>
52 <  <property name="build.4jdk7.classes.dir"      location="${build.4jdk7.dir}/classes"/>
53 <  <property name="build.4jdk7.tck.classes.dir"  location="${build.4jdk7.dir}/tck/classes"/>
55 <  <property name="build.4jdk7.docs.dir"         location="${build.4jdk7.dir}/docs"/>
50 >  <property name="build.4jdk7.dir"             location="${build.dir}/jsr166-4jdk7"/>
51 >  <property name="build.4jdk7.classes.dir"     location="${build.4jdk7.dir}/classes"/>
52 >  <property name="build.4jdk7.tck.classes.dir" location="${build.4jdk7.dir}/tck-classes"/>
53 >  <property name="build.4jdk7.docs.dir"        location="${build.4jdk7.dir}/docs"/>
54  
55    <property name="build.jsr166x.dir"           location="${build.dir}/jsr166x"/>
58  <property name="build.jsr166xlib.dir"        location="${build.dir}/jsr166xlib"/>
59
56    <property name="build.jsr166y.dir"           location="${build.dir}/jsr166y"/>
61  <property name="build.jsr166ylib.dir"        location="${build.dir}/jsr166ylib"/>
62
57    <property name="build.jsr166e.dir"           location="${build.dir}/jsr166e"/>
64  <property name="build.jsr166elib.dir"        location="${build.dir}/jsr166elib"/>
65
58    <property name="build.extra166y.dir"         location="${build.dir}/extra166y"/>
59 <  <property name="build.extra166ylib.dir"      location="${build.dir}/extra166ylib"/>
59 >
60 >  <property name="build.jsr166x.classes.dir"    location="${build.jsr166x.dir}/classes"/>
61 >  <property name="build.jsr166y.classes.dir"    location="${build.jsr166y.dir}/classes"/>
62 >  <property name="build.jsr166e.classes.dir"    location="${build.jsr166e.dir}/classes"/>
63 >  <property name="build.extra166y.classes.dir"  location="${build.extra166y.dir}/classes"/>
64  
65    <!-- JDK binary locations -->
66    <property name="jdks.home"  location="${user.home}/jdk"/>
# Line 88 | Line 84
84    <defjdklocations v="8"/>
85  
86    <macrodef name="run-tck-tests">
87 <    <attribute name="jvm"/>
88 <    <attribute name="tck.classes"/>
87 >    <attribute name="target"/>
88 >    <attribute name="workdir"/>
89      <attribute name="product.jar" default="${product.jar}"/>
90      <attribute name="jvmflags" default=""/>
91      <sequential>
92 +
93 +    <mkdir dir="@{workdir}/tck-classes"/>
94 +
95 +    <javac srcdir="${tck.src.dir}"
96 +           destdir="@{workdir}/tck-classes"
97 +           debug="${build.debug}"
98 +           debuglevel="${build.debuglevel}"
99 +           deprecation="${build.deprecation}"
100 +           source="6"
101 +           classpath="${junit.jar}"
102 +           bootclasspath="@{product.jar}:${bootclasspath6}"
103 +           includeAntRuntime="false"
104 +           includeJavaRuntime="false"
105 +           executable="${javac@{target}}"
106 +           fork="true">
107 +
108 +      <include name="**/*.java"/>
109 +      <compilerarg value="-XDignore.symbol.file=true"/>
110 +      <compilerarg value="-Xlint:all,-unchecked,-rawtypes,-serial,-deprecation"/>
111 +      <compilerarg line="${build.args}"/>
112 +    </javac>
113 +
114      <java classname="JSR166TestCase"
115 <          jvm="@{jvm}" fork="true">
115 >          failonerror="true"
116 >          jvm="${java@{target}}"
117 >          fork="true">
118          <jvmarg value="-Xbootclasspath/p:@{product.jar}"/>
119          <jvmarg line="@{jvmflags}"/>
120          <classpath>
121            <pathelement location="${junit.jar}"/>
122 <          <pathelement location="@{tck.classes}"/>
122 >          <pathelement location="@{workdir}/tck-classes"/>
123          </classpath>
124      </java>
125 +
126      </sequential>
127    </macrodef>
128  
# Line 119 | Line 140
140    <property name="jsr166ysrc.dir"       location="${topsrc.dir}/jsr166y"/>
141    <property name="jsr166esrc.dir"       location="${topsrc.dir}/jsr166e"/>
142    <property name="extra166ysrc.dir"     location="${topsrc.dir}/extra166y"/>
122  <property name="jdksrc.dir"           location="/home/dl/1.6.0/j2se/martin/j2se/src/share/classes"/>
143  
144    <!-- Distribution locations -->
145 <  <property name="dist.javadocs.dir"          location="${dist.dir}/docs"/>
146 <  <property name="dist.4jdk7.docs.dir"        location="${dist.dir}/jsr166-4jdk7docs"/>
147 <  <property name="dist.jsr166xjavadocs.dir"   location="${dist.dir}/jsr166xdocs"/>
148 <  <property name="dist.jsr166yjavadocs.dir"   location="${dist.dir}/jsr166ydocs"/>
149 <  <property name="dist.jsr166ejavadocs.dir"   location="${dist.dir}/jsr166edocs"/>
150 <  <property name="dist.extra166yjavadocs.dir" location="${dist.dir}/extra166ydocs"/>
145 >  <property name="dist.javadocs.dir"          location="${dist.dir}/jsr166.docs"/>
146 >  <property name="dist.4jdk7.docs.dir"        location="${dist.dir}/jsr166-4jdk7.docs"/>
147 >  <property name="dist.jsr166xjavadocs.dir"   location="${dist.dir}/jsr166x.docs"/>
148 >  <property name="dist.jsr166yjavadocs.dir"   location="${dist.dir}/jsr166y.docs"/>
149 >  <property name="dist.jsr166ejavadocs.dir"   location="${dist.dir}/jsr166e.docs"/>
150 >  <property name="dist.extra166yjavadocs.dir" location="${dist.dir}/extra166y.docs"/>
151  
152    <!-- Jar locations -->
153 <  <property name="product.jar"      location="${build.lib.dir}/jsr166.jar"/>
154 <  <property name="4jdk7product.jar" location="${build.4jdk7.lib.dir}/jsr166-4jdk7.jar"/>
155 <  <property name="jsr166x.jar"      location="${build.jsr166xlib.dir}/jsr166x.jar"/>
156 <  <property name="jsr166y.jar"      location="${build.jsr166ylib.dir}/jsr166y.jar"/>
157 <  <property name="jsr166e.jar"      location="${build.jsr166elib.dir}/jsr166e.jar"/>
158 <  <property name="extra166y.jar"    location="${build.extra166ylib.dir}/extra166y.jar"/>
153 >  <property name="product.jar"      location="${build.dir}/jsr166.jar"/>
154 >  <property name="4jdk7product.jar" location="${build.4jdk7.dir}/jsr166-4jdk7.jar"/>
155 >  <property name="jsr166x.jar"      location="${build.jsr166x.dir}/jsr166x.jar"/>
156 >  <property name="jsr166y.jar"      location="${build.jsr166y.dir}/jsr166y.jar"/>
157 >  <property name="jsr166e.jar"      location="${build.jsr166e.dir}/jsr166e.jar"/>
158 >  <property name="extra166y.jar"    location="${build.extra166y.dir}/extra166y.jar"/>
159    <property name="junit.jar"        location="${lib.dir}/junit.jar"/>
160  
161    <!-- Bootclasspath argument -->
# Line 153 | Line 173
173    <!-- Default jdk api doc location (latest stable release seems best) -->
174    <property name="jdkapidocs.url"       value="${jdkapi7docs.url}"/>
175  
176 +  <!-- Define the "jtreg" task -->
177 +  <!-- See the docs in "jtreg -onlineHelp" -->
178 +  <taskdef name="jtreg" classname="com.sun.javatest.regtest.Main$$Ant"
179 +           classpath="${lib.dir}/jtreg.jar" />
180 +
181    <!-- Test classpath -->
182    <path id="test.classpath">
183      <pathelement location="${build.testcases.dir}"/>
# Line 215 | Line 240
240            depends="compile"
241            description="Builds library jar from compiled sources">
242  
218    <mkdir dir="${build.lib.dir}"/>
219
243      <jar destfile="${product.jar}">
244        <fileset dir="${build.classes.dir}"/>
245      </jar>
# Line 288 | Line 311
311            description="Removes all build products">
312  
313      <delete dir="${build.dir}"/>
291    <delete dir="${build.classes.dir}"/>
292    <delete dir="${build.lib.dir}"/>
314  
315    </target>
316  
# Line 321 | Line 342
342      <mkdir dir="${build.testcases.dir}"/>
343  
344      <javac srcdir="${tck.src.dir}"
345 <          destdir="${build.testcases.dir}"
346 <            debug="${build.debug}"
347 <       debuglevel="${build.debuglevel}"
348 <      deprecation="${build.deprecation}"
349 <           source="${build.sourcelevel}"
350 <             fork="true">
345 >           destdir="${build.testcases.dir}"
346 >           debug="${build.debug}"
347 >           debuglevel="${build.debuglevel}"
348 >           deprecation="${build.deprecation}"
349 >           source="6"
350 >           classpath="${junit.jar}"
351 >           bootclasspath="${product.jar}:${bootclasspath6}"
352 >           includeAntRuntime="false"
353 >           includeJavaRuntime="false"
354 >           executable="${javac8}"
355 >           fork="true">
356  
357 <      <compilerarg value="${bootclasspath.args}"/>
357 >      <include name="**/*.java"/>
358        <compilerarg line="${build.args}"/>
359        <compilerarg value="-XDignore.symbol.file=true"/>
360 <
335 <      <classpath refid="test.classpath"/>
360 >      <compilerarg value="-Xlint:all,-unchecked,-rawtypes,-serial,-deprecation"/>
361  
362      </javac>
363  
364      <javac srcdir="${test.src.dir}"
365 <          destdir="${build.testcases.dir}"
366 <            debug="${build.debug}"
367 <       debuglevel="${build.debuglevel}"
368 <      deprecation="${build.deprecation}"
369 <           source="${build.sourcelevel}"
370 <             fork="true">
365 >           destdir="${build.testcases.dir}"
366 >           debug="${build.debug}"
367 >           debuglevel="${build.debuglevel}"
368 >           deprecation="${build.deprecation}"
369 >           source="6"
370 >           classpath=""
371 >           bootclasspath="${product.jar}:${bootclasspath6}"
372 >           includeAntRuntime="false"
373 >           includeJavaRuntime="false"
374 >           executable="${javac8}"
375 >           fork="true">
376  
377 <      <include name="jsr166/test/**"/>
377 >      <include name="jsr166/test/**/*.java"/>
378  
349      <compilerarg value="${bootclasspath.args}"/>
379        <compilerarg line="${build.args}"/>
380        <compilerarg value="-XDignore.symbol.file=true"/>
381 <
353 <      <classpath refid="test.classpath"/>
381 >      <compilerarg value="-Xlint:all,-unchecked,-rawtypes,-serial,-deprecation"/>
382  
383      </javac>
384  
# Line 367 | Line 395
395        <compilerarg line="${build.args}"/>
396        <compilerarg value="-XDignore.symbol.file=true"/>
397  
370      <classpath refid="test.classpath"/>
371
398      </javac>
399   -->
400  
# Line 388 | Line 414
414            errorProperty="junit.failed"
415          failureProperty="junit.failed"
416                      dir="${build.reports.dir}"
417 +                    jvm="${java8}"
418                     fork="true">
419  
420 <      <jvmarg value="${bootclasspath.args}"/>
420 >      <jvmarg value="-Xbootclasspath/p:${product.jar}"/>
421        <jvmarg value="-server"/>
422        <jvmarg value="-showversion"/>
423  
# Line 546 | Line 573
573  
574      </javac>
575  
576 <    <mkdir dir="${build.4jdk7.lib.dir}"/>
576 >  </target>
577  
578 <    <jar destfile="${4jdk7product.jar}" index="true">
578 >  <target name="4jdk7-jar"
579 >          depends="4jdk7compile"
580 >          description="Builds library jar from compiled sources">
581 >
582 >    <jar destfile="${4jdk7product.jar}">
583        <fileset dir="${build.4jdk7.classes.dir}"/>
584      </jar>
585  
555    <mkdir dir="${build.4jdk7.tck.classes.dir}"/>
556
557    <javac srcdir="${tck.src.dir}"
558           destdir="${build.4jdk7.tck.classes.dir}"
559           debug="${build.debug}"
560           debuglevel="${build.debuglevel}"
561           deprecation="${build.deprecation}"
562           source="6"
563           classpath="${junit.jar}"
564           bootclasspath="${4jdk7product.jar}:${bootclasspath6}"
565           includeAntRuntime="false"
566           includeJavaRuntime="false"
567           executable="${javac7}"
568           fork="true">
569
570      <include name="**/*.java"/>
571      <compilerarg line="${build.args}"/>
572      <compilerarg value="-XDignore.symbol.file=true"/>
573      <compilerarg value="-Xlint:all,-unchecked,-rawtypes,-serial,-deprecation"/>
574
575    </javac>
576
586    </target>
587  
588  
589    <target name="4jdk7-test-tck"
590 <          depends="4jdk7compile"
590 >          depends="4jdk7-jar"
591            description="Runs tck tests for jsr166-4jdk7 directly">
592 +
593      <run-tck-tests
594 <      jvm="${java7}"
595 <      tck.classes="${build.4jdk7.tck.classes.dir}"
594 >      target="7"
595 >      workdir="${build.4jdk7.dir}"
596        product.jar="${4jdk7product.jar}"/>
597    </target>
598  
# Line 615 | Line 625
625      </junit>
626    </target>
627  
628 +  <target name="4jdk7-test-jtreg"
629 +          depends="4jdk7compile"
630 +          description="Runs jtreg tests for jsr166-4jdk7 using the jtreg ant task">
631 +    <delete dir="${build.4jdk7.dir}/JTwork"   quiet="true"/>
632 +    <delete dir="${build.4jdk7.dir}/JTreport" quiet="true"/>
633 +    <mkdir dir="${build.4jdk7.dir}/JTwork/scratch"/>
634 +    <mkdir dir="${build.4jdk7.dir}/JTreport"/>
635 +    <jtreg dir="${jtreg.src.dir}"
636 +           jdk="${jdk7.home}"
637 +           workDir="${build.4jdk7.dir}/JTwork"
638 +           reportDir="${build.4jdk7.dir}/JTreport">
639 +
640 +      <arg value="-Xbootclasspath/p:${4jdk7product.jar}"/>
641 +      <arg value="-agentvm"/>
642 +      <arg value="-v:nopass,fail"/>
643 +      <arg value="-vmoptions:-esa -ea"/>
644 +      <arg value="-automatic"/>
645 +      <arg value="-k:!ignore"/>
646 +    </jtreg>
647 +  </target>
648 +
649 +
650 +  <target name="4jdk7-test"
651 +          depends="4jdk7-test-tck, 4jdk7-test-jtreg"
652 +          description="Runs tck and jtreg tests for jsr166-4jdk7">
653 +  </target>
654 +
655  
656    <target name="4jdk7docs"
657            description="Builds javadocs for src/jdk7 to dist dir">
# Line 645 | Line 682
682  
683  
684    <target name="4jdk7clean"
685 <          description="Removes all build products">
685 >          description="Removes all 4jdk7 build products">
686  
687      <delete dir="${build.4jdk7.dir}"/>
688  
# Line 665 | Line 702
702  
703    </target>
704  
668  <!-- jsr166x -->
705  
706 +  <!-- jsr166x -->
707  
708    <target name="jsr166xcompile"
709            depends="configure-compiler"
710            description="Compiles jsr166x sources to build dir">
711  
712 <    <mkdir dir="${build.jsr166x.dir}"/>
712 >    <mkdir dir="${build.jsr166x.classes.dir}"/>
713  
714      <javac srcdir="${topsrc.dir}"
715 <           destdir="${build.jsr166x.dir}"
715 >           destdir="${build.jsr166x.classes.dir}"
716             debug="${build.debug}"
717             debuglevel="${build.debuglevel}"
718             deprecation="${build.deprecation}"
# Line 702 | Line 739
739            depends="jsr166xcompile"
740            description="Builds library jar from compiled sources">
741  
705    <mkdir dir="${build.jsr166xlib.dir}"/>
706
742      <jar destfile="${jsr166x.jar}">
743 <      <fileset dir="${build.jsr166x.dir}"/>
743 >      <fileset dir="${build.jsr166x.classes.dir}"/>
744      </jar>
745  
746    </target>
# Line 725 | Line 760
760               bootclasspath="${bootclasspath6}"
761               sourcepath="${topsrc.dir}:${jdk6src.dir}"
762               executable="${javadoc7}"
763 <             additionalparam="-XDignore.symbol.file=true" />
763 >             additionalparam="-XDignore.symbol.file=true"/>
764  
765    </target>
766  
# Line 737 | Line 772
772  
773  
774    <target name="jsr166xclean"
775 <          description="Removes all build products">
775 >          description="Removes all jsr166x build products">
776  
777      <delete dir="${build.jsr166x.dir}"/>
743    <delete dir="${build.jsr166xlib.dir}"/>
778  
779    </target>
780  
# Line 766 | Line 800
800            depends="configure-compiler"
801            description="Compiles jsr166y sources">
802  
803 <    <mkdir dir="${build.jsr166y.dir}"/>
803 >    <mkdir dir="${build.jsr166y.classes.dir}"/>
804  
805      <javac srcdir="${topsrc.dir}"
806 <           destdir="${build.jsr166y.dir}"
806 >           destdir="${build.jsr166y.classes.dir}"
807             debug="${build.debug}"
808             debuglevel="${build.debuglevel}"
809             deprecation="${build.deprecation}"
# Line 793 | Line 827
827            depends="jsr166ycompile"
828            description="Builds library jar from compiled sources">
829  
796    <mkdir dir="${build.jsr166ylib.dir}"/>
797
830      <jar destfile="${jsr166y.jar}" index="true">
831 <      <fileset dir="${build.jsr166y.dir}"/>
831 >      <fileset dir="${build.jsr166y.classes.dir}"/>
832      </jar>
833  
834    </target>
# Line 816 | Line 848
848               bootclasspath="${bootclasspath6}"
849               sourcepath="${topsrc.dir}:${jdk6src.dir}"
850               executable="${javadoc7}"
851 <             additionalparam="-XDignore.symbol.file=true" />
851 >             additionalparam="-XDignore.symbol.file=true"/>
852  
853    </target>
854  
# Line 828 | Line 860
860  
861  
862    <target name="jsr166yclean"
863 <          description="Removes all build products">
863 >          description="Removes all jsr166y build products">
864  
865      <delete dir="${build.jsr166y.dir}"/>
834    <delete dir="${build.jsr166ylib.dir}"/>
866  
867    </target>
868  
# Line 857 | Line 888
888            depends="configure-compiler, jsr166yjar"
889            description="Compiles extra166y sources">
890  
891 <    <mkdir dir="${build.extra166y.dir}"/>
891 >    <mkdir dir="${build.extra166y.classes.dir}"/>
892  
893      <javac srcdir="${topsrc.dir}"
894 <           destdir="${build.extra166y.dir}"
894 >           destdir="${build.extra166y.classes.dir}"
895             debug="${build.debug}"
896             debuglevel="${build.debuglevel}"
897             deprecation="${build.deprecation}"
# Line 887 | Line 918
918            depends="extra166ycompile"
919            description="Builds library jar from compiled sources">
920  
890    <mkdir dir="${build.extra166ylib.dir}"/>
891
921      <jar destfile="${extra166y.jar}" index="true">
922 <      <fileset dir="${build.extra166y.dir}"/>
922 >      <fileset dir="${build.extra166y.classes.dir}"/>
923      </jar>
924  
925    </target>
# Line 910 | Line 939
939               bootclasspath="${bootclasspath6}"
940               sourcepath="${topsrc.dir}:${jdk6src.dir}"
941               executable="${javadoc7}"
942 <             additionalparam="-XDignore.symbol.file=true" />
942 >             additionalparam="-XDignore.symbol.file=true"/>
943  
944    </target>
945  
# Line 922 | Line 951
951  
952  
953    <target name="extra166yclean"
954 <          description="Removes all build products">
954 >          description="Removes all extra166y build products">
955  
956      <delete dir="${build.extra166y.dir}"/>
928    <delete dir="${build.extra166ylib.dir}"/>
957  
958    </target>
959  
# Line 949 | Line 977
977            depends="configure-compiler"
978            description="Compiles jsr166e sources">
979  
980 <    <mkdir dir="${build.jsr166e.dir}"/>
980 >    <mkdir dir="${build.jsr166e.classes.dir}"/>
981  
982      <javac srcdir="${topsrc.dir}"
983 <           destdir="${build.jsr166e.dir}"
983 >           destdir="${build.jsr166e.classes.dir}"
984             debug="${build.debug}"
985             debuglevel="${build.debuglevel}"
986             deprecation="${build.deprecation}"
# Line 978 | Line 1006
1006            depends="jsr166ecompile"
1007            description="Builds library jar from compiled sources">
1008  
981    <mkdir dir="${build.jsr166elib.dir}"/>
982
1009      <jar destfile="${jsr166e.jar}" index="true">
1010 <      <fileset dir="${build.jsr166e.dir}"/>
1010 >      <fileset dir="${build.jsr166e.classes.dir}"/>
1011      </jar>
1012  
1013    </target>
# Line 1013 | Line 1039
1039  
1040  
1041    <target name="jsr166eclean"
1042 <          description="Removes all build products">
1042 >          description="Removes all jsr166e build products">
1043  
1044      <delete dir="${build.jsr166e.dir}"/>
1019    <delete dir="${build.jsr166elib.dir}"/>
1045  
1046    </target>
1047  

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines