<!--
/*
*******************************************************************************
* Copyright (C) 1997-2009, 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="-Xms128m -Xmx160m">
        <isset property="before.java14" />
    </condition>
    <condition property="test.jvm.args" value="-ea -Xms128m -Xmx160m -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 -Xms128m -Xmx160m">
      <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,com.ibm.icu.charset" 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,com.ibm.icu.charset" 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>
  </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_base.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>
  </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" />
    <!-- about -->
    <copy file="${eclipse.dir}/misc/about_icu.html"
          tofile="${eclipse.projects.dir}/plugins/com.ibm.icu.jse4/about.html" />

    <!-- 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>
  </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>
