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.90 by dl, Fri Jul 15 13:21:07 2011 UTC vs.
Revision 1.97 by jsr166, Tue Jan 15 01:15:02 2013 UTC

# Line 34 | Line 34
34    <property name="build.lib.dir"               location="${build.dir}/lib"/>
35    <property name="build.javadocs.dir"          location="${build.dir}/javadocs"/>
36    <property name="build.reports.dir"           location="${build.dir}/reports"/>
37 +
38 +  <property name="build.jdk7.dir"              location="${build.dir}/jdk7"/>
39 +  <property name="build.jdk7.lib.dir"          location="${build.jdk7.dir}"/>
40 +  <property name="build.jdk7.classes.dir"      location="${build.jdk7.dir}/classes"/>
41 +  <property name="build.jdk7.tck.classes.dir"  location="${build.jdk7.dir}/tck/classes"/>
42 +  <property name="build.jdk7.docs.dir"         location="${build.jdk7.dir}/docs"/>
43 +
44    <property name="build.jsr166x.dir"           location="${build.dir}/jsr166x"/>
45    <property name="build.jsr166xlib.dir"        location="${build.dir}/jsr166xlib"/>
46    <property name="build.jsr166xjavadocs.dir"   location="${build.dir}/jsr166xjavadocs"/>
# Line 50 | Line 57
57    <property name="build.extra166ylib.dir"      location="${build.dir}/extra166ylib"/>
58    <property name="build.extra166yjavadocs.dir" location="${build.dir}/extra166yjavadocs"/>
59  
60 +  <!-- JDK binary locations -->
61 +  <property name="jdks.home"  location="${user.home}/jdk"/>
62 +
63 +  <macrodef name="defjdklocations">
64 +    <attribute name="v"/>
65 +    <sequential>
66 +    <property name="jdk@{v}.home"  location="${jdks.home}/jdk@{v}"/>
67 +    <property name="java@{v}"      location="${jdk@{v}.home}/bin/java"/>
68 +    <property name="javac@{v}"     location="${jdk@{v}.home}/bin/javac"/>
69 +    <property name="javadoc@{v}"   location="${jdk@{v}.home}/bin/javadoc"/>
70 +    <property name="bootdir@{v}"   location="${jdk@{v}.home}/jre/lib"/>
71 +    <property name="bootclasspath@{v}"
72 +     value="${bootdir@{v}}/resources.jar:${bootdir@{v}}/rt.jar:${bootdir@{v}}/jsse.jar:${bootdir@{v}}/jce.jar:${bootdir@{v}}/:${bootdir@{v}}/charsets.jar"/>
73 +    </sequential>
74 +  </macrodef>
75 +
76 +  <defjdklocations v="6"/>
77 +  <defjdklocations v="7"/>
78 +  <defjdklocations v="8"/>
79 +
80 +  <macrodef name="run-tck-tests">
81 +    <attribute name="jvm"/>
82 +    <attribute name="tck.classes"/>
83 +    <attribute name="product.jar" default="${product.jar}"/>
84 +    <attribute name="jvmflags" default=""/>
85 +    <sequential>
86 +    <java classname="JSR166TestCase"
87 +          jvm="@{jvm}" fork="true">
88 +        <jvmarg value="-Xbootclasspath/p:@{product.jar}"/>
89 +        <jvmarg line="@{jvmflags}"/>
90 +        <classpath>
91 +          <pathelement location="${junit.jar}"/>
92 +          <pathelement location="@{tck.classes}"/>
93 +        </classpath>
94 +    </java>
95 +    </sequential>
96 +  </macrodef>
97 +
98    <!-- Source locations -->
99    <property name="src.dir"              location="${basedir}/src/main"/>
100    <property name="test.src.dir"         location="${basedir}/src/test"/>
# Line 59 | Line 104
104    <property name="lib.dir"              location="${basedir}/lib"/>
105    <property name="dist.dir"             location="${basedir}/dist"/>
106    <property name="topsrc.dir"           location="${basedir}/src"/>
107 <  <property name="jsr166xsrc.dir"       location="${basedir}/src/jsr166x"/>
108 <  <property name="jsr166ysrc.dir"       location="${basedir}/src/jsr166y"/>
109 <  <property name="jsr166esrc.dir"       location="${basedir}/src/jsr166e"/>
110 <  <property name="extra166ysrc.dir"     location="${basedir}/src/extra166y"/>
107 >  <property name="jdk7src.dir"          location="${topsrc.dir}/jdk7"/>
108 >  <property name="jsr166xsrc.dir"       location="${topsrc.dir}/jsr166x"/>
109 >  <property name="jsr166ysrc.dir"       location="${topsrc.dir}/jsr166y"/>
110 >  <property name="jsr166esrc.dir"       location="${topsrc.dir}/jsr166e"/>
111 >  <property name="extra166ysrc.dir"     location="${topsrc.dir}/extra166y"/>
112    <property name="jdksrc.dir"           location="/home/dl/1.6.0/j2se/martin/j2se/src/share/classes"/>
113 +
114    <!-- Distribution locations -->
115    <property name="dist.javadocs.dir"           location="${dist.dir}/docs"/>
116 +  <property name="dist.jdk7.docs.dir"          location="${dist.dir}/jsr166-jdk7docs"/>
117    <property name="dist.jsr166xjavadocs.dir"    location="${dist.dir}/jsr166xdocs"/>
118    <property name="dist.jsr166yjavadocs.dir"    location="${dist.dir}/jsr166ydocs"/>
119    <property name="dist.jsr166ejavadocs.dir"    location="${dist.dir}/jsr166edocs"/>
# Line 73 | Line 121
121  
122    <!-- Jar locations -->
123    <property name="product.jar"          location="${build.lib.dir}/jsr166.jar"/>
124 +  <property name="jdk7product.jar"      location="${build.jdk7.lib.dir}/jsr166-jdk7.jar"/>
125    <property name="jsr166xproduct.jar"   location="${build.jsr166xlib.dir}/jsr166x.jar"/>
126    <property name="jsr166yproduct.jar"   location="${build.jsr166ylib.dir}/jsr166y.jar"/>
127    <property name="jsr166eproduct.jar"   location="${build.jsr166elib.dir}/jsr166e.jar"/>
# Line 82 | Line 131
131    <!-- Bootclasspath argument -->
132    <property name="bootclasspath.args"   value="-Xbootclasspath/p:${product.jar}"/>
133  
134 +  <!-- Canonical location of jdk API docs, to use with javadoc link attribute -->
135 +  <property name="jdkapi5docs.url"      value="http://docs.oracle.com/javase/1.5.0/docs/api/"/>
136 +  <property name="jdkapi6docs.url"      value="http://docs.oracle.com/javase/6/docs/api/"/>
137 +  <property name="jdkapi7docs.url"      value="http://docs.oracle.com/javase/7/docs/api/"/>
138 +
139 +  <property name="jdkapi8docs.url"      value="http://download.java.net/jdk8/docs/api/"/>
140 +  <!-- The below does not yet exist as of 2012-11 -->
141 +  <!-- <property name="jdkapi8docs.url" value="http://docs.oracle.com/javase/8/docs/api/"/> -->
142 +  <property name="jdkapidocs.url"       value="${jdkapi7docs.url}"/>
143 +
144    <!-- Test classpath -->
145    <path id="test.classpath">
146      <pathelement location="${build.testcases.dir}"/>
# Line 160 | Line 219
219  
220      <javadoc destdir="${build.javadocs.dir}"
221               packagenames="none"
222 <             link="http://download.oracle.com/javase/7/docs/api/"
222 >             link="${jdkapidocs.url}"
223               overview="${src.dir}/intro.html"
224               sourcepath="${src.dir}:${jdksrc.dir}"
225               additionalparam="-XDignore.symbol.file=true" >
226        <fileset dir="${src.dir}" defaultexcludes="yes">
227 <      <include name="**/*.java"/>
227 >        <include name="**/*.java"/>
228        </fileset>
229      </javadoc>
230  
# Line 229 | Line 288
288  
289      <javadoc destdir="${dist.javadocs.dir}"
290               packagenames="none"
291 <             link="http://download.oracle.com/javase/7/docs/api/"
291 >             link="${jdkapidocs.url}"
292               overview="${src.dir}/intro.html"
293               sourcepath="${src.dir}:${jdksrc.dir}"
294               additionalparam="-XDignore.symbol.file=true" >
295        <fileset dir="${src.dir}" defaultexcludes="yes">
296 <      <include name="**/*.java"/>
296 >        <include name="**/*.java"/>
297        </fileset>
298      </javadoc>
299  
# Line 465 | Line 524
524    </target>
525  
526  
527 +  <!-- jdk7 -->
528 +
529 +
530 +  <target name="jdk7compile"
531 +          depends="configure-compiler"
532 +          description="Compiles src/jdk7 sources">
533 +
534 +    <mkdir dir="${build.jdk7.classes.dir}"/>
535 +
536 +    <javac srcdir="${jdk7src.dir}"
537 +           destdir="${build.jdk7.classes.dir}"
538 +           debug="${build.debug}"
539 +           debuglevel="${build.debuglevel}"
540 +           deprecation="${build.deprecation}"
541 +           source="1.6"
542 +           classpath=""
543 +           bootclasspath="${bootclasspath6}"
544 +           includeAntRuntime="false"
545 +           includeJavaRuntime="false"
546 +           executable="${javac7}"
547 +           fork="true">
548 +
549 +      <include name="**/*.java"/>
550 +      <compilerarg line="${build.args}"/>
551 +      <compilerarg value="-XDignore.symbol.file=true"/>
552 +      <compilerarg value="-Xlint:all"/>
553 +
554 +    </javac>
555 +
556 +    <mkdir dir="${build.jdk7.lib.dir}"/>
557 +
558 +    <jar destfile="${jdk7product.jar}" index="true">
559 +      <fileset dir="${build.jdk7.classes.dir}"/>
560 +    </jar>
561 +
562 +    <mkdir dir="${build.jdk7.tck.classes.dir}"/>
563 +
564 +    <javac srcdir="${tck.src.dir}"
565 +           destdir="${build.jdk7.tck.classes.dir}"
566 +           debug="${build.debug}"
567 +           debuglevel="${build.debuglevel}"
568 +           deprecation="${build.deprecation}"
569 +           source="1.6"
570 +           classpath="${junit.jar}"
571 +           bootclasspath="${jdk7product.jar}:${bootclasspath6}"
572 +           includeAntRuntime="false"
573 +           includeJavaRuntime="false"
574 +           executable="${javac7}"
575 +           fork="true">
576 +
577 +      <include name="**/*.java"/>
578 +      <compilerarg line="${build.args}"/>
579 +      <compilerarg value="-XDignore.symbol.file=true"/>
580 +      <compilerarg value="-Xlint:all,-unchecked,-rawtypes,-serial,-deprecation"/>
581 +
582 +    </javac>
583 +
584 +  </target>
585 +
586 +
587 +  <target name="run-jdk7-tck-tests"
588 +          depends="jdk7compile"
589 +          description="Runs tck tests for jsr166-jdk7 directly">
590 +    <run-tck-tests
591 +      jvm="${java7}"
592 +      tck.classes="${build.jdk7.tck.classes.dir}"
593 +      product.jar="${jdk7product.jar}"/>
594 +  </target>
595 +
596 +
597 +  <target name="run-jdk7-tck-tests-via-junit-task"
598 +          depends="jdk7compile">
599 +
600 +    <junit printsummary="true"
601 +           showoutput="true"
602 +           errorProperty="junit.failed"
603 +           failureProperty="junit.failed"
604 +           includeantruntime="true"
605 +           jvm="${java7}"
606 +           fork="true">
607 +
608 +      <jvmarg value="-Xbootclasspath/p:${jdk7product.jar}"/>
609 +      <jvmarg value="-server"/>
610 +
611 +      <classpath>
612 +        <pathelement location="${junit.jar}"/>
613 +        <pathelement location="${build.jdk7.tck.classes.dir}"/>
614 +      </classpath>
615 +
616 +      <formatter type="brief"/>
617 +
618 +      <test name="JSR166TestCase" haltonfailure="no">
619 +      </test>
620 +
621 +    </junit>
622 +  </target>
623 +
624 +
625 +  <target name="jdk7docs"
626 +          description="Builds javadocs with custom tags to build folder">
627 +
628 +    <delete dir="${build.jdk7.docs.dir}"/>
629 +    <mkdir dir="${build.jdk7.docs.dir}"/>
630 +
631 +    <javadoc destdir="${build.jdk7.docs.dir}"
632 +             packagenames="none"
633 +             link="${jdkapi7docs.url}"
634 +             overview="${jdk7src.dir}/intro.html"
635 +             sourcepath="${jdk7src.dir}"
636 +             bootclasspath="${bootclasspath6}"
637 +             classpath=""
638 +             source="1.6"
639 +             executable="${javadoc7}"
640 +             additionalparam="-XDignore.symbol.file=true" >
641 +      <fileset dir="${jdk7src.dir}" defaultexcludes="yes">
642 +        <include name="**/*.java"/>
643 +      </fileset>
644 +    </javadoc>
645 +
646 +  </target>
647 +
648 +
649 +  <target name="jdk7dist"
650 +          depends="jdk7dist-clean, jdk7dist-jar, jdk7dist-docs"
651 +          description="Puts all distributable products in single hierarchy"/>
652 +
653 +
654 +
655 +  <target name="jdk7clean"
656 +          description="Removes all build products">
657 +
658 +    <delete dir="${build.jdk7.dir}"/>
659 +
660 +  </target>
661 +
662 +
663 +
664 +  <target name="jdk7dist-clean"
665 +          description="Removes all build and distribution products">
666 +
667 +  </target>
668 +
669 +  <target name="jdk7dist-docs"
670 +          description="Builds javadocs without custom tags to dist folder">
671 +
672 +    <delete dir="${dist.jdk7.docs.dir}"/>
673 +    <mkdir dir="${dist.jdk7.docs.dir}"/>
674 +
675 +    <javadoc destdir="${dist.jdk7.docs.dir}"
676 +             packagenames="none"
677 +             link="${jdkapi7docs.url}"
678 +             overview="${jdk7src.dir}/intro.html"
679 +             sourcepath="${jdk7src.dir}"
680 +             classpath=""
681 +             executable="${javadoc7}"
682 +             bootclasspath="${bootclasspath6}"
683 +             source="1.6">
684 +      <arg value="-XDignore.symbol.file=true"/>
685 +      <fileset dir="${jdk7src.dir}" defaultexcludes="yes">
686 +        <include name="**/*.java"/>
687 +      </fileset>
688 +    </javadoc>
689 +
690 +  </target>
691 +
692 +  <target name="jdk7dist-jar"
693 +          depends="jdk7clean, jdk7compile">
694 +
695 +    <copy file="${jdk7product.jar}" todir="${dist.dir}"/>
696 +
697 +  </target>
698 +
699    <!-- jsr166x -->
700  
701  
# Line 514 | Line 745
745  
746      <javadoc destdir="${build.jsr166xjavadocs.dir}"
747               packagenames="jsr166x"
748 <             link="http://download.oracle.com/javase/7/docs/api/"
748 >             link="${jdkapidocs.url}"
749               source="${build.sourcelevel}"
750               sourcepath="${topsrc.dir}:${jdksrc.dir}"
751               additionalparam="-XDignore.symbol.file=true" />
# Line 553 | Line 784
784  
785      <javadoc destdir="${dist.jsr166xjavadocs.dir}"
786               packagenames="jsr166x"
787 <             link="http://download.oracle.com/javase/7/docs/api/"
787 >             link="${jdkapidocs.url}"
788               source="${build.sourcelevel}"
789               sourcepath="${topsrc.dir}:${jdksrc.dir}"
790               additionalparam="-XDignore.symbol.file=true" />
# Line 619 | Line 850
850  
851      <javadoc destdir="${build.jsr166yjavadocs.dir}"
852               packagenames="jsr166y"
853 <             link="http://download.oracle.com/javase/7/docs/api/"
853 >             link="${jdkapidocs.url}"
854               source="${build.sourcelevel}"
855               sourcepath="${topsrc.dir}:${jdksrc.dir}"
856               additionalparam="-XDignore.symbol.file=true" />
# Line 656 | Line 887
887  
888      <javadoc destdir="${dist.jsr166yjavadocs.dir}"
889               packagenames="jsr166y"
890 <             link="http://download.oracle.com/javase/7/docs/api/"
890 >             link="${jdkapidocs.url}"
891               source="${build.sourcelevel}"
892               sourcepath="${topsrc.dir}:${jdksrc.dir}"
893               additionalparam="-XDignore.symbol.file=true" />
# Line 724 | Line 955
955  
956      <javadoc destdir="${build.extra166yjavadocs.dir}"
957               packagenames="extra166y"
958 <             link="http://download.oracle.com/javase/7/docs/api/"
958 >             link="${jdkapidocs.url}"
959               source="${build.sourcelevel}"
960               sourcepath="${topsrc.dir}:${jdksrc.dir}"
961               additionalparam="-XDignore.symbol.file=true" />
# Line 761 | Line 992
992  
993      <javadoc destdir="${dist.extra166yjavadocs.dir}"
994               packagenames="extra166y"
995 <             link="http://download.oracle.com/javase/7/docs/api/"
995 >             link="${jdkapidocs.url}"
996               source="${build.sourcelevel}"
997               sourcepath="${topsrc.dir}:${jdksrc.dir}"
998               additionalparam="-XDignore.symbol.file=true" />
# Line 777 | Line 1008
1008  
1009    <!-- jsr166e -->
1010  
780
1011    <target name="jsr166ecompile"
1012 <          depends="init, configure-compiler"
1012 >          depends="configure-compiler"
1013            description="Compiles jsr166e sources">
1014  
1015      <mkdir dir="${build.jsr166e.dir}"/>
1016  
1017 <    <javac srcdir="${jsr166esrc.dir}"
1018 <          destdir="${build.jsr166e.dir}"
1019 <            debug="${build.debug}"
1020 <       debuglevel="${build.debuglevel}"
1021 <      deprecation="${build.deprecation}"
1017 >    <javac srcdir="${topsrc.dir}"
1018 >           destdir="${build.jsr166e.dir}"
1019 >           debug="${build.debug}"
1020 >           debuglevel="${build.debuglevel}"
1021 >           deprecation="${build.deprecation}"
1022             source="1.7"
1023 <             fork="true">
1023 >           classpath=""
1024 >           includeAntRuntime="false"
1025 >           includeJavaRuntime="false"
1026 >           executable="${javac7}"
1027 >           fork="true">
1028  
1029 <      <include name="**/*.java"/>
1029 >      <include name="jsr166e/**/*.java"/>
1030        <compilerarg line="${build.args}"/>
1031        <compilerarg value="-XDignore.symbol.file=true"/>
1032 <      <compilerarg value="${bootclasspath.args}"/>
799 <
800 < <!--       <compilerarg line="-Xlint -Xmaxwarns 1000"/> -->
1032 >      <compilerarg value="-Xlint:all"/>
1033  
1034      </javac>
1035  
# Line 827 | Line 1059
1059  
1060      <javadoc destdir="${build.jsr166ejavadocs.dir}"
1061               packagenames="jsr166e,jsr166e.extra"
1062 <             link="http://download.oracle.com/javase/7/docs/api/"
1062 >             link="${jdkapi7docs.url}"
1063               source="1.7"
1064 <             sourcepath="${topsrc.dir}:${jdksrc.dir}"
1065 <             additionalparam="-XDignore.symbol.file=true" />
1064 >             sourcepath="${topsrc.dir}:${jdk7src.dir}:${jdksrc.dir}"
1065 >             executable="${javadoc7}"
1066 >             additionalparam="-XDignore.symbol.file=true" >
1067 >      <fileset dir="${topsrc.dir}" defaultexcludes="yes">
1068 >        <include name="jsr166e/**/*.java"/>
1069 >      </fileset>
1070 >    </javadoc>
1071  
1072    </target>
1073  
# Line 864 | Line 1101
1101  
1102      <javadoc destdir="${dist.jsr166ejavadocs.dir}"
1103               packagenames="jsr166e,jsr166e.extra"
1104 <             link="http://download.oracle.com/javase/7/docs/api/"
1104 >             link="${jdkapidocs.url}"
1105               source="1.7"
1106               sourcepath="${topsrc.dir}:${jdksrc.dir}"
1107               additionalparam="-XDignore.symbol.file=true" />

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines