<!--
/*
*******************************************************************************
* Copyright (C) 1997-2007, International Business Machines Corporation and    *
* others. All Rights Reserved.                                                *
*******************************************************************************
* This is the ant build file for ICU4J.  See readme.html for more information.
*/
-->

<project name="ICU4J" default="core" basedir=".">

  <!-- ### Begin Clover 1.2 setup ### -->
  <typedef resource="clovertypes" onerror="ignore" />
  <taskdef resource="clovertasks" onerror="ignore" />

  <target name="with.clover">
    <mkdir dir="tmp/" />
    <clover-setup initString="tmp/icu4j.db">
      <files>
        <exclude name="**/dev/**/*.java" />
      </files>
      <methodContext name="API" regexp="(.* )?public .*" />
    </clover-setup>
  </target>

  <target name="clover.summary" depends="with.clover">
    <clover-report>
      <current outfile="icu4j_html" summary="true">
        <format type="html" srcLevel="false" />
      </current>
    </clover-report>
  </target>
  <target name="clover.report" depends="with.clover">
    <clover-report>
      <current outfile="icu4j_html">
        <format type="html" />
      </current>
    </clover-report>
  </target>
  <target name="clover.log" depends="with.clover">
    <clover-log level="method" filter="private">
      <package name="com.ibm.icu.text" />
      <package name="com.ibm.icu.lang" />
      <package name="com.ibm.icu.math" />
      <package name="com.ibm.icu.util" />
      <package name="com.ibm.icu.charset" />
    </clover-log>
  </target>

  <!-- ### End Clover 1.2 setup ### -->

  <target name="checkAntVersion">
    <condition property="supported.ant.version">
      <or>
        <contains string="${ant.version}" substring="1.6." />
        <contains string="${ant.version}" substring="1.7." />
        <contains string="${ant.version}" substring="1.8." /> <!-- just in case -->
      </or>
    </condition>
    <antcall target="warnAntVersion" />
  </target>

  <target name="warnAntVersion" unless="supported.ant.version">
    <echo message="####################### WARNING #######################" />
    <echo message="The version of ant used by the current configuration" />
    <echo message="may not work well with this build script file.  Please" />
    <echo message="use ant 1.6 or later version." />
    <echo message="#######################################################" />
  </target>

  <target name="init" depends="initBase,initSrc"/>

  <target name="initBase"
          depends="checkAntVersion"
          description="Initialized ICU4J build environment">
    <tstamp />
    <property name="src.dir" value="src" />
    <property name="build.dir" value="classes" />
    <property name="api.dir" value="${src.dir}/com/ibm/icu/dev/tool/docs" />
    <property name="doc.dir" value="doc" />
    <property name="icudatajar.file" value="${src.dir}/com/ibm/icu/impl/data/icudata.jar" />
    <property name="testjar.file" value="icu4jtests.jar" />
    <property name="jar.file" value="icu4j.jar" />
    <property name="demos-jar.file" value="icu4jdemos.jar" />
    <property name="charsets.jar.file" value="icu4j-charsets.jar" />
    <property name="jarSrc.file" value="icu4jsrc.jar" />
    <property name="zipTestSrc.file" value="icu4jtsrc.zip" />
    <property name="jdk.wrapper.jar.file" value="icu4jwrapper.jar" />
    <property name="fragment.jar.file" value="icu4jfragment.jar" />
    <property name="eclipse.dir" value="${src.dir}/com/ibm/icu/dev/eclipse" />
    <property name="eclipse.projects.dir" value="eclipseProjects" />
    <property name="wrapper.build.dir" value="classes.wrapper" />
    <property name="jarDocs.file" value="icu4jdocs.jar" />
    <property name="ime.translit.jar.file" value="icutransime.jar" />
    <property name="ime.indic.jar.file" value="icuindicime.jar" />
    <property name="ime.translit.manifest" value="${src.dir}/com/ibm/icu/dev/tool/ime/translit/manifest.stub" />
    <property name="ime.indic.manifest" value="${src.dir}/com/ibm/icu/dev/tool/ime/indic/manifest.stub" />
    <property name="zip.file" value="../icu4j${DSTAMP}.zip" />
    <property name="zipSrc.file" value="../icu4jSrc${DSTAMP}.zip" />
    <property name="tzu.src.path" value="com/ibm/icu/dev/tool/tzu" />
    <property name="tzu.bin.dir" value="${basedir}/icu4jtzu" />
    <property name="tzu.jar.file" value="icutzu.jar" />
    <property name="tzu.test.dir" value="${basedir}/icu4jtzu/test" />
    <property name="tzu.temp.dir" value="${basedir}/icu4jtzu/Temp" />
    <property name="tzu.src.zip.file" value="icutzu-src.zip" />
    <property name="tzu.bin.zip.file" value="icutzu-bin.zip" />
    <property file="build.properties" />
    <!-- fix the data folder every time there is a version update-->

    <property name="icu4j.data.path" value="com/ibm/icu/impl/data/icudt${icu4j.data.version.number}b" />
    <property name="icu4j.testdata.path" value="com/ibm/icu/dev/data/testdata" />
    <property name="icu4j.javac.source" value="1.3" />
    <property name="icu4j.javac.target" value="1.3" />

    <path id="build.classpath">
      <pathelement path="${build.dir}" />
    </path>

    <property name="richedit.dir" value="richedit" />
    <property name="richedit.doc.dir" value="${richedit.dir}/doc" />
    <property name="richedit.jar.file" value="${richedit.dir}/richedit.jar" />
    <property name="richedit.zip.file" value="${richedit.dir}/richedit.zip" />
    <property name="richedit.manifest" value="${src.dir}/com/ibm/richtext/manifest.stub" />

    <!-- Load environment variables -->
    <property environment="env" />

    <!-- Capture the computer name in a cross-platform manner -->
    <property name="env.COMPUTERNAME" value="${env.HOSTNAME}" />

    <!-- JavaDoc params -->
    <property name="doc.params" value="-breakiterator -use -tagletpath ./classes -taglet com.ibm.icu.dev.tool.docs.ICUTaglet -group 'ICU Core' 'com.ibm.icu.lang*:com.ibm.icu.math*:com.ibm.icu.text*:com.ibm.icu.util*:com.ibm.icu.charset' -group 'ICU Tests' 'com.ibm.icu.dev.test*' -group 'Demos' 'com.ibm.icu.dev.demo*' -group 'ICU Tools' 'com.ibm.icu.dev*'" />
    <property name="richeditdoc.params" value="-breakiterator -use -tagletpath ./classes -taglet com.ibm.icu.dev.tool.docs.ICUTaglet -group 'Rich Text Editing' 'com.ibm.richtext*'" />

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

    <echo message="java home: ${java.home}" />
    <echo message="java version: ${java.version}" />
    <echo message="ant java version: ${ant.java.version}" />
    <echo message="${ant.version}" />
    <echo message="${env.COMPUTERNAME} with ${os.name} ${os.version} on ${os.arch}" />
    <echo message="clover initstring = '${clover.initstring}'" />

    <!-- ## Java version dependent build configuration ##-->
 
    <!-- JRE lib version used for building ICU4J -->
    <condition property="target.rt.version" value="J2SE13">
      <contains string="${java.version}" substring="1.3." />
    </condition>
    <condition property="target.rt.version" value="J2SE14">
      <contains string="${java.version}" substring="1.4." />
    </condition>
    <condition property="target.rt.version" value="J2SE15">
      <contains string="${java.version}" substring="1.5." />
    </condition>
    <condition property="target.rt.version" value="JAVASE6">
      <contains string="${java.version}" substring="1.6." />
    </condition>

    <fail message="Failed to detect Java runtime library version used for building ICU4J"
          unless="target.rt.version" />
    <echo message="target runtime environment: ${target.rt.version}" />

    <condition property="default.java.build.target">
      <equals arg1="${target.rt.version}" arg2="${default.target.rt.version}" />
    </condition>

    <!-- Specification title in manifest file -->
    <condition property="manifest.specification.title" value="ICU4J Compatible Build for ${target.rt.version}">
      <not>
        <isset property="default.java.build.target" />
      </not>
    </condition>
    <property name="manifest.specification.title" value="ICU4J" />

    <condition property="before.java14">
      <or>
        <equals arg1="${target.rt.version}" arg2="FOUNDATION10"/>
        <equals arg1="${target.rt.version}" arg2="J2SE13"/>
      </or>
    </condition>

    <condition property="before.java15">
      <or>
        <equals arg1="${target.rt.version}" arg2="FOUNDATION10"/>
        <equals arg1="${target.rt.version}" arg2="J2SE13"/>
        <equals arg1="${target.rt.version}" arg2="J2SE14"/>
      </or>
    </condition>

    <!-- JVM arguments for running test cases -->
    <condition property="test.jvm.args" value="-Xms192m -Xmx224m">
        <isset property="before.java14" />
    </condition>
    <condition property="test.jvm.args" value="-ea -Xms192m -Xmx224m -Xdisableexcessivegc">
      <and>
        <not>
          <isset property="before.java15" />
        </not>
        <equals arg1="${java.vm.vendor}" arg2="IBM Corporation"/>
      </and>
    </condition>
    <condition property="test.jvm.args" value="-ea -Xms192m -Xmx224m">
      <not>
        <isset property="test.jvm.args" />
      </not>
    </condition>

    <uptodate property="icu4j.resources" targetfile="${src.dir}/com/ibm/icu/impl/data">
      <!-- note must not have '/' before 'com' in srcfiles includes arg! -->
      <srcfiles dir="${build.dir}" includes="${icu4j.data.path}/res_index.res" />
    </uptodate>

    <uptodate property="icu4j.testdata.resources" targetfile="${src.dir}/com/ibm/icu/dev/data">
      <!-- note must not have '/' before 'com' in srcfiles includes arg! -->
      <srcfiles dir="${build.dir}" includes="${icu4j.testdatadata.path}/root.res" />
    </uptodate>

    <uptodate property="icu4j.module.resources" targetfile="${icudatajar.file}">
      <srcfiles dir="${build.dir}" includes="${icu4j.data.path}/*.icu" />
    </uptodate>
    <!-- <echo message="icu4j.module.resources result: ${icu4j.module.resources}" /> -->
    <tstamp>
      <format property="date.time" pattern="yyyy-MM-dd 'at' hh:mm:ss z" locale="en,US" />
    </tstamp>

    <echo message="Initialized at ${date.time}" />
  </target>

  <target name="displayBuildEnvWarning" unless="default.java.build.target">
    <echo message="####################### WARNING #######################" />
    <echo message="The JDK version used by the current build environment" />
    <echo message="does not match the reference JDK version for this" />
    <echo message="ICU4J release.  The build outputs may not be identical" />
    <echo message="to the official ICU4J binary distribution." />
    <echo message="#######################################################" />
  </target>

  <target name="initSrc"
          depends="buildMangle"
          description="Run the preprocessor tool to modify Java sources for the Java runtime lib currently used.">
    <antcall target="displayBuildEnvWarning" />
    <!-- Build CodeMangler -->
    <javac srcdir="${src.dir}" destdir="${build.dir}" classpathref="build.classpath" source="${icu4j.javac.source}" target="${icu4j.javac.target}">
      <include name="com/ibm/icu/dev/tool/docs/CodeMangler.java" />
    </javac>
    <!-- Run CodeMangler -->
    <antcall target="doMangle">
      <param name="target.defs" value="${target.rt.version}" />
      <param name="input.file" value="@preprocessor.txt" />
    </antcall>
  </target>

  <target name="normSrc"
          depends="buildMangle"
          description="Run the preprocessor to normalize Java sources to the ICU source repository target JDK version">
    <antcall target="doMangle">
      <param name="target.defs" value="${default.target.rt.version}" />
      <param name="input.file" value="@preprocessor.txt" />
    </antcall>
  </target>

  <target name="buildMangle" depends="initBase">
    <javac srcdir="${src.dir}" destdir="${build.dir}" classpathref="build.classpath" source="${icu4j.javac.source}" target="${icu4j.javac.target}">
      <include name="com/ibm/icu/dev/tool/docs/CodeMangler.java" />
    </javac>
  </target>

  <target name="doMangle">
    <echo message="Running source code preprocessor for [${target.defs}]"/>
    <java classname="com.ibm.icu.dev.tool.docs.CodeMangler" classpath="${build.dir}" logError="true">
      <arg value="-d${target.defs}" />
      <arg value="${input.file}" />
    </java>
  </target>

  <!-- build everything but dist-related stuff -->
  <target name="all" depends="core,tests,tools,richedit,demos,jar,docs" description="build all primary targets" />

  <target name="resources" depends="icudata,coreData,durationdata,testdata" description="builds all the resources" />

  <target name="icudata" depends="initBase" if="icu4j.resources">
    <!-- use this target to force resources to be rebuilt -->
    <unjar src="${icudatajar.file}" dest="${build.dir}" />
    <touch file="${build.dir}/${icu4j.data.path}/res_index.res" />
    <copy todir="${build.dir}/META-INF">
      <fileset dir="${src.dir}/META-INF" includes="**/*" />
    </copy>
  </target>

  <target name="durationdata" depends="initBase">
    <copy todir="${build.dir}/com/ibm/icu/impl/duration/impl/data">
      <fileset dir="${src.dir}/com/ibm/icu/impl/duration/impl/data" includes="index.txt, pfd*.xml"/>
    </copy>
  </target>

  <!--
    use this target to conditionally build resources only if icu4j.resources is set
    <target name="icu" depends="init" if="icu4j.resources">
        <unjar src="${src.dir}/com/ibm/icu/impl/data/ICULocaleData.jar" dest="${build.dir}"/>
        <touch file="${build.dir}/com/ibm/icu/impl/data/LocaleElements_index.class"/>
    </target>
 -->

  <!-- core does not build richedit or tests -->
  <target name="core" depends="init,coreData,icudata,durationdata" description="build core classes and data">
    <javac  sourcepath=""
            srcdir="${src.dir}"
            destdir="${build.dir}"
            classpathref="build.classpath"
            source="${icu4j.javac.source}"
            target="${icu4j.javac.target}"
            debug="on"
            deprecation="off"
            encoding="ascii">
      <include name="com/ibm/icu/charset/**/*.java" unless="before.java14" />
      <include name="com/ibm/icu/impl/**/*.java" />
      <include name="com/ibm/icu/lang/**/*.java" />
      <include name="com/ibm/icu/math/**/*.java" />
      <include name="com/ibm/icu/text/**/*.java" />
      <include name="com/ibm/icu/util/**/*.java" />
    </javac>
  </target>

  <target name="tests" depends="core,testdata" description="build tests">
    <javac  srcdir="${src.dir}"
            destdir="${build.dir}"
            classpathref="build.classpath"
            source="${icu4j.javac.source}"
            target="${icu4j.javac.target}"
            debug="on"
            deprecation="off">
      <exclude name="com/ibm/icu/dev/test/charset/**/*.java" if="before.java14" />
      <exclude name="com/ibm/icu/dev/test/perf/**/*.java" if="before.java14" />
      <include name="com/ibm/icu/dev/test/**/*.java" />
    </javac>

  </target>

  <target name="demos" depends="core,testdata" unless="before.java14" description="build demos">
    <javac  srcdir="${src.dir}"
            destdir="${build.dir}"
            classpathref="build.classpath"
            source="${icu4j.javac.source}"
            target="${icu4j.javac.target}"
            debug="on"
            deprecation="off">
      <include name="com/ibm/icu/dev/demo/**/*.java" />
      <include name="com/ibm/icu/dev/demo/*.java" />
    </javac>
  </target>

  <target name="indices" depends="icudata,build_indexgenerator">
    <java classname="com.ibm.icu.dev.tool.index.IndexGenerator" classpath="${build.dir}" logError="true">
      <arg value="${build.dir}/${icu4j.data.path}" />
    </java>
    <java classname="com.ibm.icu.dev.tool.index.IndexGenerator" classpath="${build.dir}" logError="true">
      <arg value="${build.dir}/${icu4j.data.path}/rbnf" />
    </java>
    <java classname="com.ibm.icu.dev.tool.index.IndexGenerator" classpath="${build.dir}" logError="true">
      <arg value="${build.dir}/${icu4j.data.path}/coll" />
    </java>
    <java classname="com.ibm.icu.dev.tool.index.IndexGenerator" classpath="${build.dir}" logError="true">
      <arg value="${build.dir}/${icu4j.data.path}/translit" />
    </java>
  </target>

  <target name="tools"
          depends="core"
          unless="before.java14"
          description="build tools">
    <javac  srcdir="${src.dir}"
            destdir="${build.dir}"
            classpathref="build.classpath"
            source="${icu4j.javac.source}"
            target="${icu4j.javac.target}"
            debug="on"
            deprecation="off">
      <exclude name="com/ibm/icu/dev/tool/cldr/*" />
      <exclude name="com/ibm/icu/dev/tool/localeconverter/*" if="before.java15" />
      <include name="com/ibm/icu/dev/tool/**/*.java" />
    </javac>
  </target>

  <target name="build_indexgenerator" depends="initBase">
    <javac  srcdir="${src.dir}"
            destdir="${build.dir}"
            classpathref="build.classpath"
            source="${icu4j.javac.source}"
            target="${icu4j.javac.target}"
            debug="on"
            deprecation="off">
      <include name="com/ibm/icu/dev/tool/index/IndexGenerator.java" />
    </javac>
  </target>

  <target name="docs" depends="init,docs13,docs14plus" description="build user javadoc" />

  <target name="docs13" if="before.java14">
    <mkdir dir="${doc.dir}" />
    <javadoc  packagenames="com.ibm.icu.lang,com.ibm.icu.text,com.ibm.icu.util,com.ibm.icu.math"
              sourcepath="${src.dir}"
              destdir="${doc.dir}"
              nodeprecatedlist="true"
              windowtitle="icu4j"
              doctitle="icu4j"
              encoding="iso-8859-1"
              docencoding="iso-8859-1"
              bottom="&lt;font size=-1>Copyright (c) ${current.year} IBM Corporation and others.&lt;/font>"
              link="http://java.sun.com/j2se/1.3/docs/api"
              source="1.4" />
  </target>

  <target name="docs14plus" depends="tools" unless="before.java14">
    <echo message="doc params: ${doc.params}" />
    <mkdir dir="${doc.dir}" />
    <javadoc  packagenames="com.ibm.icu.lang,com.ibm.icu.text,com.ibm.icu.util,com.ibm.icu.charset,com.ibm.icu.math,com.ibm.icu.dev"
              sourcepath="${src.dir}"
              destdir="${doc.dir}"
              nodeprecatedlist="true"
              windowtitle="icu4j"
              doctitle="icu4j"
              encoding="iso-8859-1"
              docencoding="iso-8859-1"
              bottom="&lt;font size=-1>Copyright (c) ${current.year} IBM Corporation and others.&lt;/font>"
              additionalparam="${doc.params}"
              link="http://java.sun.com/j2se/1.5/docs/api"
              source="1.4" />
  </target>

  <target name="fulldocs" depends="tools" unless="before.java14" description="build all javadoc">
    <echo message="doc params: ${doc.params}" />
    <mkdir dir="${doc.dir}" />
    <javadoc  packagenames="com.ibm.icu.*"
              sourcepath="${src.dir}"
              destdir="${doc.dir}"
              nodeprecatedlist="true"
              windowtitle="icu4j"
              doctitle="icu4j"
              encoding="iso-8859-1"
              docencoding="iso-8859-1"
              bottom="&lt;font size=-1>Copyright (c) ${current.year} IBM Corporation and others.&lt;/font>"
              additionalparam="${doc.params}"
              link="http://java.sun.com/j2se/1.5/docs/api"
              source="1.4" />
  </target>

  <target name="coreData" depends="initBase">
    <copy todir="${build.dir}/com/ibm/icu/impl/data">
      <fileset dir="${src.dir}/com/ibm/icu/impl/data" includes="*.icu,*.spp,*.brk" excludes="Transliterator_Han_Latin_*.txt" />
    </copy>
  </target>

  <target name="testdata" depends="initBase">
    <copy file="${src.dir}/com/ibm/icu/dev/data/rbbi/english.dict" todir="${build.dir}/com/ibm/icu/dev/data/rbbi" />
    <copy file="${src.dir}/com/ibm/icu/dev/test/rbbi/rbbitst.txt" todir="${build.dir}/com/ibm/icu/dev/test/rbbi" />
    <copy file="${src.dir}/com/ibm/icu/dev/test/charsetdet/CharsetDetectionTests.xml" todir="${build.dir}/com/ibm/icu/dev/test/charsetdet" />
    <copy todir="${build.dir}/com/ibm/icu/dev/test/serializable/data">
      <fileset dir="${src.dir}/com/ibm/icu/dev/test/serializable/data">
        <include name="**/*.dat" />
      </fileset>
    </copy>
    <copy file="${src.dir}/com/ibm/icu/dev/data/riwords.txt" todir="${build.dir}/com/ibm/icu/dev/data" />
    <copy file="${src.dir}/com/ibm/icu/dev/data/IDNATestInput.txt" todir="${build.dir}/com/ibm/icu/dev/data" />
    <javac  srcdir="${src.dir}"
            destdir="${build.dir}"
            classpathref="build.classpath"
            source="${icu4j.javac.source}"
            target="${icu4j.javac.target}"
            debug="on"
            deprecation="off">
      <include name="com/ibm/icu/dev/data/*.java" />
      <include name="com/ibm/icu/dev/data/resources/*.java" />
    </javac>
    <copy todir="${build.dir}/com/ibm/icu/dev/data">
      <fileset dir="${src.dir}/com/ibm/icu/dev/data" includes="*.spp,*.txt" />
    </copy>
    <copy todir="${build.dir}/com/ibm/icu/dev/data/unicode/">
      <fileset dir="${src.dir}/com/ibm/icu/dev/data/unicode/" includes="*.txt" />
    </copy>
    <copy file="${src.dir}/com/ibm/icu/dev/test/format/NumberFormatTestCases.txt" todir="${build.dir}/com/ibm/icu/dev/test/format" />
    <copy todir="${build.dir}/com/ibm/icu/dev/data/resources/">
      <fileset dir="${src.dir}/com/ibm/icu/dev/data/resources/" includes="*.properties" />
    </copy>
    <copy todir="${build.dir}/com/ibm/icu/dev/test/duration/testdata">
      <fileset dir="${src.dir}/com/ibm/icu/dev/test/duration/testdata/" includes="testdata*.txt" />
    </copy>
    <!-- use this target to force resources to be rebuilt -->
    <unjar src="${src.dir}/com/ibm/icu/dev/data/testdata.jar" dest="${build.dir}" />
    <touch file="${build.dir}/${icu4j.testdata.path}/root.res" />
  </target>

  <!-- builds richedit and richedit tests -->
  <target name="richedit" depends="init" description="build richedit classes and tests">
    <javac  srcdir="${src.dir}"
            destdir="${build.dir}"
            classpathref="build.classpath"
            source="${icu4j.javac.source}"
            target="${icu4j.javac.target}"
            debug="on"
            deprecation="off">
      <include name="com/ibm/richtext/**/*.java" />
    </javac>
    <copy todir="${build.dir}/com/ibm/richtext/textapps/resources" overwrite="yes" includeEmptyDirs="no">
      <fileset dir="${src.dir}/com/ibm/richtext/textapps/resources" includes="*.red" />
    </copy>
  </target>

  <!-- Creates the 3 release jar archives for distribution -->
  <target name="jarRelease" depends="jar,jarSrc,jarDocs" />

  <target name="jar"
          depends="core,indices,charsetsJar"
          description="build 'icu4j.jar' jar file">
    <jar jarfile="${jar.file}" compress="true">
      <fileset dir="${basedir}" includes="license.html, unicode-license.txt" />
      <fileset dir="${build.dir}" includes="com/ibm/icu/util/**/*,com/ibm/icu/text/**/*,com/ibm/icu/math/**/*,com/ibm/icu/impl/**/*,com/ibm/icu/lang/**/*" excludes="META-INF/services/**/*,com/ibm/icu/charset/**/*,${icu4j.data.path}/*.cnv,${icu4j.data.path}/cnvalias.icu" />
      <manifest>
        <attribute name="Built-By" value="${corp}" />
        <section name="common">
          <attribute name="Specification-Title" value="${manifest.specification.title}" />
          <attribute name="Specification-Version" value="${icu4j.spec.version.string}" />
          <attribute name="Specification-Vendor" value="ICU" />
          <attribute name="Implementation-Title" value=" ICU for Java" />
          <attribute name="Implementation-Version" value="${icu4j.impl.version.string}" />
          <attribute name="Implementation-Vendor" value="${corp}" />
          <attribute name="Implementation-Vendor-Id" value="com.ibm" />
          <attribute name="Copyright-Info" value="${copyright}" />
          <attribute name="Sealed" value="false" />
        </section>
      </manifest>
    </jar>
  </target>

  <target name="charsetsJar"
          depends="core,indices"
          unless="before.java14"
          description="build  'icu4j-charstes.jar' jar file">
    <echo message="${icu4j.data.path}/cnvalias.icu"/>
    <jar jarfile="${charsets.jar.file}" compress="true">
      <fileset dir="${basedir}" includes="license.html, unicode-license.txt" />
      <fileset dir="${build.dir}"
        includes="META-INF/services/**/*,com/ibm/icu/charset/**/*,${icu4j.data.path}/*.cnv,${icu4j.data.path}/cnvalias.icu" />
      <manifest>
        <attribute name="Built-By" value="${corp}" />
        <section name="common">
          <attribute name="Specification-Title" value="ICU4J Charsets" />
          <attribute name="Specification-Version" value="${icu4j.spec.version.string}" />
          <attribute name="Specification-Vendor" value="ICU" />
          <attribute name="Implementation-Title" value=" ICU for Java Charsets" />
          <attribute name="Implementation-Version" value="${icu4j.impl.version.string}" />
          <attribute name="Implementation-Vendor" value="${corp}" />
          <attribute name="Implementation-Vendor-Id" value="com.ibm" />
          <attribute name="Copyright-Info" value="${copyright}" />
          <attribute name="Sealed" value="false" />
        </section>
      </manifest>
    </jar>
  </target>

  <target name="jarTests" depends="tests,jar" description="build runtime 'icu4jtests.jar' jar file">
    <jar jarfile="${testjar.file}" compress="true">
      <fileset dir="${build.dir}" includes="com/ibm/icu/dev/test/**/*" />
      <fileset dir="${build.dir}" includes="com/ibm/icu/dev/data/**/*" />
      <manifest>
        <attribute name="Built-By" value="${corp}" />
        <section name="common">
          <attribute name="Specification-Title" value="ICU4J Tests" />
          <attribute name="Specification-Version" value="${icu4j.spec.version.string}" />
          <attribute name="Specification-Vendor" value="ICU" />
          <attribute name="Implementation-Title" value=" ICU for Java Tests" />
          <attribute name="Implementation-Version" value="${icu4j.impl.version.string}" />
          <attribute name="Implementation-Vendor" value="${corp}" />
          <attribute name="Implementation-Vendor-Id" value="com.ibm" />
          <attribute name="Copyright-Info" value="${copyright}" />
          <attribute name="Sealed" value="false" />
        </section>
      </manifest>
    </jar>
  </target>

  <target name="jarSrc" depends="init,normSrc" description="build source 'icu4jsrc.jar' jar file">
    <!--Create a jar archive of just the source for distribution.  The
        jar file will be created in the directory above the root ICU4J
        directory. The exclude pattern ${src.dir}/com/ibm/icu/dev/data/unicode/UnicodeData-*.txt
        and ${src.dir}/com/ibm/icu/dev/data/unicode/SpecialCasing-*.txt
        eliminates old archive copies like SpecialCasing-2.txt and
        UnicodeData-2.1.8.txt -->
    <jar  jarfile="${jarSrc.file}"
          compress="true">
      <fileset dir=".">
        <exclude name="${richedit.dir}/**/*" />
        <exclude name="test_*" />
        <exclude name="${src.dir}/com/ibm/icu/dev/data/unicode/UnicodeData-*.txt" />
        <exclude name="${src.dir}/com/ibm/icu/dev/data/unicode/SpecialCasing-*.txt" />
        <exclude name="${src.dir}/com/ibm/icu/dev/data/unicode/CompositionExclusions-*.txt" />
        <exclude name="${obsolete.dir}/**" />
        <exclude name="**/*~" />
        <exclude name="${src.dir}/**/*.class" />
        <exclude name="${build.dir}/**" />
        <exclude name="${doc.dir}/**" />
        <exclude name="*.jar" />
        <exclude name="*.zip" />
        <exclude name="*.gz" />
      </fileset>
      <manifest>
        <attribute name="Built-By" value="${corp}" />
        <section name="common">
          <attribute name="Specification-Title" value="ICU4J Sources" />
          <attribute name="Specification-Version" value="${icu4j.spec.version.string}" />
          <attribute name="Specification-Vendor" value="ICU" />
          <attribute name="Implementation-Title" value=" ICU for Java source files" />
          <attribute name="Implementation-Version" value="${icu4j.impl.version.string}" />
          <attribute name="Implementation-Vendor" value="${corp}" />
          <attribute name="Implementation-Vendor-Id" value="com.ibm" />
          <attribute name="Copyright-Info" value="${copyright}" />
          <attribute name="Sealed" value="false" />
        </section>
      </manifest>
    </jar>
  </target>

  <target name="jarDocs" depends="docs" description="build documentation 'icu4jdocs.jar' jar file">
    <jar jarfile="${jarDocs.file}" compress="true" basedir="${doc.dir}">
      <manifest>
        <attribute name="Built-By" value="${corp}" />
        <section name="common">
          <attribute name="Specification-Title" value="ICU4J Documents" />
          <attribute name="Specification-Version" value="${icu4j.spec.version.string}" />
          <attribute name="Specification-Vendor" value="ICU" />
          <attribute name="Implementation-Title" value=" ICU for Java documents" />
          <attribute name="Implementation-Version" value="${icu4j.impl.version.string}" />
          <attribute name="Implementation-Vendor" value="${corp}" />
          <attribute name="Implementation-Vendor-Id" value="com.ibm" />
          <attribute name="Copyright-Info" value="${copyright}" />
          <attribute name="Sealed" value="false" />
        </section>
      </manifest>
    </jar>
  </target>

  <target name="jarDemos" depends="demos" description="build demos to 'icu4jdemos.jar' jar file">
    <jar jarfile="${demos-jar.file}" compress="true">
      <fileset dir="${build.dir}" includes="com/ibm/icu/dev/demo/**" />
      <manifest>
        <attribute name="Built-By" value="${corp}" />
        <attribute name="Main-Class" value="com.ibm.icu.dev.demo.Launcher" />
        <attribute name="Class-Path" value="icu4j.jar" />
        <section name="common">
          <attribute name="Specification-Title" value="${manifest.specification.title}" />
          <attribute name="Specification-Version" value="${icu4j.spec.version.string}" />
          <attribute name="Specification-Vendor" value="ICU" />
          <attribute name="Implementation-Title" value=" ICU for Java Demos" />
          <attribute name="Implementation-Version" value="${icu4j.impl.version.string}" />
          <attribute name="Implementation-Vendor" value="${corp}" />
          <attribute name="Implementation-Vendor-Id" value="com.ibm" />
          <attribute name="Copyright-Info" value="${copyright}" />
          <attribute name="Sealed" value="false" />
        </section>
      </manifest>
    </jar>
  </target>

  <target name="translitIMEJar" depends="collator, transliterator" description="build transliterator IME 'icutransime.jar' jar file">
    <javac includes="com/ibm/icu/dev/tool/ime/translit/*.java" excludes="**/CVS/**/*" srcdir="${src.dir}" destdir="${build.dir}" classpathref="build.classpath" source="${icu4j.javac.source}" target="${icu4j.javac.target}" debug="on" deprecation="off" />
    <copy file="${src.dir}/com/ibm/icu/dev/tool/ime/translit/Transliterator.properties" todir="${build.dir}/com/ibm/icu/dev/tool/ime/translit" />
    <jar jarfile="${ime.translit.jar.file}" compress="true" basedir="${build.dir}" includes="com/ibm/icu/dev/tool/ime/translit/**/*" manifest="${ime.translit.manifest}">
      <metainf dir="${src.dir}/com/ibm/icu/dev/tool/ime/translit" includes="services/*" />
    </jar>
  </target>

  <target name="indicIMEJar" depends="init" description="build indic IME 'icuindicime.jar' jar file">
    <javac includes="com/ibm/icu/dev/tool/ime/indic/*.java" excludes="**/CVS/**/*" srcdir="${src.dir}" destdir="${build.dir}" classpathref="build.classpath" source="${icu4j.javac.source}" target="${icu4j.javac.target}" debug="on" deprecation="off" />
    <copy file="${src.dir}/com/ibm/icu/dev/tool/ime/indic/DisplayNames.properties" todir="${build.dir}/com/ibm/icu/dev/tool/ime/indic" />
    <jar jarfile="${ime.indic.jar.file}" compress="true" basedir="${build.dir}" includes="com/ibm/icu/dev/tool/ime/indic/**/*" manifest="${ime.indic.manifest}">
      <metainf dir="${src.dir}/com/ibm/icu/dev/tool/ime/indic" includes="services/*" />
    </jar>
  </target>

  <!--
    <target name="translitimeStandaloneJar" depends="collator, transliterator">
        <javac includes="com/ibm/icu/dev/tool/ime/translit/*.java"
            excludes="**/CVS/**/*"
            srcdir="${src.dir}"
            destdir="${build.dir}"
            classpathref="build.classpath"
            source="${icu4j.javac.source}"
            target="${icu4j.javac.target}"
            debug="on" deprecation="off"/>
        <copy toDir="${build.dir}/com/ibm/icu/dev/tool/ime/translit">
            <fileset dir="${src.dir}/com/ibm/icu/dev/tool/ime/translit" includes="*.properties"/>
        </copy>
        <jar jarfile="${ime.jar.file}"
            compress="true"
            basedir="${build.dir}"
            includes="com/ibm/icu/util/**/*,com/ibm/icu/text/**/*,com/ibm/icu/math/**/*,com/ibm/icu/impl/**/*,com/ibm/icu/lang/**/*,com/ibm/icu/dev/tool/ime/translit/**/*"
            manifest="${ime.translit.manifest}">
            <metainf dir="${src.dir}/com/ibm/icu/dev/tool/ime/translit" includes="services/*"/>
        </jar>
    </target>
-->

  <!-- jars up richedit but without tests -->
  <target name="richeditJar" depends="richedit" description="build richedit runtime 'richedit.jar' jar file">
    <mkdir dir="${richedit.dir}" />
    <jar jarfile="${richedit.jar.file}" compress="true" includes="com/ibm/richtext/**/*" excludes="com/ibm/richtext/test/**/*" basedir="${build.dir}" manifest="${richedit.manifest}" />
  </target>

  <!--
        Note:  I used to use -linkoffline http://java.sun.com/products/jdk/1.2/docs/api/ C:\jdk1.2.2\docs\api
        This links to core docs on Sun's site - a very nice feature.  But it requires the 1.2 docs to be
        on the build machine at a known location.
    -->

  <!-- the 'public' docs for richedit -->
  <target name="richeditDocs" depends="init" description="build richedit javadoc">
    <mkdir dir="${richedit.doc.dir}" />
    <javadoc  packagenames="com.ibm.richtext.demo,com.ibm.richtext.awtui,com.ibm.richtext.swingui,com.ibm.richtext.textpanel,com.ibm.richtext.styledtext,com.ibm.richtext.textlayout.attributes,com.ibm.richtext.print"
              sourcepath="${src.dir}"
              destdir="${richedit.doc.dir}"
              nodeprecatedlist="true"
              windowtitle="RichEdit Control"
              doctitle="RichEdit Control"
              encoding="iso-8859-1"
              docencoding="iso-8859-1"
              bottom="&lt;font size=-1>Copyright (c) 1998-2004 IBM Corporation and others.&lt;/font>" />
  </target>

  <!-- richedit alphaworks distribution - jar and docs, but no source -->
  <target name="richeditZip" depends="richeditJar,richeditDocs" description="build richedit zip file">
    <!--Create a zip archive of the richedit jar and readme -->
    <copy file="license.html" todir="${richedit.dir}" />
    <zip zipfile="${richedit.zip.file}" basedir="${richedit.dir}" includes="doc/**/*,richedit.jar,license.html" />
  </target>
  <target name="deleteCore" depends="initBase">
    <delete failonerror="no">
      <fileset dir="${build.dir}/com/ibm/icu/text" />
      <fileset dir="${build.dir}/com/ibm/icu/impl" />
      <fileset dir="${build.dir}/com/ibm/icu/math" />
      <fileset dir="${build.dir}/com/ibm/icu/lang" />
      <fileset dir="${build.dir}/com/ibm/icu/util" />
      <fileset dir="${build.dir}/com/ibm/icu/charset" />
    </delete>
  </target>
  <target name="check" depends="tests, jar, deleteCore" description="run standard icu4j test suite">
    <java classname="com.ibm.icu.dev.test.TestAll" fork="yes" failonerror="true">
      <jvmarg line="${test.jvm.args}"/>
      <arg value="-n" />
      <classpath>
        <pathelement path="${java.class.path}/" />
        <pathelement location="${jar.file}" />
        <pathelement location="${charsets.jar.file}" />
        <pathelement location="clover.jar" />
        <pathelement path="${build.dir}" />
      </classpath>
    </java>
  </target>

  <target name="exhaustiveCheck" depends="tests, jar, deleteCore" description="run standard icu4j test suite in exhaustive mode">
    <java classname="com.ibm.icu.dev.test.TestAll" fork="yes" failonerror="true">
      <jvmarg line="${test.jvm.args}"/>
      <arg value="-n" />
      <arg value="-e10" />
      <classpath>
        <pathelement path="${java.class.path}/" />
        <pathelement location="${jar.file}" />
        <pathelement location="${charsets.jar.file}" />
        <pathelement location="clover.jar" />
        <pathelement path="${build.dir}" />
      </classpath>
    </java>
  </target>

  <target name="secure" depends="jarTests" description="builds icu4j.jar and icu4jtests.jar" />

  <target name="secureCheck" depends="secure" description="run secure (applet-like) icu4j test suite">
    <java classname="com.ibm.icu.dev.test.TestAll" fork="yes" failonerror="true">
      <jvmarg line="${test.jvm.args}"/>
      <!-- jvmarg value="-verbose"/ -->
      <!-- (use for debugging, LOTS of output) <jvmarg value="-Djava.security.debug=access:trace"/ -->
      <!-- <jvmarg value="-Djava.security.debug=access:failure,domain"/> -->
      <jvmarg value="-Djava.security.manager" />
      <jvmarg value="-Djava.security.policy=${src.dir}/com/ibm/icu/dev/test/security.policy" />
      <!--<jvmarg value="-Djava.security.debug=access:failure"/>-->
      <arg value="-w" />
      <arg value="-nothrow" />
      <classpath>
        <pathelement location="clover.jar" />
        <pathelement location="${jar.file}" />
        <pathelement location="${charsets.jar.file}" />
        <pathelement location="${testjar.file}" />
      </classpath>
    </java>
  </target>

  <target name="noData" depends="core, tests" description="builds ICU4J without any data">
    <delete failonerror="no">
      <fileset dir="${build.dir}/${icu4j.data.path}/../" includes="Holiday*.class" />
      <fileset dir="${build.dir}/${icu4j.data.path}/../" includes="BreakIterator*.class" />
      <fileset dir="${build.dir}/${icu4j.data.path}" />
      <fileset dir="${build.dir}/${icu4j.testdata.path}" />
      <fileset dir="${build.dir}/${icu4j.testdata.path}/../" />
    </delete>
  </target>
  <target name="noDataCheck" depends="noData" description="runs the tests when no data is present">
    <java classname="com.ibm.icu.dev.test.TestAll" fork="yes" failonerror="true">
      <arg value="-nothrow" />
      <arg value="-nodata" />
      <classpath>
        <pathelement location="clover.jar" />
        <pathelement location="${build.dir}" />
      </classpath>
    </java>
  </target>

  <target name="_requires14" if="before.java14">
    <echo message="One of your targets requires JAVA_HOME to be set to JDK version 1.4 or newer" />
  </target>

  <target name="_checktags" depends="tools" unless="before.java14">
    <echo message="doc params: ${doc.params}" />
    <javadoc sourcepath="${src.dir}" packagenames="com.ibm.icu.*" excludepackagenames="com.ibm.icu.dev.*,com.ibm.icu.impl.*" classpath="${build.dir}" source="1.4">
      <doclet name="com.ibm.icu.dev.tool.docs.CheckTags" path="${build.dir}">
        <!-- <param name="-short"/> -->
      </doclet>
    </javadoc>
  </target>

  <target name="checktags" depends="_requires14,_checktags" description="check API tags before release" />

  <target name="gatherapi" depends="tools" unless="before.java14" description="run API database generator tool">
    <javadoc classpath="${build.dir}" sourcepath="${src.dir}" packagenames="com.ibm.icu.lang,com.ibm.icu.math,com.ibm.icu.text,com.ibm.icu.util" source="1.4">
      <doclet name="com.ibm.icu.dev.tool.docs.GatherAPIData" path="${build.dir}">
        <param name="-name" value="ICU4J ${icu4j.impl.version.string}" />
        <param name="-output" value="${api.dir}/icu4j${icu4j.version.number}.api" />
        <param name="-internal" />
        <param name="-gzip" />
      </doclet>
    </javadoc>
  </target>

  <target name="gatherapi.with.version" depends="tools" unless="before.java14" description="run API database generator tool">
    <javadoc classpath="${build.dir}" sourcepath="${src.dir}" packagenames="com.ibm.icu.lang,com.ibm.icu.math,com.ibm.icu.text,com.ibm.icu.util" source="1.4">
      <doclet name="com.ibm.icu.dev.tool.docs.GatherAPIData" path="${build.dir}">
        <param name="-name" value="ICU4J ${icu4j.impl.version.string}" />
        <param name="-output" value="${api.dir}/icu4j${icu4j.version.number}.stver.api" />
        <param name="-internal" />
        <param name="-version" />
      </doclet>
    </javadoc>
  </target>

  <target name="apireport" depends="tools, gatherapi" unless="beofre.java14" description="run API report generator tool">
    <java classname="com.ibm.icu.dev.tool.docs.ReportAPI" classpath="${build.dir}" failonerror="true">
      <arg value="-old:" />
      <arg value="${api.dir}/icu4j${icu4j.previous.version.number}.api.gz" />
      <arg value="-new:" />
      <arg value="${api.dir}/icu4j${icu4j.version.number}.api.gz" />
      <arg value="-html" />
      <arg value="-internal" />
      <arg value="-out:" />
      <arg value="${api.report.out}" />
    </java>
  </target>

  <target name="clean" depends="initBase" description="remove all build targets">
    <delete dir="${build.dir}" />
    <delete dir="${doc.dir}" />
    <delete file="${jar.file}" />
    <delete file="${charsets.jar.file}" />
    <delete dir="${richedit.dir}" />
    <delete file="${testjar.file}" />
    <delete file="${jarSrc.file}" />

    <delete dir="${eclipse.projects.dir}" />
    <delete dir="${wrapper.build.dir}" />
    <delete file="${zipTestSrc.file}" />
    <delete file="${jdk.wrapper.jar.file}" />
    <delete file="${fragment.jar.file}"/>

    <delete dir="${tzu.bin.dir}" />
    <delete file="${tzu.bin.zip.file}" />
    <delete file="${tzu.src.zip.file}" />
  </target>

  <target name="moduleJar" depends="initBase" description="modular build of 'icu4j.jar' jar file">
    <jar jarfile="${jar.file}" compress="true" includes="com/ibm/icu/util/**/*,com/ibm/icu/text/**/*,com/ibm/icu/math/**/*,com/ibm/icu/impl/**/*,com/ibm/icu/lang/**/*" basedir="${build.dir}">
      <manifest>
        <attribute name="Built-By" value="${corp}" />
        <section name="common">
          <attribute name="Specification-Title" value="ICU4J Modularized Build" />
          <attribute name="Specification-Version" value="${icu4j.spec.version.string}" />
          <attribute name="Specification-Vendor" value="ICU" />
          <attribute name="Implementation-Title" value=" ICU for Java Module" />
          <attribute name="Implementation-Version" value="${icu4j.impl.version.string}" />
          <attribute name="Implementation-Vendor" value="${corp}" />
          <attribute name="Implementation-Vendor-Id" value="com.ibm" />
          <attribute name="Copyright-Info" value="${copyright}" />
          <attribute name="Sealed" value="false" />
        </section>
      </manifest>
    </jar>
  </target>

  <patternset id="common.test.sources">
    <include name="com/ibm/icu/dev/test/TestFmwk.java" />
    <include name="com/ibm/icu/dev/test/TestLog.java" />
    <include name="com/ibm/icu/dev/test/TestUtil.java" />
    <include name="com/ibm/icu/dev/test/UTF16Util.java" />
    <include name="com/ibm/icu/dev/test/TestAll.java" />
  </patternset>

  <!-- Module: BreakIterator -->
  <target name="breakIterator" depends="init,copyFullPropsData" description="modular build of break iterator services">
    <javac srcdir="${src.dir}"
           destdir="${build.dir}"
           source="${icu4j.javac.source}"
           target="${icu4j.javac.target}"
           classpathref="build.classpath"
           debug="on"
           deprecation="off">
      <include name="com/ibm/icu/impl/UCharacterName.java"/>
      <include name="com/ibm/icu/impl/data/*Break*.java"/>
      <include name="com/ibm/icu/lang/**/*.java"/>
      <include name="com/ibm/icu/text/*BreakIterator*.java"/>
      <include name="com/ibm/icu/text/UnicodeSetIterator.java"/>
    </javac>
    <copy file="${src.dir}/com/ibm/icu/impl/data/th.brk"
          todir="${build.dir}/com/ibm/icu/impl/data/"/>
  </target>

  <target name="breakIteratorTests" depends="breakIterator" description="test breakIterator modular build target">
    <javac srcdir="${src.dir}"
           destdir="${build.dir}"
           classpathref="build.classpath"
           source="${icu4j.javac.source}"
           target="${icu4j.javac.target}"
           debug="on" deprecation="off">
      <patternset refid="common.test.sources" />
      <include name="com/ibm/icu/dev/test/rbbi/**/*.java"/>
    </javac>
    <copy file="${src.dir}/com/ibm/icu/dev/test/rbbi/rbbitst.txt"
          todir="${build.dir}/com/ibm/icu/dev/test/rbbi"/>
  </target>

  <!-- Module: Calendar -->
  <target name="copyCalendarData" depends="initBase">
    <!-- Calendar does not require Collation data, BreakIterator data -->
    <unjar src="${icudatajar.file}" dest="${build.dir}">
      <patternset>
        <include name="**/pnames.icu" />
        <include name="**/ucase.icu" />
        <include name="**/unorm.icu" />
        <include name="**/uprops.icu" />
        <include name="**/unames.icu" />
        <include name="**/*.res" />
        <exclude name="**/coll/*.res" />
        <exclude name="**/translit/*.res" />
        <exclude name="**/rbnf/*.res" />
      </patternset>
    </unjar>
    <touch file="${build.dir}/${icu4j.data.path}/uprops.icu" />
  </target>

  <target name="calendar" depends="init,copyCalendarData" description="modular build of calendar services">
    <javac srcdir="${src.dir}"
           destdir="${build.dir}"
           source="${icu4j.javac.source}"
           target="${icu4j.javac.target}"
           classpathref="build.classpath"
           debug="on"
           deprecation="off">
      <include name="com/ibm/icu/impl/data/*Holiday*.java"/>
      <include name="com/ibm/icu/lang/UCharacter.java"/>
      <include name="com/ibm/icu/text/UnicodeSetIterator.java"/>
      <include name="com/ibm/icu/text/NumberFormatServiceShim.java"/>
      <include name="com/ibm/icu/util/*Calendar*.java"/>
    </javac>
  </target>

  <target name="calendarTests" depends="calendar,testdata" description="test calendar modular build target">
    <javac srcdir="${src.dir}"
           destdir="${build.dir}"
           classpathref="build.classpath"
           source="${icu4j.javac.source}"
           target="${icu4j.javac.target}"
           debug="on"
           deprecation="off">
      <patternset refid="common.test.sources" />
      <include name="com/ibm/icu/dev/test/calendar/**/*.java" />
    </javac>
  </target>

  <!-- Module: Collator -->
  <target name="copyCollatorData" depends="initBase">
    <unjar src="${icudatajar.file}" dest="${build.dir}">
      <patternset>
        <include name="**/*.icu" />
        <include name="**/coll/*.res" />
        <include name="**/*.brk" />
      </patternset>
    </unjar>
    <touch file="${build.dir}/${icu4j.data.path}/uprops.icu" />
  </target>

  <target name="collator" depends="init,copyCollatorData" description="modular build of collator services">
    <javac srcdir="${src.dir}"
           destdir="${build.dir}"
           classpathref="build.classpath"
           source="${icu4j.javac.source}"
           target="${icu4j.javac.target}"
           debug="on"
           deprecation="off">
      <include name="com/ibm/icu/impl/data/*Break*.java"/>
      <include name="com/ibm/icu/text/*BreakIterator*.java"/>
      <include name="com/ibm/icu/text/*Collation*.java"/>
      <include name="com/ibm/icu/text/*Collator*.java"/>
      <include name="com/ibm/icu/text/Normalizer.java"/>
      <include name="com/ibm/icu/text/Replaceable.java"/>
      <include name="com/ibm/icu/text/ReplaceableString.java"/>
      <include name="com/ibm/icu/text/UnicodeFilter.java"/>
      <include name="com/ibm/icu/text/UnicodeSetIterator.java"/>
      <include name="com/ibm/icu/text/UTF16.java"/>
    </javac>
  </target>

  <target name="collatorTests" depends="collator,testdata" description="test collator modular build target">
    <javac srcdir="${src.dir}"
           destdir="${build.dir}"
           classpathref="build.classpath"
           source="${icu4j.javac.source}"
           target="${icu4j.javac.target}"
           debug="on"
           deprecation="off">
      <patternset refid="common.test.sources" />
      <include name="com/ibm/icu/dev/test/collator/**/*.java"/>
      <include name="java,com/ibm/icu/dev/test/search/**/*.java"/>
      <exclude name="com/ibm/icu/dev/test/collator/RandomCollator.java"/>
    </javac>
  </target>

  <!-- Module: Compression -->
  <target name="compression" depends="init" description="modular build of compression services">
    <javac srcdir="${src.dir}"
           destdir="${build.dir}"
           source="${icu4j.javac.source}"
           target="${icu4j.javac.target}"
           classpathref="build.classpath"
           debug="on"
           deprecation="off">
      <include name="com/ibm/icu/text/SCSU.java"/>
      <include name="com/ibm/icu/text/UnicodeCompressor.java"/>
      <include name="com/ibm/icu/text/UnicodeDecompressor.java"/>
    </javac>
  </target>

  <target name="compressionTests" depends="compression" description="test compression modular build target">
    <javac srcdir="${src.dir}"
           destdir="${build.dir}"
           classpathref="build.classpath"
           source="${icu4j.javac.source}"
           target="${icu4j.javac.target}"
           debug="on"
           deprecation="off">
      <patternset refid="common.test.sources" />
      <include name="com/ibm/icu/dev/test/compression/**/*.java"/>
    </javac>
  </target>

  <!-- Module: Format -->
  <target name="copyFormatData" depends="initBase" if="icu4j.module.resources">
    <!-- Format does not require BreakIterator data -->
    <unjar src="${icudatajar.file}" dest="${build.dir}">
      <patternset>
        <include name="**/*.icu" />
        <include name="**/*.res" />
        <exclude name="**/translit/*.res" />
      </patternset>
    </unjar>
    <touch file="${build.dir}/${icu4j.data.path}/uprops.icu" />
  </target>

  <target name="format" depends="init,copyFormatData" description="modular build of formatting services">
    <javac srcdir="${src.dir}"
           destdir="${build.dir}"
           source="${icu4j.javac.source}"
           target="${icu4j.javac.target}"
           classpathref="build.classpath"
           debug="on"
           deprecation="off">
      <include name="com/ibm/icu/lang/UCharacter.java"/>
      <include name="com/ibm/icu/text/*Collator*.java"/>
      <include name="com/ibm/icu/text/*Format*.java"/>
      <include name="com/ibm/icu/text/UnicodeSetIterator.java"/>
      <include name="com/ibm/icu/util/CalendarServiceShim.java"/>    </javac>
  </target>

  <target name="formatTests" depends="format,testdata" description="test format modular build target">
    <javac srcdir="${src.dir}"
           destdir="${build.dir}"
           classpathref="build.classpath"
           source="${icu4j.javac.source}"
           target="${icu4j.javac.target}"
           debug="on"
           deprecation="off">
      <patternset refid="common.test.sources" />
      <include name="com/ibm/icu/dev/test/format/**/*.java"/>
      <exclude name="com/ibm/icu/dev/test/format/GlobalizationPreferencesTest.java"/>
    </javac>
    <copy file="${src.dir}/com/ibm/icu/dev/test/format/NumberFormatTestCases.txt"
          todir="${build.dir}/com/ibm/icu/dev/test/format"/>
  </target>

  <!-- Module: Normalizer -->
  <target name="normalizerData" depends="initBase">
    <unjar src="${icudatajar.file}" dest="${build.dir}">
      <patternset>
        <include name="**/ucase.icu" />
        <include name="**/unorm.icu" />
        <include name="**/uprops.icu" />
        <include name="**/pnames.icu" />
        <include name="**/unames.icu" />
      </patternset>
    </unjar>
    <touch file="${build.dir}/${icu4j.data.path}/uprops.icu" />
  </target>

  <target name="normalizer" depends="init,normalizerData" description="modular build of normalizer services">
    <javac includes="com/ibm/icu/text/Normalizer.java,com/ibm/icu/text/CanonicalIterator.java,com/ibm/icu/text/UTF16.java,com/ibm/icu/text/UCharacterIterator.java,com/ibm/icu/text/UForwardCharacterIterator.java,com/ibm/icu/text/Replaceable.java,com/ibm/icu/text/ReplaceableString.java,com/ibm/icu/text/UnicodeFilter.java,com/ibm/icu/text/UnicodeSetIterator.java,com/ibm/icu/lang/**/*"
            excludes="**/CVS/**/*,com/ibm/icu/lang/UScriptRun.java, com/ibm/icu/impl/ICUListResourceBundle.java, com/ibm/icu/impl/UtilityExtensions.java,com/ibm/icu/impl/TrieBuilder.java,com/ibm/icu/impl/IntTrieBuilder.java,com/ibm/icu/impl/BOCU.java,com/ibm/icu/impl/UnicodeCharacterIterator.java"
           srcdir="${src.dir}"
           destdir="${build.dir}"
           source="${icu4j.javac.source}"
           target="${icu4j.javac.target}"
           classpathref="build.classpath"
           debug="on"
           deprecation="off">
      <include name="com/ibm/icu/lang/**/*"/>
      <include name="com/ibm/icu/text/CanonicalIterator.java"/>
      <include name="com/ibm/icu/text/Normalizer.java"/>
      <include name="com/ibm/icu/text/Replaceable.java"/>
      <include name="com/ibm/icu/text/ReplaceableString.java"/>
      <include name="com/ibm/icu/text/UCharacterIterator.java"/>
      <include name="com/ibm/icu/text/UForwardCharacterIterator.java"/>
      <include name="com/ibm/icu/text/UnicodeFilter.java"/>
      <include name="com/ibm/icu/text/UnicodeSetIterator.java"/>
      <include name="com/ibm/icu/text/UTF16.java"/>
    </javac>
  </target>

  <target name="normalizerTests" depends="normalizer">
    <javac srcdir="${src.dir}"
           destdir="${build.dir}"
           classpathref="build.classpath"
           source="${icu4j.javac.source}"
           target="${icu4j.javac.target}"
           debug="on"
           deprecation="off">
      <patternset refid="common.test.sources" />
      <include name="com/ibm/icu/dev/test/normalizer/**/*.java"/>
      <exclude name="com/ibm/icu/dev/test/normalizer/TestDeprecatedNormalizerAPI.java"/>
    </javac>
  </target>

  <!-- Module: Basic Properties / Full Properties -->
  <target name="copyBasicPropsData" depends="initBase">
    <unjar src="${icudatajar.file}" dest="${build.dir}">
      <patternset>
        <include name="**/unorm.icu" />
        <include name="**/uprops.icu" />
        <include name="**/ubidi.icu" />
        <include name="**/ucase.icu" />
        <include name="**/pnames.icu" />
        <include name="**/unames.icu" />
      </patternset>
    </unjar>
    <touch file="${build.dir}/${icu4j.data.path}/uprops.icu" />
  </target>

  <target name="copyFullPropsData" depends="initBase">
    <unjar src="${icudatajar.file}" dest="${build.dir}">
      <patternset>
        <include name="**/unorm.icu" />
        <include name="**/uprops.icu" />
        <include name="**/ubidi.icu" />
        <include name="**/ucase.icu" />
        <include name="**/unames.icu" />
        <include name="**/pnames.icu" />
        <include name="**/*.res" />
        <include name="**/*.brk" />
        <exclude name="**/coll/*.res" />
        <exclude name="**/translit/*.res" />
        <exclude name="**/rbnf/*.res" />
      </patternset>
    </unjar>
    <touch file="${build.dir}/${icu4j.data.path}/uprops.icu" />
  </target>

  <target name="propertiesBasic" depends="init,propertiesClasses,copyBasicPropsData" description="modular build of basic character properties">
  </target>

  <target name="propertiesFull" depends="init,propertiesClasses,copyFullPropsData" description="modular build of full character properties">
  </target>

  <target name="propertiesBasicTests" depends="propertiesBasic,propertiesTests" description="modular build of basic character properties">
  </target>

  <target name="propertiesFullTests" depends="propertiesFull,propertiesTests" description="modular build of full character properties">
  </target>

  <target name="propertiesClasses">
    <javac srcdir="${src.dir}"
           destdir="${build.dir}"
           source="${icu4j.javac.source}"
           target="${icu4j.javac.target}"
           classpathref="build.classpath"
           debug="on"
           deprecation="off">
      <include name="com/ibm/icu/impl/data/*Break*.java"/>
      <include name="com/ibm/icu/lang/**/*"/>
      <include name="com/ibm/icu/text/*BreakDictionary*.java"/>
      <include name="com/ibm/icu/text/*BreakIterator*.java"/>
      <include name="com/ibm/icu/text/UnicodeSetIterator.java"/>
    </javac>
  </target>

  <target name="propertiesTests">
    <javac srcdir="${src.dir}"
           destdir="${build.dir}"
           classpathref="build.classpath"
           source="${icu4j.javac.source}"
           target="${icu4j.javac.target}"
           debug="on"
           deprecation="off">
      <patternset refid="common.test.sources" />
      <include name="com/ibm/icu/dev/test/lang/**/*.java"/>
      <exclude name="com/ibm/icu/dev/test/lang/TestUScriptRun.java"/>
    </javac>
    <copy file="${src.dir}/com/ibm/icu/dev/data/unicode/SpecialCasing.txt"
          todir="${build.dir}/com/ibm/icu/dev/data/unicode/" />
  </target>

  <!-- Module: Transliterator -->
  <target name="copyTranslitData" depends="initBase">
    <!-- Calendar does not require Collation data, BreakIterator data -->
    <unjar src="${icudatajar.file}" dest="${build.dir}">
      <patternset>
        <include name="**/unorm.icu" />
        <include name="**/uprops.icu" />
        <include name="**/ubidi.icu" />
        <include name="**/ucase.icu" />
        <include name="**/unames.icu" />
        <include name="**/pnames.icu" />
        <include name="**/*.brk" />
        <include name="**/translit/*.res" />
      </patternset>
    </unjar>
    <touch file="${build.dir}/${icu4j.data.path}/uprops.icu" />
  </target>

  <target name="transliterator" depends="init,propertiesClasses,copyTranslitData" description="modular build of unicode transform services">
    <javac srcdir="${src.dir}"
           destdir="${build.dir}"
           source="${icu4j.javac.source}"
           target="${icu4j.javac.target}"
           classpathref="build.classpath"
           debug="on"
           deprecation="off">
      <include name="com/ibm/icu/impl/*Iterator*.java"/>
      <include name="com/ibm/icu/impl/*Property*.java"/>
      <include name="com/ibm/icu/impl/data/ResourceReader.java"/>
      <include name="com/ibm/icu/impl/UtilityExtensions.java"/>
      <include name="com/ibm/icu/text/*Transliterator*.java"/>
      <include name="com/ibm/icu/text/UnicodeSetIterator.java"/>
    </javac>
  </target>

  <target name="transliteratorTests" depends="transliterator" description = "test transliterator modular build target">
    <javac srcdir="${src.dir}"
           destdir="${build.dir}"
           classpathref="build.classpath"
           source="${icu4j.javac.source}"
           target="${icu4j.javac.target}"
           debug="on"
           deprecation="off">
      <patternset refid="common.test.sources" />
      <include name="com/ibm/icu/dev/test/translit/**/*.java"/>
      <exclude name="com/ibm/icu/dev/test/translit/UnicodeFilterLogic*.java"/>
    </javac>
  </target>

  <!-- Module: StringPrep, IDNA -->
  <target name="copyStringPrepData" depends="initBase">
    <unjar src="${icudatajar.file}" dest="${build.dir}">
      <patternset>
        <include name="**/*.spp" />
        <include name="**/ubidi.icu" />
        <include name="**/ucase.icu" />
        <include name="**/unorm.icu" />
        <include name="**/uprops.icu" />
        <include name="**/pnames.icu" />
        <include name="**/unames.icu" />
      </patternset>
    </unjar>
  </target>

  <target name="stringPrep" depends="init,normalizer,copyStringPrepData" description="modular build of stringprep services">
    <javac srcdir="${src.dir}"
           destdir="${build.dir}"
           source="${icu4j.javac.source}"
           target="${icu4j.javac.target}"
           classpathref="build.classpath"
           debug="on"
           deprecation="off">
      <include name="com/ibm/icu/impl/*StringPrep*.java"/>
      <include name="com/ibm/icu/text/*IDNA*.java"/>
      <include name="com/ibm/icu/text/*StringPrep*.java"/>
    </javac>
  </target>

  <target name="stringPrepTests" depends="stringPrep" description="test stringPrep modular build target">
    <javac srcdir="${src.dir}"
           destdir="${build.dir}"
           classpathref="build.classpath"
           source="${icu4j.javac.source}"
           target="${icu4j.javac.target}"
           debug="on"
           deprecation="off">
      <patternset refid="common.test.sources" />
      <include name="com/ibm/icu/dev/test/stringprep/**/*.java"/>
    </javac>
    <unjar src="${src.dir}/com/ibm/icu/dev/data/testdata.jar" dest="${build.dir}">
      <patternset>
        <include name="**/*.spp"/>
        <include name="**/idna_rules.res"/>
      </patternset>
    </unjar>
  </target>



  <target name="excludeCharset" depends="core" description="excludes charset module from ICU4J">
    <delete failonerror="yes">
      <fileset dir="${build.dir}/com/ibm/icu/impl/data/icudt${icu4j.data.version.number}b/">
        <include name="*.cnv" />
        <include name="cnvalias.icu" />
      </fileset>
      <fileset dir="${build.dir}/com/ibm/icu/charset" />
      <fileset dir="${build.dir}/META-INF/" />
    </delete>
  </target>
  <target name="excludeCharsetTests" depends="tests" description="excludes charset  test from ICU4J">
    <delete failonerror="yes">
      <fileset dir="${build.dir}/com/ibm/icu/dev/test/charset" />
    </delete>
  </target>

  <target name="moduleCheck" depends="initBase" description="run tests for module jar">
    <java classname="com.ibm.icu.dev.test.TestAll" fork="yes" failonerror="true">
      <jvmarg line="${test.jvm.args}"/>
      <arg value="-nothrow" />
      <arg value="-nodata" />
      <classpath>
        <pathelement location="${build.dir}" />
      </classpath>
    </java>
  </target>

  <!-- build the extra Transliterator data pertaining to Han-Latin transliteration -->
  <target name="extraTransliteratorData" depends="initBase" description="build han-to-latin transliterator data (normally omitted)">
    <copy todir="${build.dir}/com/ibm/icu/impl/data">
      <fileset dir="${src.dir}/com/ibm/icu/impl/data" includes="Transliterator_Han_Latin_*.txt" />
    </copy>
  </target>

  <!-- Target for builing XLIFF2ICUConverter Jar -->

  <target name="xliff" depends="init" description="build xliff converter tool">
    <javac sourcepath="" srcdir="${src.dir}" destdir="${build.dir}" classpathref="build.classpath" source="${icu4j.javac.source}" target="${icu4j.javac.target}" debug="on" deprecation="off">

      <include name="com/ibm/icu/dev/tool/localeconverter/CalculateCRC32.java" />
      <include name="com/ibm/icu/dev/tool/localeconverter/XLIFF2ICUConverter.java" />
      <include name="com/ibm/icu/dev/tool/UOption.java" />
      <include name="com/ibm/icu/dev/tool/xmlcomparator/XMLValidator.java" />
    </javac>
    <jar jarfile="xliff.jar" compress="true" includes="com/ibm/icu/dev/tool/localeconverter/XLIFF2ICUConverter*.class,com/ibm/icu/dev/tool/localeconverter/CalculateCRC32.class,com/ibm/icu/dev/tool/UOption.class" basedir="${build.dir}">
      <manifest>
        <attribute name="Built-By" value="${corp}" />
        <section name="common">
          <attribute name="Specification-Title" value="XLIFF To ICU Converter" />
          <attribute name="Specification-Version" value="${icu4j.spec.version.string}" />
          <attribute name="Specification-Vendor" value="ICU" />
          <attribute name="Implementation-Title" value="XLIFF2ICUConverter" />
          <attribute name="Implementation-Version" value="${icu4j.impl.version.string}" />
          <attribute name="Implementation-Vendor" value="${corp}" />
          <attribute name="Implementation-Vendor-Id" value="com.ibm" />
          <attribute name="Copyright-Info" value="${copyright}" />
          <attribute name="Sealed" value="false" />
        </section>
      </manifest>
    </jar>

    <jar jarfile="xliff-src.jar" compress="true" includes="com/ibm/icu/dev/tool/localeconverter/XLIFF2ICUConverter.java,com/ibm/icu/dev/tool/localeconverter/CalculateCRC32.java,com/ibm/icu/dev/tool/UOption.java" basedir="${src.dir}">
      <manifest>
        <attribute name="Built-By" value="${corp}" />
        <section name="common">
          <attribute name="Specification-Title" value="XLIFF To ICU Converter Sources" />
          <attribute name="Specification-Version" value="${icu4j.spec.version.string}" />
          <attribute name="Specification-Vendor" value="ICU" />
          <attribute name="Implementation-Title" value="XLIFF2ICUConverter Sources" />
          <attribute name="Implementation-Version" value="${icu4j.impl.version.string}" />
          <attribute name="Implementation-Vendor" value="${corp}" />
          <attribute name="Implementation-Vendor-Id" value="com.ibm" />
          <attribute name="Copyright-Info" value="${copyright}" />
          <attribute name="Sealed" value="false" />
        </section>
      </manifest>
    </jar>
  </target>

  <!-- Target for builing Utilities Jar for CLDR -->

  <target name="cldrUtil" depends="init" description="build Utilities for CLDR">
    <javac srcdir="${src.dir}" destdir="${build.dir}" source="${icu4j.javac.source}" target="${icu4j.javac.target}" classpathref="build.classpath" debug="on" deprecation="off">

      <include name="com/ibm/icu/dev/test/TestFmwk.java" />
      <include name="com/ibm/icu/dev/test/util/*.java" />
      <include name="com/ibm/icu/dev/tool/UOption.java" />
    </javac>
    <jar jarfile="utilities.jar" compress="true" includes="com/ibm/icu/dev/test/util/*.class,com/ibm/icu/dev/test/TestFmwk*.class,com/ibm/icu/dev/test/AbstractTest*.class,com/ibm/icu/dev/test/TestLog*.class,com/ibm/icu/dev/tool/UOption*.class" basedir="${build.dir}">
      <manifest>
        <attribute name="Built-By" value="${corp}" />
        <section name="common">
          <attribute name="Specification-Title" value="Utilities for CLDR Tools" />
          <attribute name="Specification-Version" value="${icu4j.spec.version.string}" />
          <attribute name="Specification-Vendor" value="ICU" />
          <attribute name="Implementation-Title" value="CLDR Utilities" />
          <attribute name="Implementation-Version" value="${icu4j.impl.version.string}" />
          <attribute name="Implementation-Vendor" value="${corp}" />
          <attribute name="Implementation-Vendor-Id" value="com.ibm" />
          <attribute name="Copyright-Info" value="${copyright}" />
          <attribute name="Sealed" value="false" />
        </section>
      </manifest>
    </jar>
  </target>

  <!--Target for building jars -->
  <target name="distJars" depends="jarSrc, jar, jarDocs" />

  <!-- Target for checking the loading of bundles from the default package.
          This is hack to get around Eclipse's build problems. 
     -->
  <target name="defaultPackage" depends="tests" description="Tests for loading resources in the default package">
    <copy file="${src.dir}/com/ibm/icu/dev/test/util/TestDefaultPackageLoading.jpp" tofile="${src.dir}/TestDefaultPackageLoading.java" />
    <copy file="${src.dir}/com/ibm/icu/dev/test/util/TestData_en.jpp" tofile="${src.dir}/TestData_en.java" />
    <javac srcdir="${src.dir}" destdir="${build.dir}" classpathref="build.classpath" source="${icu4j.javac.source}" target="${icu4j.javac.target}" debug="on" deprecation="off">

      <exclude name="**/CVS/**/*" />
      <include name="TestData_en.java" />
      <include name="TestDefaultPackageLoading.java" />
    </javac>
    <!-- copy the file to default package and test if we can load it -->
    <copy file="${build.dir}/com/ibm/icu/dev/data/testdata/te.res" todir="${build.dir}/" />
    <!-- copy the file up one level and test if java style base name loading works -->
    <copy file="${build.dir}/com/ibm/icu/dev/data/testdata/te.res" tofile="${build.dir}/com/ibm/icu/dev/data/TestData_bge.res" />
  </target>

  <target name="defaultPackageCheck" depends="tests, defaultPackage" description="Run Tests for loading resources in the default package">
    <!--run the tests -->
    <java classname="TestDefaultPackageLoading" fork="yes" failonerror="true">
      <jvmarg line="${test.jvm.args}"/>
      <arg value="-n" />
      <classpath>
        <pathelement path="${java.class.path}/" />
        <pathelement location="clover.jar" />
        <pathelement path="${build.dir}" />
      </classpath>
    </java>
  </target>

  <!-- convert @deprecated @draft tags to @provisional -->
  <target name="swatDeprecated" depends="initBase, tools" unless="before.java14">
    <java classname="com.ibm.icu.dev.tool.docs.SwatDeprecated" classpath="${build.dir}" failonerror="true">
      <arg value="-src" />
      <arg value="${src.dir}" />
      <arg value="-dst" />
      <arg value="${src.dir}" />
      <arg value="-overwrite" />
      <arg value="-verbose" />
    </java>
  </target>

  <!-- convert @provisional tags to @deprecated -->
  <target name="restoreDeprecated" depends="initBase, tools" unless="before.java14">
    <java classname="com.ibm.icu.dev.tool.docs.SwatDeprecated" classpath="${build.dir}" failonerror="true">
      <arg value="-prov" />
      <arg value="-src" />
      <arg value="${src.dir}" />
      <arg value="-dst" />
      <arg value="${src.dir}" />
      <arg value="-overwrite" />
      <arg value="-verbose" />
    </java>
  </target>

<!-- Eclipse plug-in build targets --> 
  <!-- for building eclipse distribution -->
  <target name="initIcuEclipseVersion" depends="initBase">
    <tstamp>
      <format property="build.date" pattern="yyyyMMdd"/>
    </tstamp>
    <property name="icu4j.eclipse.build.version.string" value="${icu4j.plugin.impl.version.string}.v${build.date}"/>
  </target>

  <target name="eclipseProjects" 
          depends="eclipseCoreProject,eclipseTestProject,eclipseWrapperProject,eclipseFragmentProject"
          description="create all eclipse icu projects"/>

  <target name="eclipsePDEBuild"
          depends="initEclipsePDEBuildEnv, eclipseProjects"
          description="build icu4j plugin files">

    <!-- copy OSGi jar file to baseLocation -->
    <mkdir dir="${eclipse.projects.dir}/baseLocation/features"/>
    <mkdir dir="${eclipse.projects.dir}/baseLocation/plugins"/>
    <copy toDir="${eclipse.projects.dir}/baseLocation/plugins" file="${eclipse.osgi.jar}"/>

    <!-- copy PDE build script files and run the build -->
    <pathconvert property="eclipse.projects.dir.full" dirsep="/">
      <path location="${basedir}/${eclipse.projects.dir}"/>
    </pathconvert>
    <antcall target="runEclipsePDEBuild">
      <param name="icu.plugin.id" value="com.ibm.icu"/>
    </antcall>
    <antcall target="runEclipsePDEBuild">
      <param name="icu.plugin.id" value="com.ibm.icu.base"/>
    </antcall>
    <antcall target="runEclipsePDEBuild">
      <param name="icu.plugin.id" value="com.ibm.icu.jse4"/>
    </antcall>
  </target>

  <target name="initEclipsePDEBuildEnv"
          depends="initBase,initEclipseHome,initEclipseLauncher,initEclipseOSGiJar,initEclipsePDE"
          description="Initialize eclipse PDE build environment">
    <echo message="[PDE build configuration properties]"/>
    <echo message="    Eclipse home:    ${eclipse.home}"/>
    <echo message="    Launcher jar:    ${eclipse.launcher}"/>
    <echo message="    OSGi bundle jar: ${eclipse.osgi.jar}"/>
    <echo message="    Base OS:         ${eclipse.baseos}"/>
    <echo message="    Base WS:         ${eclipse.basews}"/>
    <echo message="    Base ARCH:       ${eclipse.basearch}"/>
  </target>

  <target name="initEclipseHome"
          if="env.ECLIPSE_HOME"
          unless="eclipse.home"
          description="Initialize the property eclipse.home from the environment variable ECLIPSE_HOME">
    <property name="eclipse.home" value="${env.ECLIPSE_HOME}"/>
  </target>

  <target name="initEclipseLauncher"
          if="eclipse.home"
          description="Locate org.eclipse.equinox.launcher jar file for eclipse 3.3 and beyond">
    <first id="equinox.launcher">
      <fileset dir="${eclipse.home}/plugins">
        <include name="org.eclipse.equinox.launcher_*.jar"/>
      </fileset>
    </first>
    <pathconvert property="eclipse.launcher" dirsep="/" refid="equinox.launcher"/>
  </target>

  <target name="initEclipseOSGiJar"
          if="eclipse.home"
          description="Locate org.eclipse.osgi plugin jar file">
    <first id="osgi.bundle">
      <fileset dir="${eclipse.home}/plugins">
        <include name="org.eclipse.osgi_*.jar"/>
      </fileset>
    </first>
    <pathconvert property="eclipse.osgi.jar" dirsep="/" refid="osgi.bundle"/>
  </target>

  <target name="initEclipsePDE"
          depends="locateEclipsePDE"
          if="eclipse.pde.dir"
          description="Set up PDE runtime arguments">
    <property file="${eclipse.pde.dir}/templates/headless-build/build.properties" prefix="pde.template"/>
    <property name="eclipse.baseos" value="${pde.template.baseos}"/>
    <property name="eclipse.basews" value="${pde.template.basews}"/>
    <property name="eclipse.basearch" value="${pde.template.basearch}"/>
  </target>

  <target name="locateEclipsePDE"
          if="eclipse.home"
          description="Locate org.eclipse.pde.build plug-in and set the property 'eclipse.pde.dir'">
    <first id="eclipse.pde.plugin.dir">
      <dirset dir="${eclipse.home}/plugins">
        <include name="org.eclipse.pde.build_*"/>
      </dirset>
    </first>
    <pathconvert property="eclipse.pde.dir" dirsep="/" refid="eclipse.pde.plugin.dir"/>
  </target>

  <target name="runEclipsePDEBuild">
    <mkdir dir="${eclipse.projects.dir}/buildScripts/${icu.plugin.id}"/>
      <copy toDir="${eclipse.projects.dir}/buildScripts/${icu.plugin.id}">
        <fileset dir="${eclipse.dir}/pdebuild" includes="**/*"/>
          <filterset>
            <filter token="PLUGIN_ID" value="${icu.plugin.id}"/>
            <filter token="BUILD_DIR" value="${eclipse.projects.dir.full}"/>
            <filter token="BUILD_TYPE" value="ICU4J"/>
            <filter token="BUILD_ID" value="${icu.plugin.id}"/>
            <filter token="BASE_LOCATION" value="${eclipse.projects.dir.full}/baseLocation"/>
            <filter token="BASE_OS" value="${eclipse.baseos}"/>
            <filter token="BASE_WS" value="${eclipse.basews}"/>
            <filter token="BASE_ARCH" value="${eclipse.basearch}"/>
          </filterset>
      </copy>

      <java jar="${eclipse.launcher}" fork="true" failonerror="true">
        <arg value="-application"/>
        <arg value="org.eclipse.ant.core.antRunner"/>
        <arg value="-buildfile"/>
        <arg value="${eclipse.pde.dir}/scripts/build.xml"/>
        <arg value="-Dbuilder=${eclipse.projects.dir.full}/buildScripts/${icu.plugin.id}"/>
      </java>
  </target>

  <target name="eclipseMangle" depends="buildMangle">
    <antcall target="doMangle">
      <param name="target.defs" value="FOUNDATION10" />
      <param name="input.file" value="@preprocessor.txt" />
    </antcall>
  </target>

  <target name="eclipseCore" depends="coreData,icudata,durationdata,eclipseMangle">
    <javac  includes="com/ibm/icu/util/**/*.java,com/ibm/icu/text/**/*.java,com/ibm/icu/math/**/*.java,com/ibm/icu/impl/**/*.java,com/ibm/icu/lang/*.java"
            compiler="javac1.3"
            srcdir="${src.dir}"
            destdir="${build.dir}"
            classpathref="build.classpath"
            bootclasspath="ee.foundation.jar"
            source="1.3"
            target="1.1"
            debug="on"
            deprecation="off"
            encoding="ascii" />
    <antcall target="indices" />
    <jar jarfile="${jar.file}" compress="true">
      <fileset dir="${basedir}" includes="license.html, unicode-license.txt" />
      <fileset dir="${build.dir}">
        <exclude name="META-INF/services/**/*" />
        <exclude name="com/ibm/icu/charset/**/*" />
        <exclude name="${icu4j.data.path}/*.cnv" />
        <exclude name="${icu4j.data.path}/cnvalias.icu" />
        <include name="com/ibm/icu/util/**/*" />
        <include name="com/ibm/icu/text/**/*" />
        <include name="com/ibm/icu/math/**/*" />
        <include name="com/ibm/icu/impl/**/*" />
        <include name="com/ibm/icu/lang/**/*" />
      </fileset>
      <manifest>
        <attribute name="Built-By" value="${corp}" />
        <section name="common">
          <attribute name="Specification-Title" value="ICU4J Eclipse Build" />
          <attribute name="Specification-Version" value="${icu4j.spec.version.string}" />
          <attribute name="Specification-Vendor" value="ICU" />
          <attribute name="Implementation-Title" value="ICU for Java Eclipse plug-in" />
          <attribute name="Implementation-Version" value="${icu4j.impl.version.string}" />
          <attribute name="Implementation-Vendor" value="${corp}" />
          <attribute name="Implementation-Vendor-Id" value="com.ibm" />
          <attribute name="Copyright-Info" value="${copyright}" />
          <attribute name="Sealed" value="false" />
        </section>
      </manifest>
    </jar>
  </target>

  <target name="eclipseCoreProject"
          depends="eclipseCore,initIcuEclipseVersion"
          description="gather eclipse icu core project files">
    <delete failonerror="no">
      <fileset dir="${eclipse.projects.dir}/plugins/com.ibm.icu" />
      <fileset dir="${eclipse.projects.dir}/features/com.ibm.icu" />
    </delete>

    <!-- PLUGIN FILES -->
    <!-- icu source -->
    <copy toDir="${eclipse.projects.dir}/plugins/com.ibm.icu/src/com/ibm/icu">
      <fileset dir="src/com/ibm/icu"
               includes="impl/**/*,lang/**/*,math/**/*,text/**/*,util/**/*"
               excludes="**/.svn/**/*,**/*.jar,**/Transliterator_Han_Latin*.txt" />
    </copy>
    <!-- icu data -->
    <copy todir="${eclipse.projects.dir}/plugins/com.ibm.icu/src/com/ibm/icu/impl/data">
      <fileset dir="${build.dir}/com/ibm/icu/impl/data"
               includes="**/*.brk,**/*.icu,**/*.res,**/*.spp,**/*.txt"
               excludes="**/Transliterator_Han_Latin*.txt" />
    </copy>
    <!-- plugin project -->
    <copy todir="${eclipse.projects.dir}/plugins/com.ibm.icu">
      <fileset dir="${eclipse.dir}/plugins/com.ibm.icu" excludes="**/.svn/**/*" />
      <filterset>
        <filter token="BUILD_VERSION" value="${icu4j.eclipse.build.version.string}" />
        <filter token="COPYRIGHT" value="${copyright.eclipse}" />
        <filter token="IMPL_VERSION" value="${icu4j.impl.version.string}" />
        <filter token="DATA_VERSION_NUMBER" value="${icu4j.data.version.number}" />
      </filterset>
    </copy>
    <!-- license -->
    <copy file="license.html"
          todir="${eclipse.projects.dir}/plugins/com.ibm.icu/about_files" />
    <!-- ucd terms -->
    <copy file="src/com/ibm/icu/dev/data/unicode/ucdterms.txt"
          todir="${eclipse.projects.dir}/plugins/com.ibm.icu/about_files" />
    <!-- about -->
    <copy file="${eclipse.dir}/misc/about_icu.html"
          tofile="${eclipse.projects.dir}/plugins/com.ibm.icu/about.html" />

    <!-- FEATURE FILES -->
    <copy todir="${eclipse.projects.dir}/features/com.ibm.icu">
      <fileset dir="${eclipse.dir}/features/com.ibm.icu" excludes="**/.svn/**/*" />
      <filterset>
        <filter token="BUILD_VERSION" value="${icu4j.eclipse.build.version.string}" />
        <filter token="COPYRIGHT" value="${copyright.eclipse}" />
        <filter token="DATA_VERSION_NUMBER" value="${icu4j.data.version.number}" />
      </filterset>
    </copy>
    <!-- common eclipse about file -->
    <copy file="${eclipse.dir}/misc/about.html"
          todir="${eclipse.projects.dir}/features/com.ibm.icu/sourceTemplatePlugin" />
  </target>

  <!-- ensure eclipse wrapper code builds with foundation1.0/java1.3 -->
  <target name="eclipseWrapper" depends="initBase">
    <mkdir dir="${wrapper.build.dir}" />
    <javac includes="com/ibm/icu/util/**/*.java,com/ibm/icu/text/**/*.java"
           compiler="javac1.3"
           srcdir="${eclipse.dir}/plugins/com.ibm.icu.base/src"
           destdir="${wrapper.build.dir}"
           classpathref="build.classpath"
           bootclasspath="ee.foundation.jar"
           source="1.3"
           target="1.1"
           debug="on" 
           deprecation="off"
           encoding="ascii" />
    <jar jarfile="${jdk.wrapper.jar.file}"
         compress="true"
         basedir="${wrapper.build.dir}" />
  </target>

  <target name="eclipseWrapperTest" depends="eclipseWrapper">
    <!-- TODO: build the wrapper test code this ant target -->
  </target>

  <target name="eclipseWrapperProject"
          depends="eclipseWrapper,eclipseWrapperTest,initIcuEclipseVersion"
          description="gather eclipse icu core project files">
    <delete failonerror="no">
      <fileset dir="${eclipse.projects.dir}/plugins/com.ibm.icu.base" />
      <fileset dir="${eclipse.projects.dir}/plugins/com.ibm.icu.base.tests" />
      <fileset dir="${eclipse.projects.dir}/features/com.ibm.icu.base" />
    </delete>
    <!-- PLUGIN FILES -->
    <!-- source and project files -->
    <copy todir="${eclipse.projects.dir}/plugins">
      <fileset dir="${eclipse.dir}/plugins"
               includes="com.ibm.icu.base/**/*,com.ibm.icu.base.tests/**/*"
               excludes="**/.svn/**/*" />
      <filterset>
        <filter token="BUILD_VERSION" value="${icu4j.eclipse.build.version.string}" />
        <filter token="COPYRIGHT" value="${copyright.eclipse}" />
        <filter token="IMPL_VERSION" value="${icu4j.impl.version.string}" />
        <filter token="DATA_VERSION_NUMBER" value="${icu4j.data.version.number}" />
      </filterset>
    </copy>
    <!-- license -->
    <copy file="license.html"
          todir="${eclipse.projects.dir}/plugins/com.ibm.icu.base/about_files" />
    <!-- about -->
    <copy file="${eclipse.dir}/misc/about_icu.html"
          tofile="${eclipse.projects.dir}/plugins/com.ibm.icu.base/about.html" />

    <!-- FEATURE FILES -->
    <!-- project files -->
    <copy todir="${eclipse.projects.dir}/features/com.ibm.icu.base">
      <fileset dir="${eclipse.dir}/features/com.ibm.icu.base"
               excludes="**/.svn/**/*"/>
      <filterset>
      <filter token="BUILD_VERSION" value="${icu4j.eclipse.build.version.string}" />
        <filter token="COPYRIGHT" value="${copyright.eclipse}" />
        <filter token="DATA_VERSION_NUMBER" value="${icu4j.data.version.number}" />
      </filterset>
    </copy>
    <!-- common eclipse about file -->
    <copy file="${eclipse.dir}/misc/about.html"
          todir="${eclipse.projects.dir}/features/com.ibm.icu.base/sourceTemplatePlugin" />
  </target>

  <target name="eclipseTests"
          depends="eclipseCore,testdata,eclipseMangle"
          description="build tests trimmed for eclipse API">
    <!-- TODO: we should actually use ee.foundation.jar for eclipse env -->
    <javac includes="com/ibm/icu/dev/test/**/*.java"
           excludes="com/ibm/icu/dev/test/charset/**/*.*,com/ibm/icu/dev/test/perf/**/*.*"
           srcdir="${src.dir}"
           destdir="${build.dir}"
           source="1.3"
           target="1.3"
           classpathref="build.classpath"
           debug="on"
           deprecation="off" />
    <antcall target="indices"/>
    <jar jarfile="${testjar.file}" compress="true">
      <fileset dir="${build.dir}" includes="com/ibm/icu/dev/test/**/*" />
      <fileset dir="${build.dir}" includes="com/ibm/icu/dev/data/**/*" />
      <manifest>
        <attribute name="Built-By" value="${corp}" />
        <section name="common">
          <attribute name="Specification-Title" value="ICU4J Eclipse Tests"/>
          <attribute name="Specification-Version" value="${icu4j.spec.version.string}"/>
          <attribute name="Specification-Vendor" value="ICU"/>
          <attribute name="Implementation-Title" value="ICU for Java Eclipse plug-in Tests"/>
          <attribute name="Implementation-Version" value="${icu4j.impl.version.string}"/> 
          <attribute name="Implementation-Vendor" value="${corp}"/>
          <attribute name="Implementation-Vendor-Id" value="com.ibm"/>
          <attribute name="Copyright-Info" value="${copyright}"/>
          <attribute name="Sealed" value="false"/>
        </section>
      </manifest>
    </jar>
  </target>

  <target name="eclipseTestProject" depends="eclipseTests,eclipseZipTestSrc" description="gather eclipse icu test project files">
    <delete failonerror="no">
      <fileset dir="${eclipse.projects.dir}/plugins/com.ibm.icu.tests"/>
    </delete>
    <!-- copy eclipse test source and project files -->
    <copy toDir="${eclipse.projects.dir}/plugins/com.ibm.icu.tests">
      <fileset  dir="${eclipse.dir}/plugins/com.ibm.icu.tests"
                excludes="**/.svn/**/"/>
      <filterset>
        <filter token="COPYRIGHT" value="${copyright.eclipse}"/>
      </filterset>
    </copy>
    <!-- copy icu test jar -->
    <copy toDir="${eclipse.projects.dir}/plugins/com.ibm.icu.tests" file="${testjar.file}"/>
    <!-- copy icu test source zip -->
    <copy toDir="${eclipse.projects.dir}/plugins/com.ibm.icu.tests" file="${zipTestSrc.file}"/>
  </target>

  <target name="eclipseFragmentMangle" depends="buildMangle">
    <antcall target="initSrc"/>
    <antcall target="doMangle">
      <param name="target.defs" value="ECLIPSE_FRAGMENT" />
      <param name="input.file" value="@eclipseFragment.txt" />
    </antcall>
  </target>

  <target name="eclipseFragment" depends="eclipseCore,eclipseFragmentMangle">
    <javac compiler="javac1.4"
           srcdir="${src.dir}"
           destdir="${build.dir}"
           classpathref="build.classpath"
           source="1.3"
           target="1.2"
           debug="on"
           deprecation="off"
           encoding="ascii"
           listfiles="true">
      <include name="com/ibm/icu/impl/DateNumberFormat.java" />
      <include name="com/ibm/icu/impl/duration/BasicDurationFormat.java" />
      <include name="com/ibm/icu/impl/ICUResourceBundleReader.java" />
      <include name="com/ibm/icu/impl/PatternTokenizer.java" />
      <include name="com/ibm/icu/impl/Utility.java" />
      <include name="com/ibm/icu/lang/UCharacter.java" />
      <include name="com/ibm/icu/math/BigDecimal.java" />
      <include name="com/ibm/icu/text/Bidi.java" />
      <include name="com/ibm/icu/text/ChineseDateFormat.java" />
      <include name="com/ibm/icu/text/DateFormat.java" />
      <include name="com/ibm/icu/text/DateTimePatternGenerator.java" />
      <include name="com/ibm/icu/text/DecimalFormat.java" />
      <include name="com/ibm/icu/text/DigitList.java" />
      <include name="com/ibm/icu/text/MessageFormat.java" />
      <include name="com/ibm/icu/text/NumberFormat.java" />
      <include name="com/ibm/icu/text/RuleBasedBreakIterator.java" />
      <include name="com/ibm/icu/text/RuleBasedNumberFormat.java" />
      <include name="com/ibm/icu/text/SimpleDateFormat.java" />
      <include name="com/ibm/icu/text/UnicodeSet.java" />
      <include name="com/ibm/icu/text/UTF16.java" />
    </javac>

    <!-- collect fragment specific files -->
    <jar jarfile="${fragment.jar.file}" compress="true">
      <fileset dir="${build.dir}">
        <include name="com/ibm/icu/impl/DateNumberFormat.class" />
        <include name="com/ibm/icu/impl/duration/BasicDurationFormat.class" />
        <include name="com/ibm/icu/impl/ICUResourceBundleReader.class" />
        <include name="com/ibm/icu/impl/PatternTokenizer.class" />
        <include name="com/ibm/icu/impl/Utility.class" />
        <include name="com/ibm/icu/lang/UCharacter.class" />
        <include name="com/ibm/icu/math/BigDecimal.class" />
        <include name="com/ibm/icu/text/Bidi.class" />
        <include name="com/ibm/icu/text/ChineseDateFormat.class" />
        <include name="com/ibm/icu/text/DateFormat.class" />
        <include name="com/ibm/icu/text/DateTimePatternGenerator.class" />
        <include name="com/ibm/icu/text/DecimalFormat.class" />
        <include name="com/ibm/icu/text/DigitList.class" />
        <include name="com/ibm/icu/text/MessageFormat.class" />
        <include name="com/ibm/icu/text/NumberFormat.class" />
        <include name="com/ibm/icu/text/RuleBasedBreakIterator.class" />
        <include name="com/ibm/icu/text/RuleBasedNumberFormat.class" />
        <include name="com/ibm/icu/text/SimpleDateFormat.class" />
        <include name="com/ibm/icu/text/UnicodeSet.class" />
        <include name="com/ibm/icu/text/UTF16.class" />

        <include name="com/ibm/icu/lang/UCharacter$*.class" />
        <include name="com/ibm/icu/text/Bidi$*.class" />
        <include name="com/ibm/icu/text/ChineseDateFormat$*.class" />
        <include name="com/ibm/icu/text/DateFormat$*.class" />
        <include name="com/ibm/icu/text/DateTimePatternGenerator$*.class" />
        <include name="com/ibm/icu/text/MessageFormat$*.class" />
        <include name="com/ibm/icu/text/NumberFormat$*.class" />
        <include name="com/ibm/icu/text/SimpleDateFormat$*.class" />
        <include name="com/ibm/icu/text/UnicodeSet$*.class" />
        <include name="com/ibm/icu/text/UTF16$*.class" />
      </fileset>
    </jar>
  </target>

  <target name="eclipseFragmentProject"
          depends="eclipseFragment,initIcuEclipseVersion"
          description="gather eclipse icu fragment project files">
    <delete failonerror="no">
      <fileset dir="${eclipse.projects.dir}/plugins/com.ibm.icu.jse4" />
      <fileset dir="${eclipse.projects.dir}/features/com.ibm.icu.jse4" />
    </delete>

    <!-- PLUGIN FILES -->
    <!-- source -->
    <copy toDir="${eclipse.projects.dir}/plugins/com.ibm.icu.jse4/src">
      <!-- TODO: Better way to collect files? -->
      <fileset dir="${src.dir}">
        <include name="com/ibm/icu/impl/DateNumberFormat.java" />
        <include name="com/ibm/icu/impl/duration/BasicDurationFormat.java" />
        <include name="com/ibm/icu/impl/ICUResourceBundleReader.java" />
        <include name="com/ibm/icu/impl/PatternTokenizer.java" />
        <include name="com/ibm/icu/impl/Utility.java" />
        <include name="com/ibm/icu/lang/UCharacter.java" />
        <include name="com/ibm/icu/math/BigDecimal.java" />
        <include name="com/ibm/icu/text/Bidi.java" />
        <include name="com/ibm/icu/text/ChineseDateFormat.java" />
        <include name="com/ibm/icu/text/DateFormat.java" />
        <include name="com/ibm/icu/text/DateTimePatternGenerator.java" />
        <include name="com/ibm/icu/text/DecimalFormat.java" />
        <include name="com/ibm/icu/text/DigitList.java" />
        <include name="com/ibm/icu/text/MessageFormat.java" />
        <include name="com/ibm/icu/text/NumberFormat.java" />
        <include name="com/ibm/icu/text/RuleBasedBreakIterator.java" />
        <include name="com/ibm/icu/text/RuleBasedNumberFormat.java" />
        <include name="com/ibm/icu/text/SimpleDateFormat.java" />
        <include name="com/ibm/icu/text/UnicodeSet.java" />
        <include name="com/ibm/icu/text/UTF16.java" />
      </fileset>
    </copy>
    <!-- project files -->
    <copy todir="${eclipse.projects.dir}/plugins/com.ibm.icu.jse4">
      <fileset  dir="${eclipse.dir}/plugins/com.ibm.icu.jse4"
                excludes="**/.svn/**/*" />
      <filterset>
        <filter token="BUILD_VERSION" value="${icu4j.eclipse.build.version.string}" />
        <filter token="COPYRIGHT" value="${copyright.eclipse}" />
        <filter token="IMPL_VERSION" value="${icu4j.impl.version.string}" />
        <filter token="DATA_VERSION_NUMBER" value="${icu4j.data.version.number}" />
      </filterset>
    </copy>
    <!-- license -->
    <copy file="license.html"
          todir="${eclipse.projects.dir}/plugins/com.ibm.icu.jse4/about_files" />
    <!-- ucd terms -->
    <copy file="src/com/ibm/icu/dev/data/unicode/ucdterms.txt"
          todir="${eclipse.projects.dir}/plugins/com.ibm.icu.jse4/about_files" />

    <!-- FEATURE FILES -->
    <!-- project files -->
    <copy todir="${eclipse.projects.dir}/features/com.ibm.icu.jse4">
      <fileset  dir="${eclipse.dir}/features/com.ibm.icu.jse4"
                excludes="**/.svn/**/*" />
      <filterset>
        <filter token="BUILD_VERSION" value="${icu4j.eclipse.build.version.string}" />
        <filter token="COPYRIGHT" value="${copyright.eclipse}" />
        <filter token="DATA_VERSION_NUMBER" value="${icu4j.data.version.number}" />
      </filterset>
    </copy>
    <!-- common eclipse about -->
    <copy file="${eclipse.dir}/misc/about.html"
        todir="${eclipse.projects.dir}/features/com.ibm.icu.jse4/sourceTemplatePlugin" />
  </target>

  <target name="eclipseZipTestSrc" depends="eclipseMangle" description="build zip of test sources for debugging">
    <!-- for eclipse -->
    <zip destfile="${zipTestSrc.file}" compress="true" basedir="${src.dir}" includes="com/ibm/icu/dev/test/**/*" excludes="com/ibm/icu/dev/test/cldr/**/*, com/ibm/icu/dev/test/perf/**/*" />
  </target>

  <target name="gatherICU4JWrapperAPI" depends="tools" unless="before.java14">
    <javadoc classpath="${build.dir}" sourcepath="${src.dir}" packagenames="com.ibm.icu.text,com.ibm.icu.util" source="1.4">
      <doclet name="com.ibm.icu.dev.tool.docs.GatherAPIData" path="${build.dir}">
        <param name="-name" value="ICU4J 3.6" />
        <param name="-base" value="com.ibm.icu" />
        <param name="-output" value="${api.dir}/icu4j36w_i.api" />
        <param name="-filter" value="BreakIterator|CollationKey|Collator|DateFormat|DecimalFormat|MessageFormat|NumberFormat|SimpleDateFormat|StringTokenizer|Calendar|TimeZone|ULocale|DateFormatSymbols|DecimalFormatSymbols|Calendar|TimeZone" />
        <!-- param name="-gzip"/ -->
      </doclet>
    </javadoc>
  </target>

  <target name="gatherEclipseWrapperAPI" depends="tools" unless="before.java14">
    <javadoc classpath="${build.dir}" sourcepath="${src.dir}/com/ibm/icu/dev/eclipse/com.ibm.icu.base/src" packagenames="com.ibm.icu.text,com.ibm.icu.util" source="1.4">
      <doclet name="com.ibm.icu.dev.tool.docs.GatherAPIData" path="${build.dir}">
        <param name="-name" value="ICU4J 3.6 Wrapper" />
        <param name="-base" value="com.ibm.icu" />
        <param name="-output" value="${api.dir}/icu4j36w_e.api" />
        <!-- param name="-gzip"/ -->
      </doclet>
    </javadoc>
  </target>

  <target name="reportWrapperAPI" depends="tools" unless="before.java14">
    <java classname="com.ibm.icu.dev.tool.docs.ReportAPI" classpath="${build.dir}" failonerror="true">
      <arg value="-old:" />
      <arg value="${api.dir}/icu4j${icu4j.previous.version.number}w_i.api" />
      <arg value="-new:" />
      <arg value="${api.dir}/icu4j${icu4j.version.number}w_e.api" />
      <arg value="-html" />
      <arg value="-out:" />
      <arg value="${api.dir}/icu4j_compare_${icu4j.previous.version.number}_wrapper_java.html" />
    </java>
  </target>

<!-- Test suite launcher targets -->
  <target name="runCheck" depends="tests">
    <java classname="com.ibm.icu.dev.test.TestAll" fork="yes" failonerror="true">
      <jvmarg line="${test.jvm.args}"/>
      <arg value="-n" />
      <classpath>
        <pathelement path="${java.class.path}/" />
        <pathelement location="${jar.file}" />
        <pathelement location="${charsets.jar.file}" />
        <pathelement location="clover.jar" />
        <pathelement path="${build.dir}" />
      </classpath>
    </java>
  </target>

  <target name="eclipseRunCheck" depends="eclipseTests">
    <java classname="com.ibm.icu.dev.test.TestAll" fork="yes" failonerror="true">
      <jvmarg line="${test.jvm.args}"/>
      <arg value="-n" />
      <classpath>
        <pathelement path="${java.class.path}/" />
        <pathelement location="icu4j.jar" />
        <pathelement location="clover.jar" />
        <pathelement path="${build.dir}" />
      </classpath>
    </java>
  </target>

  <target name="eclipseCompat" depends="initBase, eclipseCore" />
  <target name="eclipseCompatTests" depends="initBase, eclipseTests" />
  <target name="eclipseCompatCheck" depends="initBase, eclipseCompat, eclipseCompatTests, deleteCore, eclipseRunCheck" />

<!-- ICU TimeZone Update Utility targets -->
  <target name="icutzu" depends="init" description="build ICU4J TimeZone Update Utility Classes">
    <javac includes="${tzu.src.path}/**/*.java" excludes="**/.svn/**/*" srcdir="${src.dir}" destdir="${build.dir}" classpathref="build.classpath" source="${icu4j.javac.source}" target="${icu4j.javac.target}" debug="on" deprecation="off" encoding="ascii" />
  </target>

  <target name="icutzudata" depends="initBase, jar">
    <mkdir dir="${tzu.bin.dir}" />
    <copy todir="${tzu.bin.dir}">
      <fileset dir="${src.dir}/${tzu.src.path}">
        <include name="*.cmd" />
        <include name="*.bat" />
        <include name="*.sh" />
        <include name="*.gif" />
        <include name="*.txt" />
        <include name="*.html" />
        <include name="*.css" />
      </fileset>
      <fileset file="${basedir}/${jar.file}" />
      <fileset file="${build.dir}/${icu4j.data.path}/zoneinfo.res" />
    </copy>
  </target>

  <target name="icutzujar" depends="initBase, icutzu, icutzudata" description="build ICU4J TimeZone Update Utility classes">
    <jar jarfile="${tzu.bin.dir}/${tzu.jar.file}" compress="true">
      <fileset dir="${basedir}" includes="license.html" />
      <fileset dir="${build.dir}" includes="${tzu.src.path}/**/*.class" />
      <manifest>
        <attribute name="Main-Class" value="com.ibm.icu.dev.tool.tzu.ICUTZUMain" />
        <attribute name="Built-By" value="${corp}" />
        <section name="common">
          <attribute name="Specification-Title" value="ICU4J TimeZone Update Utility" />
          <attribute name="Specification-Version" value="${icu4j.spec.version.string}" />
          <attribute name="Specification-Vendor" value="ICU" />
          <attribute name="Implementation-Title" value="ICUTZU" />
          <attribute name="Implementation-Version" value="${icu4j.impl.version.string}" />
          <attribute name="Implementation-Vendor" value="${corp}" />
          <attribute name="Implementation-Vendor-Id" value="com.ibm" />
          <attribute name="Copyright-Info" value="${copyright}" />
          <attribute name="Sealed" value="false" />
        </section>
      </manifest>
    </jar>
    <echo message="Please see ${tzu.bin.dir} directory for the files." />
  </target>

  <target name="icutzucheck" depends="icutzujar" description="check ICU4J TimeZone Update Utility">
    <echo>Testing ICUTZU ...</echo>

    <mkdir dir="${tzu.temp.dir}" />
    <copy todir="${tzu.temp.dir}">
      <fileset file="${tzu.bin.dir}/DirectorySearch.txt" />
      <fileset file="${tzu.bin.dir}/zoneinfo.res" />
    </copy>

    <get dest="${tzu.bin.dir}/zoneinfo.res" src="http://icu-project.org/tzdata/2006a/be/zoneinfo.res" />
    <copy todir="${tzu.test.dir}" file="${tzu.bin.dir}/icu4j.jar" />
    <echo file="${tzu.bin.dir}/DirectorySearch.txt">+${tzu.test.dir}</echo>

    <echo>Running ICUTZU in Discovery Mode ...</echo>
    <exec dir="${tzu.bin.dir}" executable="${java.home}/bin/java">
      <arg value="-cp" />
      <arg path="${tzu.bin.dir}/${jar.file};${tzu.bin.dir}/${tzu.jar.file}" />
      <arg value="-Dnogui=true" />
      <arg value="-Ddiscoveronly=true" />
      <arg value="-Dsilentpatch=true" />
      <arg value="-Doffline=true" />
      <arg value="com.ibm.icu.dev.tool.tzu.ICUTZUMain" />
      <arg file="${tzu.bin.dir}" />
      <arg value="DirectorySearch.txt" />
      <arg value="ICUList.txt" />
      <arg value="zoneinfo.res" />
      <arg value="Temp" />
      <arg value="icu.gif" />
    </exec>

    <echo>Running ICUTZU in Patch Mode ...</echo>
    <exec dir="${tzu.bin.dir}" executable="${java.home}/bin/java">
      <arg value="-cp" />
      <arg path="${tzu.bin.dir}/${jar.file};${tzu.bin.dir}/${tzu.jar.file}" />
      <arg value="-Dnogui=true" />
      <arg value="-Ddiscoveronly=false" />
      <arg value="-Dsilentpatch=true" />
      <arg value="-Doffline=true" />
      <arg value="com.ibm.icu.dev.tool.tzu.ICUTZUMain" />
      <arg file="${tzu.bin.dir}" />
      <arg value="DirectorySearch.txt" />
      <arg value="ICUList.txt" />
      <arg value="zoneinfo.res" />
      <arg value="Temp" />
      <arg value="icu.gif" />
    </exec>

    <echo>Comparing results ...</echo>
    <unjar src="${tzu.test.dir}/${jar.file}" dest="${tzu.test.dir}">
      <patternset>
        <include name="**/zoneinfo.res" />
      </patternset>
    </unjar>
    <copy todir="${tzu.test.dir}" file="${tzu.test.dir}/${icu4j.data.path}/zoneinfo.res" />
    <condition property="tzu.zoneinfo.match">
      <filesmatch file1="${tzu.bin.dir}/zoneinfo.res" file2="${tzu.test.dir}/zoneinfo.res" />
    </condition>

    <fail unless="tzu.zoneinfo.match">ICUTZU test failed. ${tzu.bin.dir}/zoneinfo.res does not match ${tzu.test.dir}/zoneinfo.res</fail>

    <echo>Cleaning up ...</echo>
    <delete>
      <fileset file="${tzu.bin.dir}/DirectorySearch.txt" />
      <fileset file="${tzu.bin.dir}/zoneinfo.res" />
    </delete>
    <copy todir="${tzu.bin.dir}">
      <fileset file="${tzu.temp.dir}/DirectorySearch.txt" />
      <fileset file="${tzu.temp.dir}/zoneinfo.res" />
    </copy>
    <delete includeEmptyDirs="true">
      <fileset dir="${tzu.temp.dir}" />
      <fileset dir="${tzu.test.dir}" />
    </delete>

    <echo>ICUTZU test successful.</echo>
  </target>

  <target name="icutzusrc-dist" depends="init" description="ICUTZU source distributable zip">
    <zip zipfile="${basedir}/${tzu.src.zip.file}" basedir="${basedir}" includes="${src.dir}/${tzu.src.path}/**/*" />
  </target>

  <target name="icutzubin-dist" depends="icutzujar" description="ICUTZU binaries distributable zip">
    <zip zipfile="${basedir}/${tzu.bin.zip.file}" basedir="${tzu.bin.dir}" includes="*" />
  </target>
</project>
