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.89 by jsr166, Fri Jun 10 18:07:30 2011 UTC vs.
Revision 1.95 by jsr166, Mon Jan 14 19:22:27 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.docs.dir"         location="${build.jdk7.dir}/docs"/>
42 +
43    <property name="build.jsr166x.dir"           location="${build.dir}/jsr166x"/>
44    <property name="build.jsr166xlib.dir"        location="${build.dir}/jsr166xlib"/>
45    <property name="build.jsr166xjavadocs.dir"   location="${build.dir}/jsr166xjavadocs"/>
# Line 42 | Line 48
48    <property name="build.jsr166ylib.dir"        location="${build.dir}/jsr166ylib"/>
49    <property name="build.jsr166yjavadocs.dir"   location="${build.dir}/jsr166yjavadocs"/>
50  
51 +  <property name="build.jsr166e.dir"           location="${build.dir}/jsr166e"/>
52 +  <property name="build.jsr166elib.dir"        location="${build.dir}/jsr166elib"/>
53 +  <property name="build.jsr166ejavadocs.dir"   location="${build.dir}/jsr166ejavadocs"/>
54 +
55    <property name="build.extra166y.dir"         location="${build.dir}/extra166y"/>
56    <property name="build.extra166ylib.dir"      location="${build.dir}/extra166ylib"/>
57    <property name="build.extra166yjavadocs.dir" location="${build.dir}/extra166yjavadocs"/>
58  
59 +  <!-- JDK binary locations -->
60 +  <property name="jdks.home"  location="${user.home}/jdk"/>
61 +
62 +  <macrodef name="defjdklocations">
63 +    <attribute name="v"/>
64 +    <sequential>
65 +    <property name="jdk@{v}.home"  location="${jdks.home}/jdk@{v}"/>
66 +    <property name="javac@{v}"     location="${jdk@{v}.home}/bin/javac"/>
67 +    <property name="javadoc@{v}"   location="${jdk@{v}.home}/bin/javadoc"/>
68 +    <property name="bootdir@{v}"   location="${jdk@{v}.home}/jre/lib"/>
69 +    <property name="bootclasspath@{v}"  
70 +     value="${bootdir@{v}}/resources.jar:${bootdir@{v}}/rt.jar:${bootdir@{v}}/jsse.jar:${bootdir@{v}}/jce.jar:${bootdir@{v}}/:${bootdir@{v}}/charsets.jar"/>
71 +    </sequential>
72 +  </macrodef>
73 +
74 +  <defjdklocations v="6"/>
75 +  <defjdklocations v="7"/>
76 +  <defjdklocations v="8"/>
77 +
78    <!-- Source locations -->
79    <property name="src.dir"              location="${basedir}/src/main"/>
80    <property name="test.src.dir"         location="${basedir}/src/test"/>
# Line 55 | Line 84
84    <property name="lib.dir"              location="${basedir}/lib"/>
85    <property name="dist.dir"             location="${basedir}/dist"/>
86    <property name="topsrc.dir"           location="${basedir}/src"/>
87 <  <property name="jsr166xsrc.dir"       location="${basedir}/src/jsr166x"/>
88 <  <property name="jsr166ysrc.dir"       location="${basedir}/src/jsr166y"/>
89 <  <property name="extra166ysrc.dir"     location="${basedir}/src/extra166y"/>
87 >  <property name="jdk7src.dir"          location="${topsrc.dir}/jdk7"/>
88 >  <property name="jsr166xsrc.dir"       location="${topsrc.dir}/jsr166x"/>
89 >  <property name="jsr166ysrc.dir"       location="${topsrc.dir}/jsr166y"/>
90 >  <property name="jsr166esrc.dir"       location="${topsrc.dir}/jsr166e"/>
91 >  <property name="extra166ysrc.dir"     location="${topsrc.dir}/extra166y"/>
92    <property name="jdksrc.dir"           location="/home/dl/1.6.0/j2se/martin/j2se/src/share/classes"/>
93 +
94    <!-- Distribution locations -->
95    <property name="dist.javadocs.dir"           location="${dist.dir}/docs"/>
96 +  <property name="dist.jdk7.docs.dir"          location="${dist.dir}/jsr166-jdk7docs"/>
97    <property name="dist.jsr166xjavadocs.dir"    location="${dist.dir}/jsr166xdocs"/>
98    <property name="dist.jsr166yjavadocs.dir"    location="${dist.dir}/jsr166ydocs"/>
99 +  <property name="dist.jsr166ejavadocs.dir"    location="${dist.dir}/jsr166edocs"/>
100    <property name="dist.extra166yjavadocs.dir"  location="${dist.dir}/extra166ydocs"/>
101  
102    <!-- Jar locations -->
103    <property name="product.jar"          location="${build.lib.dir}/jsr166.jar"/>
104 +  <property name="jdk7product.jar"      location="${build.jdk7.lib.dir}/jsr166-jdk7.jar"/>
105    <property name="jsr166xproduct.jar"   location="${build.jsr166xlib.dir}/jsr166x.jar"/>
106    <property name="jsr166yproduct.jar"   location="${build.jsr166ylib.dir}/jsr166y.jar"/>
107 +  <property name="jsr166eproduct.jar"   location="${build.jsr166elib.dir}/jsr166e.jar"/>
108    <property name="extra166yproduct.jar" location="${build.extra166ylib.dir}/extra166y.jar"/>
109    <property name="junit.jar"            location="${lib.dir}/junit.jar"/>
110  
111    <!-- Bootclasspath argument -->
112    <property name="bootclasspath.args"   value="-Xbootclasspath/p:${product.jar}"/>
113  
114 +  <!-- Canonical location of jdk API docs, to use with javadoc link attribute -->
115 +  <property name="jdkapi5docs.url"      value="http://docs.oracle.com/javase/1.5.0/docs/api/"/>
116 +  <property name="jdkapi6docs.url"      value="http://docs.oracle.com/javase/6/docs/api/"/>
117 +  <property name="jdkapi7docs.url"      value="http://docs.oracle.com/javase/7/docs/api/"/>
118 +
119 +  <property name="jdkapi8docs.url"      value="http://download.java.net/jdk8/docs/api/"/>
120 +  <!-- The below does not yet exist as of 2012-11 -->
121 +  <!-- <property name="jdkapi8docs.url" value="http://docs.oracle.com/javase/8/docs/api/"/> -->
122 +  <property name="jdkapidocs.url"       value="${jdkapi7docs.url}"/>
123 +
124    <!-- Test classpath -->
125    <path id="test.classpath">
126      <pathelement location="${build.testcases.dir}"/>
# Line 90 | Line 136
136    <!-- Main targets -->
137  
138    <target name="dists"
139 <          depends="dist, jsr166xdist, jsr166ydist, extra166ydist"
139 >          depends="dist, jsr166xdist, jsr166ydist,jsr166edist,  extra166ydist"
140            description="Builds all public jars and docs"/>
141  
142    <target name="compile"
# Line 153 | Line 199
199  
200      <javadoc destdir="${build.javadocs.dir}"
201               packagenames="none"
202 <             link="http://download.oracle.com/javase/7/docs/api/"
202 >             link="${jdkapidocs.url}"
203               overview="${src.dir}/intro.html"
204               sourcepath="${src.dir}:${jdksrc.dir}"
205               additionalparam="-XDignore.symbol.file=true" >
206        <fileset dir="${src.dir}" defaultexcludes="yes">
207 <      <include name="**/*.java"/>
207 >        <include name="**/*.java"/>
208        </fileset>
209      </javadoc>
210  
# Line 222 | Line 268
268  
269      <javadoc destdir="${dist.javadocs.dir}"
270               packagenames="none"
271 <             link="http://download.oracle.com/javase/7/docs/api/"
271 >             link="${jdkapidocs.url}"
272               overview="${src.dir}/intro.html"
273               sourcepath="${src.dir}:${jdksrc.dir}"
274               additionalparam="-XDignore.symbol.file=true" >
275        <fileset dir="${src.dir}" defaultexcludes="yes">
276 <      <include name="**/*.java"/>
276 >        <include name="**/*.java"/>
277        </fileset>
278      </javadoc>
279  
# Line 458 | Line 504
504    </target>
505  
506  
507 +  <!-- jdk7 -->
508 +
509 +
510 +  <target name="jdk7compile"
511 +          depends="configure-compiler"
512 +          description="Compiles src/jdk7 sources">
513 +
514 +    <mkdir dir="${build.jdk7.classes.dir}"/>
515 +
516 +    <javac srcdir="${jdk7src.dir}"
517 +           destdir="${build.jdk7.classes.dir}"
518 +           debug="${build.debug}"
519 +           debuglevel="${build.debuglevel}"
520 +           deprecation="${build.deprecation}"
521 +           source="1.6"
522 +           classpath=""
523 +           bootclasspath="${bootclasspath6}"
524 +           includeAntRuntime="false"
525 +           includeJavaRuntime="false"
526 +           executable="${javac6}"
527 +           fork="true">
528 +
529 +      <include name="**/*.java"/>
530 +      <compilerarg line="${build.args}"/>
531 +      <compilerarg value="-XDignore.symbol.file=true"/>
532 +      <compilerarg value="-Xlint:all"/>
533 +
534 +    </javac>
535 +
536 +  </target>
537 +
538 +
539 +
540 +  <target name="jdk7jar"
541 +          depends="jdk7compile"
542 +          description="Builds library jar from compiled sources">
543 +
544 +    <mkdir dir="${build.jdk7.lib.dir}"/>
545 +
546 +    <jar destfile="${jdk7product.jar}" index="true">
547 +      <fileset dir="${build.jdk7.classes.dir}"/>
548 +    </jar>
549 +
550 +  </target>
551 +
552 +
553 +
554 +  <target name="jdk7docs"
555 +          description="Builds javadocs with custom tags to build folder">
556 +
557 +    <delete dir="${build.jdk7.docs.dir}"/>
558 +    <mkdir dir="${build.jdk7.docs.dir}"/>
559 +
560 +    <javadoc destdir="${build.jdk7.docs.dir}"
561 +             packagenames="none"
562 +             link="${jdkapi7docs.url}"
563 +             overview="${jdk7src.dir}/intro.html"
564 +             sourcepath="${jdk7src.dir}"
565 +             bootclasspath="${bootclasspath6}"
566 +             classpath=""
567 +             source="1.6"
568 +             executable="${javadoc7}"
569 +             additionalparam="-XDignore.symbol.file=true" >
570 +      <fileset dir="${jdk7src.dir}" defaultexcludes="yes">
571 +        <include name="**/*.java"/>
572 +      </fileset>
573 +    </javadoc>
574 +
575 +  </target>
576 +
577 +
578 +  <target name="jdk7dist"
579 +          depends="jdk7dist-clean, jdk7dist-jar, jdk7dist-docs"
580 +          description="Puts all distributable products in single hierarchy"/>
581 +
582 +
583 +
584 +  <target name="jdk7clean"
585 +          description="Removes all build products">
586 +
587 +    <delete dir="${build.jdk7.dir}"/>
588 +
589 +  </target>
590 +
591 +
592 +
593 +  <target name="jdk7dist-clean"
594 +          description="Removes all build and distribution products">
595 +
596 +  </target>
597 +
598 +  <target name="jdk7dist-docs"
599 +          description="Builds javadocs without custom tags to dist folder">
600 +
601 +    <delete dir="${dist.jdk7.docs.dir}"/>
602 +    <mkdir dir="${dist.jdk7.docs.dir}"/>
603 +
604 +    <javadoc destdir="${dist.jdk7.docs.dir}"
605 +             packagenames="none"
606 +             link="${jdkapi7docs.url}"
607 +             overview="${jdk7src.dir}/intro.html"
608 +             sourcepath="${jdk7src.dir}"
609 +             classpath=""
610 +             executable="${javadoc7}"
611 +             bootclasspath="${bootclasspath6}"
612 +             source="1.6">
613 +      <arg value="-XDignore.symbol.file=true"/>
614 +      <fileset dir="${jdk7src.dir}" defaultexcludes="yes">
615 +        <include name="**/*.java"/>
616 +      </fileset>
617 +    </javadoc>
618 +
619 +  </target>
620 +
621 +  <target name="jdk7dist-jar"
622 +          depends="jdk7clean, jdk7jar">
623 +
624 +    <copy file="${jdk7product.jar}" todir="${dist.dir}"/>
625 +
626 +  </target>
627 +
628    <!-- jsr166x -->
629  
630  
# Line 507 | Line 674
674  
675      <javadoc destdir="${build.jsr166xjavadocs.dir}"
676               packagenames="jsr166x"
677 <             link="http://download.oracle.com/javase/7/docs/api/"
677 >             link="${jdkapidocs.url}"
678               source="${build.sourcelevel}"
679               sourcepath="${topsrc.dir}:${jdksrc.dir}"
680               additionalparam="-XDignore.symbol.file=true" />
# Line 546 | Line 713
713  
714      <javadoc destdir="${dist.jsr166xjavadocs.dir}"
715               packagenames="jsr166x"
716 <             link="http://download.oracle.com/javase/7/docs/api/"
716 >             link="${jdkapidocs.url}"
717               source="${build.sourcelevel}"
718               sourcepath="${topsrc.dir}:${jdksrc.dir}"
719               additionalparam="-XDignore.symbol.file=true" />
# Line 612 | Line 779
779  
780      <javadoc destdir="${build.jsr166yjavadocs.dir}"
781               packagenames="jsr166y"
782 <             link="http://download.oracle.com/javase/7/docs/api/"
782 >             link="${jdkapidocs.url}"
783               source="${build.sourcelevel}"
784               sourcepath="${topsrc.dir}:${jdksrc.dir}"
785               additionalparam="-XDignore.symbol.file=true" />
# Line 649 | Line 816
816  
817      <javadoc destdir="${dist.jsr166yjavadocs.dir}"
818               packagenames="jsr166y"
819 <             link="http://download.oracle.com/javase/7/docs/api/"
819 >             link="${jdkapidocs.url}"
820               source="${build.sourcelevel}"
821               sourcepath="${topsrc.dir}:${jdksrc.dir}"
822               additionalparam="-XDignore.symbol.file=true" />
# Line 663 | Line 830
830  
831    </target>
832  
833 +
834    <!-- extra166y -->
835  
836  
# Line 716 | Line 884
884  
885      <javadoc destdir="${build.extra166yjavadocs.dir}"
886               packagenames="extra166y"
887 <             link="http://download.oracle.com/javase/7/docs/api/"
887 >             link="${jdkapidocs.url}"
888               source="${build.sourcelevel}"
889               sourcepath="${topsrc.dir}:${jdksrc.dir}"
890               additionalparam="-XDignore.symbol.file=true" />
# Line 753 | Line 921
921  
922      <javadoc destdir="${dist.extra166yjavadocs.dir}"
923               packagenames="extra166y"
924 <             link="http://download.oracle.com/javase/7/docs/api/"
924 >             link="${jdkapidocs.url}"
925               source="${build.sourcelevel}"
926               sourcepath="${topsrc.dir}:${jdksrc.dir}"
927               additionalparam="-XDignore.symbol.file=true" />
# Line 767 | Line 935
935  
936    </target>
937  
938 +  <!-- jsr166e -->
939 +
940 +  <target name="jsr166ecompile"
941 +          depends="configure-compiler"
942 +          description="Compiles jsr166e sources">
943 +
944 +    <mkdir dir="${build.jsr166e.dir}"/>
945 +
946 +    <javac srcdir="${topsrc.dir}"
947 +           destdir="${build.jsr166e.dir}"
948 +           debug="${build.debug}"
949 +           debuglevel="${build.debuglevel}"
950 +           deprecation="${build.deprecation}"
951 +           source="1.7"
952 +           classpath=""
953 +           includeAntRuntime="false"
954 +           includeJavaRuntime="false"
955 +           executable="${javac7}"
956 +           fork="true">
957 +
958 +      <include name="jsr166e/**/*.java"/>
959 +      <compilerarg line="${build.args}"/>
960 +      <compilerarg value="-XDignore.symbol.file=true"/>
961 +      <compilerarg value="-Xlint:all"/>
962 +
963 +    </javac>
964 +
965 +  </target>
966 +
967 +
968 +
969 +  <target name="jsr166ejar"
970 +          depends="jsr166ecompile"
971 +          description="Builds library jar from compiled sources">
972 +
973 +    <mkdir dir="${build.jsr166elib.dir}"/>
974 +
975 +    <jar destfile="${jsr166eproduct.jar}" index="true">
976 +      <fileset dir="${build.jsr166e.dir}"/>
977 +    </jar>
978 +
979 +  </target>
980 +
981 +
982 +
983 +  <target name="jsr166edocs"
984 +          description="Builds javadocs with custom tags to build folder">
985 +
986 +    <delete dir="${build.jsr166ejavadocs.dir}"/>
987 +    <mkdir dir="${build.jsr166ejavadocs.dir}"/>
988 +
989 +    <javadoc destdir="${build.jsr166ejavadocs.dir}"
990 +             packagenames="jsr166e,jsr166e.extra"
991 +             link="${jdkapidocs.url}"
992 +             source="1.7"
993 +             sourcepath="${topsrc.dir}:${jdksrc.dir}"
994 +             additionalparam="-XDignore.symbol.file=true" />
995 +
996 +  </target>
997 +
998 +
999 +  <target name="jsr166edist"
1000 +          depends="jsr166edist-clean, jsr166edist-jar, jsr166edist-docs"
1001 +          description="Puts all distributable products in single hierarchy"/>
1002 +
1003 +
1004 +
1005 +  <target name="jsr166eclean"
1006 +          description="Removes all build products">
1007 +
1008 +    <delete dir="${build.jsr166e.dir}"/>
1009 +    <delete dir="${build.jsr166elib.dir}"/>
1010 +
1011 +  </target>
1012 +
1013 +
1014 +
1015 +  <target name="jsr166edist-clean"
1016 +          description="Removes all build and distribution products">
1017 +
1018 +  </target>
1019 +
1020 +  <target name="jsr166edist-docs"
1021 +          description="Builds javadocs without custom tags to dist folder">
1022 +
1023 +    <delete dir="${dist.jsr166ejavadocs.dir}"/>
1024 +    <mkdir dir="${dist.jsr166ejavadocs.dir}"/>
1025 +
1026 +    <javadoc destdir="${dist.jsr166ejavadocs.dir}"
1027 +             packagenames="jsr166e,jsr166e.extra"
1028 +             link="${jdkapidocs.url}"
1029 +             source="1.7"
1030 +             sourcepath="${topsrc.dir}:${jdksrc.dir}"
1031 +             additionalparam="-XDignore.symbol.file=true" />
1032 +
1033 +  </target>
1034 +
1035 +  <target name="jsr166edist-jar"
1036 +          depends="jsr166eclean, jsr166ejar">
1037 +
1038 +    <copy file="${jsr166eproduct.jar}" todir="${dist.dir}"/>
1039 +
1040 +  </target>
1041 +
1042   </project>

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines