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

View of /jsr166/build.xml

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.98 - (download) (as text) (annotate)
Wed Jan 16 07:39:51 2013 UTC (4 years, 9 months ago) by jsr166
Branch: MAIN
Changes since 1.97: +9 -0 lines
document new jdk location conventions
<project name="jsr166" default="usage">

  <description>
------------------------------------------------------------------------------
  Build file for JSR-166

  Usage: ant [target]

  User-specific settings are read from user.properties.
  See user.properties.sample for an explanation of some useful settings.

  The repository contains all dependencies except for ant and the JDK
  itself.  Because the JDK version matters and because different
  targets require different JDKs, we assume that users have created a
  hierarchy containing:
  $HOME/jdk/jdk6
  $HOME/jdk/jdk7
  $HOME/jdk/jdk8
  where each of the above is a JDK or a symlink to same.
------------------------------------------------------------------------------
  </description>

  <target name="usage" description="Advises user to run with -projecthelp">
    <echo>Run "ant -projecthelp" for full usage information.</echo>
  </target>


  <!-- User-specific settings -->
  <property file="user.properties"/>


  <!-- Compilation options -->
  <property name="build.sourcelevel"    value="1.6"/>
  <property name="build.debug"          value="true"/>
  <property name="build.debuglevel"     value="source,lines,vars"/>
  <property name="build.deprecation"    value="false"/>

  <!-- Build locations -->
  <property name="build.dir"                   location="build"/>
  <property name="build.classes.dir"           location="${build.dir}/classes"/>
  <property name="build.testcases.dir"         location="${build.dir}/testcases"/>
  <property name="build.loops.dir"             location="${build.dir}/loops"/>
  <property name="build.lib.dir"               location="${build.dir}/lib"/>
  <property name="build.javadocs.dir"          location="${build.dir}/javadocs"/>
  <property name="build.reports.dir"           location="${build.dir}/reports"/>

  <property name="build.jdk7.dir"              location="${build.dir}/jdk7"/>
  <property name="build.jdk7.lib.dir"          location="${build.jdk7.dir}"/>
  <property name="build.jdk7.classes.dir"      location="${build.jdk7.dir}/classes"/>
  <property name="build.jdk7.tck.classes.dir"  location="${build.jdk7.dir}/tck/classes"/>
  <property name="build.jdk7.docs.dir"         location="${build.jdk7.dir}/docs"/>

  <property name="build.jsr166x.dir"           location="${build.dir}/jsr166x"/>
  <property name="build.jsr166xlib.dir"        location="${build.dir}/jsr166xlib"/>
  <property name="build.jsr166xjavadocs.dir"   location="${build.dir}/jsr166xjavadocs"/>

  <property name="build.jsr166y.dir"           location="${build.dir}/jsr166y"/>
  <property name="build.jsr166ylib.dir"        location="${build.dir}/jsr166ylib"/>
  <property name="build.jsr166yjavadocs.dir"   location="${build.dir}/jsr166yjavadocs"/>

  <property name="build.jsr166e.dir"           location="${build.dir}/jsr166e"/>
  <property name="build.jsr166elib.dir"        location="${build.dir}/jsr166elib"/>
  <property name="build.jsr166ejavadocs.dir"   location="${build.dir}/jsr166ejavadocs"/>

  <property name="build.extra166y.dir"         location="${build.dir}/extra166y"/>
  <property name="build.extra166ylib.dir"      location="${build.dir}/extra166ylib"/>
  <property name="build.extra166yjavadocs.dir" location="${build.dir}/extra166yjavadocs"/>

  <!-- JDK binary locations -->
  <property name="jdks.home"  location="${user.home}/jdk"/>

  <macrodef name="defjdklocations">
    <attribute name="v"/>
    <sequential>
    <property name="jdk@{v}.home"  location="${jdks.home}/jdk@{v}"/>
    <property name="java@{v}"      location="${jdk@{v}.home}/bin/java"/>
    <property name="javac@{v}"     location="${jdk@{v}.home}/bin/javac"/>
    <property name="javadoc@{v}"   location="${jdk@{v}.home}/bin/javadoc"/>
    <property name="bootdir@{v}"   location="${jdk@{v}.home}/jre/lib"/>
    <property name="bootclasspath@{v}"
     value="${bootdir@{v}}/resources.jar:${bootdir@{v}}/rt.jar:${bootdir@{v}}/jsse.jar:${bootdir@{v}}/jce.jar:${bootdir@{v}}/:${bootdir@{v}}/charsets.jar"/>
    </sequential>
  </macrodef>

  <defjdklocations v="6"/>
  <defjdklocations v="7"/>
  <defjdklocations v="8"/>

  <macrodef name="run-tck-tests">
    <attribute name="jvm"/>
    <attribute name="tck.classes"/>
    <attribute name="product.jar" default="${product.jar}"/>
    <attribute name="jvmflags" default=""/>
    <sequential>
    <java classname="JSR166TestCase"
          jvm="@{jvm}" fork="true">
	<jvmarg value="-Xbootclasspath/p:@{product.jar}"/>
	<jvmarg line="@{jvmflags}"/>
	<classpath>
	  <pathelement location="${junit.jar}"/>
	  <pathelement location="@{tck.classes}"/>
	</classpath>
    </java>
    </sequential>
  </macrodef>

  <!-- Source locations -->
  <property name="src.dir"              location="${basedir}/src/main"/>
  <property name="test.src.dir"         location="${basedir}/src/test"/>
  <property name="loops.src.dir"        location="${basedir}/src/loops"/>
  <property name="tck.src.dir"          location="${test.src.dir}/tck"/>
  <property name="jtreg.src.dir"        location="${test.src.dir}/jtreg"/>
  <property name="lib.dir"              location="${basedir}/lib"/>
  <property name="dist.dir"             location="${basedir}/dist"/>
  <property name="topsrc.dir"           location="${basedir}/src"/>
  <property name="jdk7src.dir"          location="${topsrc.dir}/jdk7"/>
  <property name="jsr166xsrc.dir"       location="${topsrc.dir}/jsr166x"/>
  <property name="jsr166ysrc.dir"       location="${topsrc.dir}/jsr166y"/>
  <property name="jsr166esrc.dir"       location="${topsrc.dir}/jsr166e"/>
  <property name="extra166ysrc.dir"     location="${topsrc.dir}/extra166y"/>
  <property name="jdksrc.dir"           location="/home/dl/1.6.0/j2se/martin/j2se/src/share/classes"/>

  <!-- Distribution locations -->
  <property name="dist.javadocs.dir"           location="${dist.dir}/docs"/>
  <property name="dist.jdk7.docs.dir"          location="${dist.dir}/jsr166-jdk7docs"/>
  <property name="dist.jsr166xjavadocs.dir"    location="${dist.dir}/jsr166xdocs"/>
  <property name="dist.jsr166yjavadocs.dir"    location="${dist.dir}/jsr166ydocs"/>
  <property name="dist.jsr166ejavadocs.dir"    location="${dist.dir}/jsr166edocs"/>
  <property name="dist.extra166yjavadocs.dir"  location="${dist.dir}/extra166ydocs"/>

  <!-- Jar locations -->
  <property name="product.jar"          location="${build.lib.dir}/jsr166.jar"/>
  <property name="jdk7product.jar"      location="${build.jdk7.lib.dir}/jsr166-jdk7.jar"/>
  <property name="jsr166xproduct.jar"   location="${build.jsr166xlib.dir}/jsr166x.jar"/>
  <property name="jsr166yproduct.jar"   location="${build.jsr166ylib.dir}/jsr166y.jar"/>
  <property name="jsr166eproduct.jar"   location="${build.jsr166elib.dir}/jsr166e.jar"/>
  <property name="extra166yproduct.jar" location="${build.extra166ylib.dir}/extra166y.jar"/>
  <property name="junit.jar"            location="${lib.dir}/junit.jar"/>

  <!-- Bootclasspath argument -->
  <property name="bootclasspath.args"   value="-Xbootclasspath/p:${product.jar}"/>

  <!-- Canonical location of jdk API docs, to use with javadoc link attribute -->
  <property name="jdkapi5docs.url"      value="http://docs.oracle.com/javase/1.5.0/docs/api/"/>
  <property name="jdkapi6docs.url"      value="http://docs.oracle.com/javase/6/docs/api/"/>
  <property name="jdkapi7docs.url"      value="http://docs.oracle.com/javase/7/docs/api/"/>

  <property name="jdkapi8docs.url"      value="http://download.java.net/jdk8/docs/api/"/>
  <!-- The below does not yet exist as of 2012-11 -->
  <!-- <property name="jdkapi8docs.url" value="http://docs.oracle.com/javase/8/docs/api/"/> -->
  <property name="jdkapidocs.url"       value="${jdkapi7docs.url}"/>

  <!-- Test classpath -->
  <path id="test.classpath">
    <pathelement location="${build.testcases.dir}"/>
    <pathelement location="${junit.jar}"/>
  </path>

  <!-- ALoops classpath -->
  <path id="loops.classpath">
    <pathelement location="${build.loops.dir}"/>
  </path>


  <!-- Main targets -->

  <target name="dists"
          depends="dist, jsr166xdist, jsr166ydist,jsr166edist,  extra166ydist"
          description="Builds all public jars and docs"/>

  <target name="compile"
          depends="init, configure-compiler"
          description="Compiles main sources to build folder">

    <mkdir dir="${build.classes.dir}"/>

    <javac srcdir="${src.dir}"
          destdir="${build.classes.dir}"
            debug="${build.debug}"
       debuglevel="${build.debuglevel}"
      deprecation="${build.deprecation}"
           source="${build.sourcelevel}"
             fork="true">

      <include name="**/*.java"/>
      <compilerarg value="-XDignore.symbol.file=true"/>

<!--
      <exclude name="java/lang/**"/>
      <compilerarg line="${build.args}"/>
      <compilerarg line="-Xlint -Xmaxwarns 1000"/>
-->

    </javac>

  </target>



  <target name="jar"
          depends="compile"
          description="Builds library jar from compiled sources">

    <mkdir dir="${build.lib.dir}"/>

    <jar destfile="${product.jar}">
      <fileset dir="${build.classes.dir}"/>
    </jar>

  </target>



  <target name="test"
          depends="init, configure-tests, report-tests"
          description="Runs all tests (requires JUnit 3.8.1 in ${ant.home}/lib)" />



  <target name="docs"
          description="Builds javadocs with custom tags to build folder">

    <delete dir="${build.javadocs.dir}"/>
    <mkdir dir="${build.javadocs.dir}"/>

    <!-- the packagenames="none" hack below prevents scanning the -->
    <!-- sourcepath for packages -->

    <javadoc destdir="${build.javadocs.dir}"
             packagenames="none"
             link="${jdkapidocs.url}"
             overview="${src.dir}/intro.html"
             sourcepath="${src.dir}:${jdksrc.dir}"
             additionalparam="-XDignore.symbol.file=true" >
      <fileset dir="${src.dir}" defaultexcludes="yes">
        <include name="**/*.java"/>
      </fileset>
    </javadoc>

  </target>



  <target name="dist"
          depends="init, dist-clean, dist-jar, dist-docs"
          description="Puts all distributable products in single hierarchy"/>


  <target name="release"
          depends="dist"
          description="Puts entire CVS tree, plus distribution productions, in a jar">

    <property name="release.jar" value="dist/jsr166-${version}-dist.jar"/>

    <jar basedir="${basedir}" destfile="${release.jar}">
      <!-- <exclude name="build/**"/> -->
      <exclude name="${release.jar}"/>
      <exclude name="user.properties"/>
      <exclude name="etc/notes/**"/>
      <exclude name="src/emulation/**"/>
      <exclude name="**/SyntaxTest.java"/>
      <exclude name="**/SuperfluousAbstract.java"/>
    </jar>

  </target>



  <target name="clean"
          description="Removes all build products">

    <delete dir="${build.dir}"/>
    <delete dir="${build.classes.dir}"/>
    <delete dir="${build.lib.dir}"/>

  </target>



  <target name="dist-clean"
          description="Removes all build and distribution products">

    <delete dir="${dist.dir}"/>

  </target>



  <target name="dist-docs"
          description="Builds javadocs without custom tags to dist folder">

    <delete dir="${dist.javadocs.dir}"/>
    <mkdir dir="${dist.javadocs.dir}"/>

    <!-- the packagenames="none" hack below prevents scanning the -->
    <!-- sourcepath for packages -->

    <javadoc destdir="${dist.javadocs.dir}"
             packagenames="none"
             link="${jdkapidocs.url}"
             overview="${src.dir}/intro.html"
             sourcepath="${src.dir}:${jdksrc.dir}"
             additionalparam="-XDignore.symbol.file=true" >
      <fileset dir="${src.dir}" defaultexcludes="yes">
        <include name="**/*.java"/>
      </fileset>
    </javadoc>

  </target>



  <!-- Internal targets -->


  <target name="init">

    <!-- Version is kept in a separate file -->
    <loadfile property="version" srcFile="version.properties"/>
    <echo>Building JSR-166 version ${version}</echo>
    <echo>java.home is ${java.home}</echo>

  </target>


  <target name="dist-jar"
          depends="clean, jar">

    <copy file="${product.jar}" todir="${dist.dir}"/>

  </target>


  <target name="compile-tests"
          depends="jar">

    <mkdir dir="${build.testcases.dir}"/>

    <javac srcdir="${tck.src.dir}"
          destdir="${build.testcases.dir}"
            debug="${build.debug}"
       debuglevel="${build.debuglevel}"
      deprecation="${build.deprecation}"
           source="${build.sourcelevel}"
             fork="true">

      <compilerarg value="${bootclasspath.args}"/>
      <compilerarg line="${build.args}"/>
      <compilerarg value="-XDignore.symbol.file=true"/>

      <classpath refid="test.classpath"/>

    </javac>

    <javac srcdir="${test.src.dir}"
          destdir="${build.testcases.dir}"
            debug="${build.debug}"
       debuglevel="${build.debuglevel}"
      deprecation="${build.deprecation}"
           source="${build.sourcelevel}"
             fork="true">

      <include name="jsr166/test/**"/>

      <compilerarg value="${bootclasspath.args}"/>
      <compilerarg line="${build.args}"/>
      <compilerarg value="-XDignore.symbol.file=true"/>

      <classpath refid="test.classpath"/>

    </javac>

<!--
    <javac srcdir="${jtreg.src.dir}"
          destdir="${build.testcases.dir}"
            debug="${build.debug}"
       debuglevel="${build.debuglevel}"
      deprecation="${build.deprecation}"
           source="${build.sourcelevel}"
             fork="true">

      <compilerarg value="${bootclasspath.args}"/>
      <compilerarg line="${build.args}"/>
      <compilerarg value="-XDignore.symbol.file=true"/>

      <classpath refid="test.classpath"/>

    </javac>
-->

  </target>


  <target name="run-tests"
          depends="compile-tests">

    <!-- May be overridden by user.properties -->
    <property name="testcase" value="*"/>

    <mkdir dir="${build.reports.dir}"/>

    <junit printsummary="true"
             showoutput="true"
          errorProperty="junit.failed"
        failureProperty="junit.failed"
                    dir="${build.reports.dir}"
                   fork="true">

      <jvmarg value="${bootclasspath.args}"/>
      <jvmarg value="-server"/>
      <jvmarg value="-showversion"/>

      <classpath refid="test.classpath"/>

      <formatter type="xml"/>

      <batchtest todir="${build.reports.dir}" unless="no.test.tck">
        <fileset dir="${tck.src.dir}">
          <include name="**/${testcase}Test.java"/>
        </fileset>
      </batchtest>

      <batchtest todir="${build.reports.dir}" if="do.test.old">
        <fileset dir="${test.src.dir}">
          <include name="jsr166/test/**/${testcase}Test.java"/>
        </fileset>
      </batchtest>

<!--
      <batchtest todir="${build.reports.dir}" if="do.test.jtreg">
        <fileset dir="${jtreg.src.dir}">
          <include name="**/${testcase}Test.java"/>
        </fileset>
      </batchtest>
-->

    </junit>

  </target>


  <target name="report-tests"
          depends="run-tests">

    <!-- Sets junit.report.format to frames if redirection is present,
         otherwise sets it to noframes. -->
    <available property="junit.report.format"
                  value="frames"
              classname="org.apache.xalan.lib.Redirect"
    />
    <property name="junit.report.format" value="noframes"/>

    <junitreport todir="${build.reports.dir}">
      <fileset dir="${build.reports.dir}">
        <include name="TEST-*.xml"/>
      </fileset>
      <report format="${junit.report.format}" todir="${build.reports.dir}"
      />
    </junitreport>

    <fail message="Test Cases Failed" if="junit.failed"/>

  </target>


  <target name="configure-compiler">

    <property name="unchecked.option" value="-Xlint:unchecked"/>

    <condition property="warnunchecked.arg" value="${unchecked.option}">
      <istrue value="${build.warnunchecked}"/>
    </condition>

    <property name="warnunchecked.arg" value=""/>


    <!-- Common options in javac invocations -->
    <property name="build.args" value="${warnunchecked.arg}"/>

  </target>


  <target name="configure-tests"
       depends="configure-compiler">

    <!-- junit.framework.Protectable is in JUnit 3.8.1 but not in 3.7 -->
    <available property="junit.available"
               classname="junit.framework.Protectable"/>

    <!-- Xalan -->
    <available property="xalan.available"
               classname="org.apache.xalan.Version"/>


    <!-- Ant 1.6beta and later don't need or want this check -->
    <!--
    <fail message="Need JUnit 3.8.1 in ${ant.home}${file.separator}lib to run tests"
          unless="junit.available"/>

    <fail message="Need Xalan 2.5.1 jar in ${ant.home}${file.separator}lib to run tests"
          unless="xalan.available"/>
    -->

  </target>


  <!-- Various demos and test programs -->


  <target name="loops" depends="init, configure-compiler"
          description="Benchmark from Doug Lea's AQS paper">

    <mkdir dir="${build.loops.dir}"/>

    <javac srcdir="${loops.src.dir}"
          destdir="${build.loops.dir}"
            debug="${build.debug}"
       debuglevel="${build.debuglevel}"
      deprecation="${build.deprecation}"
           source="${build.sourcelevel}"
             fork="true">

      <compilerarg line="${build.args}"/>
      <classpath refid="loops.classpath"/>
      <compilerarg value="-XDignore.symbol.file=true"/>

    </javac>

    <java classname="ALoops" fork="true">
      <classpath refid="loops.classpath"/>
    </java>

  </target>


  <!-- jdk7 -->


  <target name="jdk7compile"
          depends="configure-compiler"
          description="Compiles src/jdk7 sources">

    <mkdir dir="${build.jdk7.classes.dir}"/>

    <javac srcdir="${jdk7src.dir}"
           destdir="${build.jdk7.classes.dir}"
           debug="${build.debug}"
           debuglevel="${build.debuglevel}"
           deprecation="${build.deprecation}"
           source="1.6"
           classpath=""
           bootclasspath="${bootclasspath6}"
           includeAntRuntime="false"
           includeJavaRuntime="false"
           executable="${javac7}"
           fork="true">

      <include name="**/*.java"/>
      <compilerarg line="${build.args}"/>
      <compilerarg value="-XDignore.symbol.file=true"/>
      <compilerarg value="-Xlint:all"/>

    </javac>

    <mkdir dir="${build.jdk7.lib.dir}"/>

    <jar destfile="${jdk7product.jar}" index="true">
      <fileset dir="${build.jdk7.classes.dir}"/>
    </jar>

    <mkdir dir="${build.jdk7.tck.classes.dir}"/>

    <javac srcdir="${tck.src.dir}"
           destdir="${build.jdk7.tck.classes.dir}"
           debug="${build.debug}"
           debuglevel="${build.debuglevel}"
           deprecation="${build.deprecation}"
           source="1.6"
           classpath="${junit.jar}"
           bootclasspath="${jdk7product.jar}:${bootclasspath6}"
           includeAntRuntime="false"
           includeJavaRuntime="false"
           executable="${javac7}"
           fork="true">

      <include name="**/*.java"/>
      <compilerarg line="${build.args}"/>
      <compilerarg value="-XDignore.symbol.file=true"/>
      <compilerarg value="-Xlint:all,-unchecked,-rawtypes,-serial,-deprecation"/>

    </javac>

  </target>


  <target name="run-jdk7-tck-tests"
	  depends="jdk7compile"
          description="Runs tck tests for jsr166-jdk7 directly">
    <run-tck-tests
      jvm="${java7}"
      tck.classes="${build.jdk7.tck.classes.dir}"
      product.jar="${jdk7product.jar}"/>
  </target>


  <target name="run-jdk7-tck-tests-via-junit-task"
          depends="jdk7compile">

    <junit printsummary="true"
           showoutput="true"
           errorProperty="junit.failed"
           failureProperty="junit.failed"
           includeantruntime="true"
           jvm="${java7}"
           fork="true">

      <jvmarg value="-Xbootclasspath/p:${jdk7product.jar}"/>
      <jvmarg value="-server"/>

      <classpath>
        <pathelement location="${junit.jar}"/>
        <pathelement location="${build.jdk7.tck.classes.dir}"/>
      </classpath>

      <formatter type="brief"/>

      <test name="JSR166TestCase" haltonfailure="no">
      </test>

    </junit>
  </target>


  <target name="jdk7docs"
          description="Builds javadocs with custom tags to build folder">

    <delete dir="${build.jdk7.docs.dir}"/>
    <mkdir dir="${build.jdk7.docs.dir}"/>

    <javadoc destdir="${build.jdk7.docs.dir}"
             packagenames="none"
             link="${jdkapi7docs.url}"
             overview="${jdk7src.dir}/intro.html"
             sourcepath="${jdk7src.dir}"
             bootclasspath="${bootclasspath6}"
             classpath=""
             source="1.6"
             executable="${javadoc7}"
             additionalparam="-XDignore.symbol.file=true" >
      <fileset dir="${jdk7src.dir}" defaultexcludes="yes">
        <include name="**/*.java"/>
      </fileset>
    </javadoc>

  </target>


  <target name="jdk7dist"
          depends="jdk7dist-clean, jdk7dist-jar, jdk7dist-docs"
          description="Puts all distributable products in single hierarchy"/>



  <target name="jdk7clean"
          description="Removes all build products">

    <delete dir="${build.jdk7.dir}"/>

  </target>



  <target name="jdk7dist-clean"
          description="Removes all build and distribution products">

  </target>

  <target name="jdk7dist-docs"
          description="Builds javadocs without custom tags to dist folder">

    <delete dir="${dist.jdk7.docs.dir}"/>
    <mkdir dir="${dist.jdk7.docs.dir}"/>

    <javadoc destdir="${dist.jdk7.docs.dir}"
             packagenames="none"
             link="${jdkapi7docs.url}"
             overview="${jdk7src.dir}/intro.html"
             sourcepath="${jdk7src.dir}"
             classpath=""
             executable="${javadoc7}"
             bootclasspath="${bootclasspath6}"
             source="1.6">
      <arg value="-XDignore.symbol.file=true"/>
      <fileset dir="${jdk7src.dir}" defaultexcludes="yes">
        <include name="**/*.java"/>
      </fileset>
    </javadoc>

  </target>

  <target name="jdk7dist-jar"
          depends="jdk7clean, jdk7compile">

    <copy file="${jdk7product.jar}" todir="${dist.dir}"/>

  </target>

  <!-- jsr166x -->


  <target name="jsr166xcompile"
          depends="init, configure-compiler"
          description="Compiles jsr166x sources">

    <mkdir dir="${build.jsr166x.dir}"/>

    <javac srcdir="${jsr166xsrc.dir}"
          destdir="${build.jsr166x.dir}"
            debug="${build.debug}"
       debuglevel="${build.debuglevel}"
      deprecation="${build.deprecation}"
           source="${build.sourcelevel}"
             fork="true">

      <include name="**/*.java"/>
      <compilerarg line="${build.args}"/>
      <compilerarg value="-XDignore.symbol.file=true"/>

    </javac>

  </target>



  <target name="jsr166xjar"
          depends="jsr166xcompile"
          description="Builds library jar from compiled sources">

    <mkdir dir="${build.jsr166xlib.dir}"/>

    <jar destfile="${jsr166xproduct.jar}">
      <fileset dir="${build.jsr166x.dir}"/>
    </jar>

  </target>



  <target name="jsr166xdocs"
          description="Builds javadocs with custom tags to build folder">

    <delete dir="${build.jsr166xjavadocs.dir}"/>
    <mkdir dir="${build.jsr166xjavadocs.dir}"/>

    <javadoc destdir="${build.jsr166xjavadocs.dir}"
             packagenames="jsr166x"
             link="${jdkapidocs.url}"
             source="${build.sourcelevel}"
             sourcepath="${topsrc.dir}:${jdksrc.dir}"
             additionalparam="-XDignore.symbol.file=true" />

  </target>


  <target name="jsr166xdist"
          depends="jsr166xdist-clean, jsr166xdist-jar, jsr166xdist-docs"
          description="Puts all distributable products in single hierarchy"/>



  <target name="jsr166xclean"
          description="Removes all build products">

    <delete dir="${build.jsr166x.dir}"/>
    <delete dir="${build.jsr166xlib.dir}"/>

  </target>



  <target name="jsr166xdist-clean"
          description="Removes all build and distribution products">

  </target>



  <target name="jsr166xdist-docs"
          description="Builds javadocs without custom tags to dist folder">

    <delete dir="${dist.jsr166xjavadocs.dir}"/>
    <mkdir dir="${dist.jsr166xjavadocs.dir}"/>

    <javadoc destdir="${dist.jsr166xjavadocs.dir}"
             packagenames="jsr166x"
             link="${jdkapidocs.url}"
             source="${build.sourcelevel}"
             sourcepath="${topsrc.dir}:${jdksrc.dir}"
             additionalparam="-XDignore.symbol.file=true" />

  </target>

  <target name="jsr166xdist-jar"
          depends="jsr166xclean, jsr166xjar">

    <copy file="${jsr166xproduct.jar}" todir="${dist.dir}"/>

  </target>

  <!-- jsr166y -->


  <target name="jsr166ycompile"
          depends="init, configure-compiler"
          description="Compiles jsr166y sources">

    <mkdir dir="${build.jsr166y.dir}"/>

    <javac srcdir="${jsr166ysrc.dir}"
          destdir="${build.jsr166y.dir}"
            debug="${build.debug}"
       debuglevel="${build.debuglevel}"
      deprecation="${build.deprecation}"
           source="${build.sourcelevel}"
             fork="true">

      <include name="**/*.java"/>
      <compilerarg line="${build.args}"/>
      <compilerarg value="-XDignore.symbol.file=true"/>
      <compilerarg value="${bootclasspath.args}"/>

<!--       <compilerarg line="-Xlint -Xmaxwarns 1000"/> -->

    </javac>

  </target>



  <target name="jsr166yjar"
          depends="jsr166ycompile"
          description="Builds library jar from compiled sources">

    <mkdir dir="${build.jsr166ylib.dir}"/>

    <jar destfile="${jsr166yproduct.jar}" index="true">
      <fileset dir="${build.jsr166y.dir}"/>
    </jar>

  </target>



  <target name="jsr166ydocs"
          description="Builds javadocs with custom tags to build folder">

    <delete dir="${build.jsr166yjavadocs.dir}"/>
    <mkdir dir="${build.jsr166yjavadocs.dir}"/>

    <javadoc destdir="${build.jsr166yjavadocs.dir}"
             packagenames="jsr166y"
             link="${jdkapidocs.url}"
             source="${build.sourcelevel}"
             sourcepath="${topsrc.dir}:${jdksrc.dir}"
             additionalparam="-XDignore.symbol.file=true" />

  </target>


  <target name="jsr166ydist"
          depends="jsr166ydist-clean, jsr166ydist-jar, jsr166ydist-docs"
          description="Puts all distributable products in single hierarchy"/>



  <target name="jsr166yclean"
          description="Removes all build products">

    <delete dir="${build.jsr166y.dir}"/>
    <delete dir="${build.jsr166ylib.dir}"/>

  </target>



  <target name="jsr166ydist-clean"
          description="Removes all build and distribution products">

  </target>

  <target name="jsr166ydist-docs"
          description="Builds javadocs without custom tags to dist folder">

    <delete dir="${dist.jsr166yjavadocs.dir}"/>
    <mkdir dir="${dist.jsr166yjavadocs.dir}"/>

    <javadoc destdir="${dist.jsr166yjavadocs.dir}"
             packagenames="jsr166y"
             link="${jdkapidocs.url}"
             source="${build.sourcelevel}"
             sourcepath="${topsrc.dir}:${jdksrc.dir}"
             additionalparam="-XDignore.symbol.file=true" />

  </target>

  <target name="jsr166ydist-jar"
          depends="jsr166yclean, jsr166yjar">

    <copy file="${jsr166yproduct.jar}" todir="${dist.dir}"/>

  </target>


  <!-- extra166y -->


  <target name="extra166ycompile"
          depends="init, configure-compiler, jsr166ycompile"
          description="Compiles extra166y sources">

    <mkdir dir="${build.extra166y.dir}"/>

    <javac srcdir="${extra166ysrc.dir}"
          destdir="${build.extra166y.dir}"
            debug="${build.debug}"
            classpath="${jsr166yproduct.jar}"
       debuglevel="${build.debuglevel}"
      deprecation="${build.deprecation}"
           source="${build.sourcelevel}"
             fork="true">

      <include name="**/*.java"/>
      <compilerarg line="${build.args}"/>
      <compilerarg value="-XDignore.symbol.file=true"/>
      <compilerarg value="${bootclasspath.args}"/>

<!--       <compilerarg line="-Xlint -Xmaxwarns 1000"/> -->

    </javac>

  </target>



  <target name="extra166yjar"
          depends="extra166ycompile"
          description="Builds library jar from compiled sources">

    <mkdir dir="${build.extra166ylib.dir}"/>

    <jar destfile="${extra166yproduct.jar}" index="true">
      <fileset dir="${build.extra166y.dir}"/>
    </jar>

  </target>



  <target name="extra166ydocs"
          description="Builds javadocs with custom tags to build folder">

    <delete dir="${build.extra166yjavadocs.dir}"/>
    <mkdir dir="${build.extra166yjavadocs.dir}"/>

    <javadoc destdir="${build.extra166yjavadocs.dir}"
             packagenames="extra166y"
             link="${jdkapidocs.url}"
             source="${build.sourcelevel}"
             sourcepath="${topsrc.dir}:${jdksrc.dir}"
             additionalparam="-XDignore.symbol.file=true" />

  </target>


  <target name="extra166ydist"
          depends="extra166ydist-clean, extra166ydist-jar, extra166ydist-docs"
          description="Puts all distributable products in single hierarchy"/>



  <target name="extra166yclean"
          description="Removes all build products">

    <delete dir="${build.extra166y.dir}"/>
    <delete dir="${build.extra166ylib.dir}"/>

  </target>



  <target name="extra166ydist-clean"
          description="Removes all build and distribution products">

  </target>

  <target name="extra166ydist-docs"
          description="Builds javadocs without custom tags to dist folder">

    <delete dir="${dist.extra166yjavadocs.dir}"/>
    <mkdir dir="${dist.extra166yjavadocs.dir}"/>

    <javadoc destdir="${dist.extra166yjavadocs.dir}"
             packagenames="extra166y"
             link="${jdkapidocs.url}"
             source="${build.sourcelevel}"
             sourcepath="${topsrc.dir}:${jdksrc.dir}"
             additionalparam="-XDignore.symbol.file=true" />

  </target>

  <target name="extra166ydist-jar"
          depends="extra166yclean, extra166yjar">

    <copy file="${extra166yproduct.jar}" todir="${dist.dir}"/>

  </target>

  <!-- jsr166e -->

  <target name="jsr166ecompile"
          depends="configure-compiler"
          description="Compiles jsr166e sources">

    <mkdir dir="${build.jsr166e.dir}"/>

    <javac srcdir="${topsrc.dir}"
           destdir="${build.jsr166e.dir}"
           debug="${build.debug}"
           debuglevel="${build.debuglevel}"
           deprecation="${build.deprecation}"
           source="1.7"
           classpath=""
           includeAntRuntime="false"
           includeJavaRuntime="false"
           executable="${javac7}"
           fork="true">

      <include name="jsr166e/**/*.java"/>
      <compilerarg line="${build.args}"/>
      <compilerarg value="-XDignore.symbol.file=true"/>
      <compilerarg value="-Xlint:all"/>

    </javac>

  </target>



  <target name="jsr166ejar"
          depends="jsr166ecompile"
          description="Builds library jar from compiled sources">

    <mkdir dir="${build.jsr166elib.dir}"/>

    <jar destfile="${jsr166eproduct.jar}" index="true">
      <fileset dir="${build.jsr166e.dir}"/>
    </jar>

  </target>



  <target name="jsr166edocs"
          description="Builds javadocs with custom tags to build folder">

    <delete dir="${build.jsr166ejavadocs.dir}"/>
    <mkdir dir="${build.jsr166ejavadocs.dir}"/>

    <javadoc destdir="${build.jsr166ejavadocs.dir}"
             packagenames="jsr166e,jsr166e.extra"
             link="${jdkapi7docs.url}"
             source="1.7"
             sourcepath="${topsrc.dir}:${jdk7src.dir}:${jdksrc.dir}"
             executable="${javadoc7}"
             additionalparam="-XDignore.symbol.file=true" >
      <fileset dir="${topsrc.dir}" defaultexcludes="yes">
        <include name="jsr166e/**/*.java"/>
      </fileset>
    </javadoc>

  </target>


  <target name="jsr166edist"
          depends="jsr166edist-clean, jsr166edist-jar, jsr166edist-docs"
          description="Puts all distributable products in single hierarchy"/>



  <target name="jsr166eclean"
          description="Removes all build products">

    <delete dir="${build.jsr166e.dir}"/>
    <delete dir="${build.jsr166elib.dir}"/>

  </target>



  <target name="jsr166edist-clean"
          description="Removes all build and distribution products">

  </target>

  <target name="jsr166edist-docs"
          description="Builds javadocs without custom tags to dist folder">

    <delete dir="${dist.jsr166ejavadocs.dir}"/>
    <mkdir dir="${dist.jsr166ejavadocs.dir}"/>

    <javadoc destdir="${dist.jsr166ejavadocs.dir}"
             packagenames="jsr166e,jsr166e.extra"
             link="${jdkapidocs.url}"
             source="1.7"
             sourcepath="${topsrc.dir}:${jdksrc.dir}"
             additionalparam="-XDignore.symbol.file=true" />

  </target>

  <target name="jsr166edist-jar"
          depends="jsr166eclean, jsr166ejar">

    <copy file="${jsr166eproduct.jar}" todir="${dist.dir}"/>

  </target>

</project>

Doug Lea
ViewVC Help
Powered by ViewVC 1.0.8