<!--
*******************************************************************************
* Copyright (C) 1997-2015, International Business Machines Corporation and    *
* others. All Rights Reserved.                                                *
*******************************************************************************
-->
<project name="icu4j" default="jar" basedir="."
    xmlns:jacoco="antlib:org.jacoco.ant">

    <property file="build-local.properties"/>
    <property file="build.properties"/>

    <property name="shared.dir" value="main/shared"/>
    <import file="${shared.dir}/build/common-targets.xml"/>

    <property environment="env"/>

    <!-- icu4j binaries -->
    <property name="icu4j.jar.file" value="icu4j.jar"/>
    <property name="icu4jtests.jar.file" value="icu4jtests.jar"/>
    <property name="icu4j-charset.jar.file" value="icu4j-charset.jar"/>
    <property name="icu4j-localespi.jar.file" value="icu4j-localespi.jar"/>

    <property name="icu4jdemos.jar.file" value="icu4jdemos.jar"/>

    <!-- icu4j API doc jar file -->
    <property name="icu4jdocs.jar.file" value="icu4j-docs.jar"/>

    <!-- icu4j src jar files -->
    <property name="icu4j-src.jar.file" value="icu4j-src.jar"/>
    <property name="icu4j-charset-src.jar.file" value="icu4j-charset-src.jar"/>
    <property name="icu4j-localespi-src.jar.file" value="icu4j-localespi-src.jar"/>

    <!-- icu4j source package archive files -->
    <property name="icu4jsrc.zip.file" value="icu4j.zip"/>
    <property name="icu4jsrc.tgz.file" value="icu4j.tgz"/>

    <!-- icu4j versioned release files -->
    <property name="icu4j.jar.versioned.file" value="icu4j-${release.file.ver}.jar"/>
    <property name="icu4j-charset.jar.versioned.file" value="icu4j-charset-${release.file.ver}.jar"/>
    <property name="icu4j-localespi.jar.versioned.file" value="icu4j-localespi-${release.file.ver}.jar"/>

    <property name="icu4j-src.jar.versioned.file" value="icu4j-${release.file.ver}-src.jar"/>
    <property name="icu4j-charset-src.jar.versioned.file" value="icu4j-charset-${release.file.ver}-src.jar"/>
    <property name="icu4j-localespi-src.jar.versioned.file" value="icu4j-localespi-${release.file.ver}-src.jar"/>

    <property name="icu4jdocs.jar.versioned.file" value="icu4j-${release.file.ver}-docs.jar"/>

    <!-- <property name="icu4jsrc.zip.versioned.file" value="icu4j-${release.file.ver}.zip"/> -->
    <property name="icu4jsrc.tgz.versioned.file" value="icu4j-${release.file.ver}.tgz"/>

    <!-- API doc -->
    <property name="icu4j.api.doc.title" value="ICU4J ${api.doc.version} API Specification"/>
    <property name="icu4j.api.doc.window.title" value="ICU4J ${api.doc.version}"/>
    <property name="icu4j.api.doc.header" value="ICU4J ${api.doc.version}"/>
    <property name="icu4j.api.doc.jdk.link" value="http://docs.oracle.com/javase/7/docs/api/"/>

    <!-- directories -->
    <property name="release.dir" value="release"/>
    <property name="doc.dir" value="doc"/>
    <property name="cldr.util.out.dir" value="${out.dir}/cldr_util"/>
    <property name="cldr.release.dir" value="release_cldr"/>

    <!-- Java version check -->
    <condition property="is.java6.plus">
        <or>
            <contains string="${java.version}" substring="1.6."/>
            <contains string="${java.version}" substring="1.7."/>
            <contains string="${java.version}" substring="1.8."/>
        </or>
    </condition>
    <condition property="is.java5">
        <contains string="${java.version}" substring="1.5."/>
    </condition>
    <fail message="The JDK version is too old or unknown.">
        <condition>
            <not>
                <or>
                    <isset property="is.java6.plus"/>
                    <isset property="is.java5"/>
                </or>
             </not>
        </condition>
    </fail>

    <condition property="is.java7">
            <contains string="${java.version}" substring="1.7."/>
    </condition>

    <condition property="is.java7.plus">
        <or>
            <contains string="${java.version}" substring="1.7."/>
            <contains string="${java.version}" substring="1.8."/>
        </or>
    </condition>
    <condition property="is.pre.java8">
        <or>
            <contains string="${java.version}" substring="1.5."/>
            <contains string="${java.version}" substring="1.6."/>
            <contains string="${java.version}" substring="1.7."/>
        </or>
    </condition>
    

    <!-- Build environment info -->
    <property name="env.COMPUTERNAME" value="${env.HOSTNAME}"/>
    <target name="info" description="Display the build environment information">
        <echo message="----- Build Environment Information -------------------"/>
        <echo message="Java Home:    ${java.home}"/>
        <echo message="Java Version: ${java.version}"/>
        <echo message="Ant Home:     ${ant.home}"/>
        <echo message="Ant Version:  ${ant.version}"/>
        <echo message="OS:           ${os.name}"/>
        <echo message="OS Version:   ${os.version}"/>
        <echo message="OS Arch:      ${os.arch}"/>
        <echo message="Host:         ${env.COMPUTERNAME}"/>
        <echo message="-------------------------------------------------------"/>
    </target>

    <target name="clean" description="Clean up build outputs">
        <ant dir="${icu4j.core.dir}" target="clean" inheritAll="false"/>
        <ant dir="${icu4j.collate.dir}" target="clean" inheritAll="false"/>
        <ant dir="${icu4j.charset.dir}" target="clean" inheritAll="false"/>
        <ant dir="${icu4j.currdata.dir}" target="clean" inheritAll="false"/>
        <ant dir="${icu4j.langdata.dir}" target="clean" inheritAll="false"/>
        <ant dir="${icu4j.localespi.dir}" target="clean" inheritAll="false"/>
        <ant dir="${icu4j.regiondata.dir}" target="clean" inheritAll="false"/>
        <ant dir="${icu4j.translit.dir}" target="clean" inheritAll="false"/>
        <ant dir="${icu4j.test-framework.dir}" target="clean" inheritAll="false"/>
        <ant dir="${icu4j.core-tests.dir}" target="clean" inheritAll="false"/>
        <ant dir="${icu4j.collate-tests.dir}" target="clean" inheritAll="false"/>
        <ant dir="${icu4j.charset-tests.dir}" target="clean" inheritAll="false"/>
        <ant dir="${icu4j.localespi-tests.dir}" target="clean" inheritAll="false"/>
        <ant dir="${icu4j.packaging-tests.dir}" target="clean" inheritAll="false"/>
        <ant dir="${icu4j.translit-tests.dir}" target="clean" inheritAll="false"/>
        <ant dir="${icu4j.testall.dir}" target="clean" inheritAll="false"/>
        <ant dir="${icu4j.build-tools.dir}" target="clean" inheritAll="false"/>
        <ant dir="${icu4j.tools.dir}" target="clean" inheritAll="false"/>
        <ant dir="${icu4j.demos.dir}" target="clean" inheritAll="false"/>
        <ant dir="${icu4j.samples.dir}" target="clean" inheritAll="false"/>
        <ant dir="${icu4j.perf-tests.dir}" target="clean" inheritAll="false"/>

        <!-- delete all .jar files root directory -->
        <delete>
            <fileset dir="." includes="icu4j*.jar"/>
        </delete>

        <delete dir="${release.dir}"/>
        <delete dir="${doc.dir}"/>
        <delete dir="${out.dir}"/>
        <delete dir="${module.dir}"/>
        <delete dir="${cldr.release.dir}"/>

        <available file="eclipse-build" type="dir" property="eclipse-build.dir.present"/>
        <antcall target="_clean.eclipse-build"/>
    </target>

    <target name="_clean.eclipse-build" if="eclipse-build.dir.present">
        <ant dir="eclipse-build" target="clean" inheritAll="false"/>
    </target>

    <!-- meta build targets -->
    <target name="all" depends="info, main, tests, build-tools, tools, demos, samples, perf-tests, jar, docs" description="Build all primary targets"/>
    <target name="main" depends="info, core, collate, charset, currdata, langdata, regiondata, translit, localespi" description="Build ICU4J runtime library classes"/>
    <target name="tests" depends="info, core-tests, charset-tests, collate-tests, packaging-tests, translit-tests, testall, localespi-tests" description="Build ICU4J test classes"/>

    <target name="secure" depends="icu4jJar" description="(Deprecated)Build ICU4J API and test classes for running the ICU4J test suite with Java security manager enabled"/>
    
    <!-- Check to see if JVM_OPTIONS enviroment variable is set. This can be use to set the heap size. -->
    <property name="env.JVM_OPTIONS" value=""/>
    <property name="jvm_options" value="${env.JVM_OPTIONS}"/>
    <target name="check" description="Run the standard ICU4J test suite">
        <antcall target="_runCheck">
            <param name="runcheck.arg" value=""/>
            <param name="runcheck.jvmarg" value="${jvm_options} -ea"/>
        </antcall>
    </target>

    <target name="exhaustiveCheck" description="Run the standard ICU4J test suite in exhaustive mode">
        <antcall target="_runCheck">
            <param name="runcheck.arg" value="-e10"/>
            <param name="runcheck.jvmarg" value="${jvm_options} -ea"/>
        </antcall>
    </target>

    <target name="timeZoneCheck" description="Run the complete test for TimeZoneRoundTripAll">
        <antcall target="_runCheck">
            <param name="runcheck.arg" value="-prop:TimeZoneRoundTripAll=true Core/Format/DateFormat/TimeZoneFormatTest -v"/>
            <param name="runcheck.jvmarg" value="${jvm_options}"/>
        </antcall>
    </target>

    <target name="jdktzCheck" description="Run the standard ICU4J test suite with JDK TimeZone">
        <antcall target="_runCheck">
            <param name="runcheck.arg" value=""/>
            <param name="runcheck.jvmarg" value="${jvm_options} -Dcom.ibm.icu.util.TimeZone.DefaultTimeZoneType=JDK"/>
        </antcall>
    </target>

    <target name="_runCheck" depends="main, tests">
        <echo message="JVM argument:   ${runcheck.jvmarg} -Djava.awt.headless=true"/>
        <echo message="Test argument:   ${runcheck.arg}"/>

        <java classname="com.ibm.icu.dev.test.TestAll" fork="yes" failonerror="true">
            <arg line="${runcheck.arg}"/>
            <jvmarg line="${runcheck.jvmarg} -Djava.awt.headless=true"/>
            <classpath>
                <pathelement location="${icu4j.core.jar}"/>
                <pathelement location="${icu4j.collate.jar}"/>
                <pathelement location="${icu4j.charset.jar}"/>
                <pathelement location="${icu4j.currdata.jar}"/>
                <pathelement location="${icu4j.langdata.jar}"/>
                <pathelement location="${icu4j.regiondata.jar}"/>
                <pathelement location="${icu4j.translit.jar}"/>
                <pathelement location="${icu4j.test-framework.jar}"/>
                <pathelement location="${icu4j.core-tests.jar}"/>
                <pathelement location="${icu4j.collate-tests.jar}"/> 
                <pathelement location="${icu4j.charset-tests.jar}"/>
                <pathelement location="${icu4j.translit-tests.jar}"/>
                <pathelement location="${icu4j.testall.jar}"/>
            </classpath>
        </java>
    </target>

    <target name="_runTestArgCheck" unless="testarg">
        <echo message="No test arguments are supplied."/>
        <echo message="For specifying test arguments, use '-Dtestarg=[test args]' as"/>
        <echo message="ant command line argument. For example:"/>
        <echo message="  &#x3E;ant runTest -Dtestarg=&#x22;Core/Format -e10&#x22;"/>
        <echo message="for running ICU4J core format test suite in exhaustive mode."/>
    </target>

    <target name="runTest" depends="_runTestArgCheck" description="Run a ICU4J test case, without calling any other build targets">
        <echo message="JVM argument:   ${jvm_options} -Djava.awt.headless=true"/>
        <echo message="Test argument:   ${testarg}"/>

        <java classname="com.ibm.icu.dev.test.TestAll" fork="yes" failonerror="true">
            <arg line="${testarg}"/>
            <jvmarg line="${jvm_options} -Djava.awt.headless=true"/>
            <classpath>
                <pathelement location="${icu4j.core.jar}"/>
                <pathelement location="${icu4j.collate.jar}"/>
                <pathelement location="${icu4j.charset.jar}"/>
                <pathelement location="${icu4j.currdata.jar}"/>
                <pathelement location="${icu4j.langdata.jar}"/>
                <pathelement location="${icu4j.regiondata.jar}"/>
                <pathelement location="${icu4j.translit.jar}"/>
                <pathelement location="${icu4j.test-framework.jar}"/>
                <pathelement location="${icu4j.core-tests.jar}"/>
                <pathelement location="${icu4j.collate-tests.jar}"/> 
                <pathelement location="${icu4j.charset-tests.jar}"/>
                <pathelement location="${icu4j.translit-tests.jar}"/>
                <pathelement location="${icu4j.testall.jar}"/>
            </classpath>
        </java>
    </target>

    <target name="packagingCheck" depends="info, core, packaging-tests" description="Run packaging tests">
        <!-- region data but no language data -->
        <java classname="com.ibm.icu.dev.test.TestPackaging" fork="yes" failonerror="true">
            <arg line="-w"/>
            <classpath>
                <pathelement location="${icu4j.core.jar}"/>
                <pathelement location="${icu4j.charset.jar}"/>
                <pathelement location="${icu4j.test-framework.jar}"/>
                <pathelement location="${icu4j.packaging-tests.jar}"/>
                <pathelement location="${icu4j.regiondata.jar}"/>
            </classpath>
        </java>
        <!-- language data but no region data -->
        <java classname="com.ibm.icu.dev.test.TestPackaging" fork="yes" failonerror="true">
            <arg line="-w"/>
            <classpath>
                <pathelement location="${icu4j.core.jar}"/>
                <pathelement location="${icu4j.charset.jar}"/>
                <pathelement location="${icu4j.test-framework.jar}"/>
                <pathelement location="${icu4j.packaging-tests.jar}"/>
                <pathelement location="${icu4j.langdata.jar}"/>
            </classpath>
        </java>
        <!-- neither region nor language data -->
        <java classname="com.ibm.icu.dev.test.TestPackaging" fork="yes" failonerror="true">
            <arg line="-w"/>
            <classpath>
                <pathelement location="${icu4j.core.jar}"/>
                <pathelement location="${icu4j.charset.jar}"/>
                <pathelement location="${icu4j.test-framework.jar}"/>
                <pathelement location="${icu4j.packaging-tests.jar}"/>
            </classpath>
        </java>
    </target>

    <target name="coreCheck" depends="info, core, currdata, langdata, regiondata, core-tests" description="Run only the core tests">
        <java classname="com.ibm.icu.dev.test.TestAllCore" fork="yes" failonerror="true">
            <classpath>
                <pathelement location="${icu4j.core.jar}"/>
                <pathelement location="${icu4j.currdata.jar}"/>
                <pathelement location="${icu4j.langdata.jar}"/>
                <pathelement location="${icu4j.regiondata.jar}"/>
                <pathelement location="${icu4j.test-framework.jar}"/>
                <pathelement location="${icu4j.core-tests.jar}"/>
            </classpath>
        </java>
    </target>

    <target name="collateCheck" depends="info, core, collate, currdata, langdata, regiondata, core-tests, collate-tests" description="Run only the collation tests">
        <java classname="com.ibm.icu.dev.test.TestAllCollate" fork="yes" failonerror="true">
            <classpath>
                <pathelement location="${icu4j.core.jar}"/>
                <pathelement location="${icu4j.collate.jar}"/>
                <pathelement location="${icu4j.test-framework.jar}"/>
                <pathelement location="${icu4j.collate-tests.jar}"/>

                <!-- for now, collateCheck needs currdata, langdata and regiondata, because of GlobalizationPreferencesTest" -->
                <pathelement location="${icu4j.currdata.jar}"/>
                <pathelement location="${icu4j.langdata.jar}"/>
                <pathelement location="${icu4j.regiondata.jar}"/>
                <pathelement location="${icu4j.core-tests.jar}"/>
            </classpath>
        </java>
    </target>

    <target name="translitCheck" depends="info, core, translit, translit-tests" description="Run the ICU4J Translit test suite">
        <java classname="com.ibm.icu.dev.test.TestAllTranslit" fork="yes" failonerror="true">
            <classpath>
                <pathelement location="${icu4j.core.jar}"/>
                <pathelement location="${icu4j.translit.jar}"/>
                <pathelement location="${icu4j.test-framework.jar}"/>
                <pathelement location="${icu4j.translit-tests.jar}"/>
            </classpath>
        </java>
    </target>

    <target name="localespiCheck" if="is.java6.plus" depends="info" description="Run the ICU4J Locale SPI test suite">
        <antcall target="_runLocalespiCheck"/>
    </target>

    <target name="_runLocalespiCheck" depends="localespi, localespi-tests">
        <java classname="com.ibm.icu.dev.test.localespi.TestAll" fork="yes" failonerror="true">
            <jvmarg line="-Djava.ext.dirs=${icu4j.core.dir}/${jar.dir}${path.separator}${icu4j.localespi.dir}/${jar.dir}${path.separator}${icu4j.collate.dir}/${jar.dir}${path.separator}${icu4j.currdata.dir}/${jar.dir}${path.separator}${icu4j.langdata.dir}/${jar.dir}${path.separator}${icu4j.regiondata.dir}/${jar.dir}${path.separator}${java.ext.dirs}"/>
            <classpath>
                <pathelement location="${icu4j.localespi-tests.jar}"/>
                <pathelement location="${icu4j.test-framework.jar}"/>
            </classpath>
        </java>
    </target>

    <target name="secureCheck" depends="main, jar, icu4jtestsJar" description="Run the secure (applet-like) ICU4J test suite">
        <property name="securecheck.arg" value="-w"/>
        <property name="securecheck.jvmarg"
                value="${jvm_options} -Djava.security.manager -Djava.security.policy=${shared.dir}/data/security.policy -Djava.awt.headless=true"/>

        <echo message="JVM argument:   ${securecheck.jvmarg}"/>
        <echo message="Test argument:  ${securecheck.arg}"/>

        <java classname="com.ibm.icu.dev.test.TestAll" fork="yes" failonerror="true">
            <arg line="${securecheck.arg}"/>
            <jvmarg line="${securecheck.jvmarg}"/>
            <classpath>
                <pathelement location="${icu4j.jar.file}"/>
                <pathelement location="${icu4j-charset.jar.file}"/>
                <pathelement location="${icu4jtests.jar.file}"/>
            </classpath>
        </java>
    </target>

    <!-- jar targets -->
    <target name="jar" depends="icu4jJar, charset, localespi" description="Build ICU4J runtime library jar files">
        <copy file="${icu4j.charset.jar}" tofile="${icu4j-charset.jar.file}"/>
        <copy file="${icu4j.localespi.jar}" tofile="${icu4j-localespi.jar.file}" failonerror="false"/>
    </target>

    <target name="icu4jJar" depends="info, core, collate, currdata, langdata, regiondata, translit" description="Build ICU4J all-in-one core jar">
        <mkdir dir="${out.dir}"/>

        <!-- manifest -->
        <copy file="manifest.stub" todir="${out.dir}">
            <filterset>
                <filter token="SPECVERSION" value="${jar.spec.version}"/>
                <filter token="IMPLVERSION" value="${jar.impl.version}"/>
                <filter token="COPYRIGHT" value="${jar.copyright.info}"/>
                <filter token="EXECENV" value="${jar.exec.env}"/>
            </filterset>
        </copy>

        <!-- jar -->
        <jar jarfile="${icu4j.jar.file}"
                compress="true"
                manifest="${out.dir}/manifest.stub">
            <fileset dir="${icu4j.core.dir}/${bin.dir}" includes="**/*"/>
            <fileset dir="${icu4j.collate.dir}/${bin.dir}" includes="**/*"/>
            <fileset dir="${icu4j.currdata.dir}/${bin.dir}" includes="**/*"/>
            <fileset dir="${icu4j.langdata.dir}/${bin.dir}" includes="**/*"/>
            <fileset dir="${icu4j.regiondata.dir}/${bin.dir}" includes="**/*"/>
            <fileset dir="${icu4j.translit.dir}/${bin.dir}" includes="**/*"/>
            <fileset dir="${shared.dir}/licenses">
                <include name="license.html"/>
            </fileset>
        </jar>
    </target>

    <target name="icu4jSrcJar" description="Build icu4j-src.jar">
        <jar jarfile="${icu4j-src.jar.file}"
                compress="true">
            <fileset dir="${icu4j.core.dir}/${src.dir}" includes="**/*.java"/>
            <fileset dir="${icu4j.collate.dir}/${src.dir}" includes="**/*.java"/>
            <fileset dir="${icu4j.currdata.dir}/${src.dir}" includes="**/*.java"/>
            <fileset dir="${icu4j.langdata.dir}/${src.dir}" includes="**/*.java"/>
            <fileset dir="${icu4j.regiondata.dir}/${src.dir}" includes="**/*.java"/>
            <fileset dir="${icu4j.translit.dir}/${src.dir}" includes="**/*.java"/>
            <fileset dir="${shared.dir}/licenses">
                <include name="license.html"/>
            </fileset>
        </jar>
    </target>

    <target name="icu4jtestsJar" depends="info, tests" description="Build ICU4J all-in-one test jar">
        <jar jarfile="${icu4jtests.jar.file}"
                compress="true">
            <fileset dir="${icu4j.test-framework.dir}/${bin.dir}" includes="**/*"/>
            <fileset dir="${icu4j.core-tests.dir}/${bin.dir}" includes="**/*"/>
            <fileset dir="${icu4j.collate-tests.dir}/${bin.dir}" includes="**/*"/>
            <fileset dir="${icu4j.translit-tests.dir}/${bin.dir}" includes="**/*"/>
            <fileset dir="${icu4j.charset-tests.dir}/${bin.dir}" includes="**/*"/>
            <fileset dir="${icu4j.testall.dir}/${bin.dir}" includes="**/*"/>
        </jar>
    </target>

    <target name="jarDemos" depends="icu4jJar, demos" description="Build ICU4J demo jar file">
        <copy file="${icu4j.demos.jar}" tofile="${icu4jdemos.jar.file}"/>
    </target>


    <!-- release targets -->
    <target name="_check_config_for_release">
        <condition property="release.build.config.ok">
            <and>
                <isset property="is.java7"/>
                <isset property="java5.bootclasspath"/>
                <isset property="java6.bootclasspath"/>
                <isset property="jcite.libs"/>
            </and>
        </condition>
    </target>

    <target name="_verify_config_for_release" depends="_check_config_for_release" unless="release.build.config.ok">
        <condition property="disp.is.java7" value="${java.version}" else="${java.version} - Must be 1.7!">
            <isset property="is.java7"/>
        </condition>
        <condition property="disp.java5.bootclasspath" value="${java5.bootclasspath}" else="Not Defined!">
            <isset property="java5.bootclasspath"/>
        </condition>
        <condition property="disp.java6.bootclasspath" value="${java5.bootclasspath}" else="Not Defined!">
            <isset property="java6.bootclasspath"/>
        </condition>
        <condition property="disp.jcite.libs" value="${jcite.libs}" else="Not Defined!">
            <isset property="jcite.libs"/>
        </condition>

        <echo message="################################################################"/>
        <echo message="[WARNING] Insufficient Build Configuration for ICU4J Release"/>
        <echo message="JDK Tools Version:              ${disp.is.java7}"/>
        <echo message="JRE 5 System Library Path:      ${disp.java5.bootclasspath}"/>
        <echo message="JRE 6 System Library Path:      ${disp.java6.bootclasspath}"/>
        <echo message="JCite Library Path:             ${disp.jcite.libs}"/>
        <echo message="################################################################"/>
    </target>

    <target name="releaseVer" depends="info, releaseBinaries, releaseSrcJars, releaseDocs, releaseSourceArchiveTgz"
            description="Build all ICU4J release files for distribution with versioned file names">
        <!-- binaries -->
        <move file="${release.dir}/${icu4j.jar.file}" tofile="${release.dir}/${icu4j.jar.versioned.file}"/>
        <move file="${release.dir}/${icu4j-charset.jar.file}" tofile="${release.dir}/${icu4j-charset.jar.versioned.file}"/>
        <move file="${release.dir}/${icu4j-localespi.jar.file}" tofile="${release.dir}/${icu4j-localespi.jar.versioned.file}"/>

        <!-- source jars -->
        <move file="${release.dir}/${icu4j-src.jar.file}" tofile="${release.dir}/${icu4j-src.jar.versioned.file}"/>
        <move file="${release.dir}/${icu4j-charset-src.jar.file}" tofile="${release.dir}/${icu4j-charset-src.jar.versioned.file}"/>
        <move file="${release.dir}/${icu4j-localespi-src.jar.file}" tofile="${release.dir}/${icu4j-localespi-src.jar.versioned.file}"/>

        <!-- docs -->
        <move file="${release.dir}/${icu4jdocs.jar.file}" tofile="${release.dir}/${icu4jdocs.jar.versioned.file}"/>

        <!-- package archive -->
        <move file="${release.dir}/${icu4jsrc.tgz.file}" tofile="${release.dir}/${icu4jsrc.tgz.versioned.file}"/>

        <!-- md5 checksum file -->
        <mkdir dir="${out.dir}/checksum"/>
        <delete dir="${out.dir}/checksum" includes="**/*"/>

        <checksum todir="${out.dir}/checksum" format="MD5SUM">
            <fileset dir="${release.dir}">
                <include name="*.jar"/>
                <include name="*.tgz"/>
            </fileset>
        </checksum>

        <concat destfile="${release.dir}/icu4j-${release.file.ver}.md5">
            <fileset dir="${out.dir}/checksum" includes="*"/>
            <filterchain>
                <fixcrlf eol="lf"/>
            </filterchain>
        </concat>

        <antcall target="_verify_config_for_release"/>
    </target>

    <target name="release" depends="info, releaseBinaries, releaseSrcJars, releaseDocs, releaseSourceArchiveTgz" description="Build all ICU4J release files for distribution">
        <mkdir dir="${out.dir}/checksum"/>
        <delete dir="${out.dir}/checksum" includes="**/*"/>

        <checksum todir="${out.dir}/checksum" format="MD5SUM">
            <fileset dir="${release.dir}">
                <include name="*.jar"/>
                <include name="*.tgz"/>
            </fileset>
        </checksum>

        <concat destfile="${release.dir}/icu4j.md5">
            <fileset dir="${out.dir}/checksum" includes="*"/>
            <filterchain>
                <fixcrlf eol="lf"/>
            </filterchain>
        </concat>

        <antcall target="_verify_config_for_release"/>
    </target>

    <target name="releaseBinaries" depends="icu4jJar, charset, localespi" description="Build ICU4J binary files for distribution">
        <mkdir dir="${release.dir}"/>
        <copy file="${icu4j.jar.file}" tofile="${release.dir}/${icu4j.jar.file}"/>
        <copy file="${icu4j.charset.jar}" tofile="${release.dir}/${icu4j-charset.jar.file}"/>
        <copy file="${icu4j.localespi.jar}" tofile="${release.dir}/${icu4j-localespi.jar.file}"/>
    </target>

    <target name="releaseSrcJars" depends="icu4jSrcJar" description="Build ICU4J src jar files for distribution">
        <mkdir dir="${release.dir}"/>

        <!-- icu4j src-jar -->
        <copy file="${icu4j-src.jar.file}" tofile="${release.dir}/${icu4j-src.jar.file}"/>

        <!-- charset/localespi src-jar -->
        <ant dir="${icu4j.charset.dir}" target="src-jar" inheritAll="false"/>
        <ant dir="${icu4j.localespi.dir}" target="src-jar" inheritAll="false"/>

        <copy file="${icu4j.charset.dir}/${out.dir}/lib/${icu4j-charset-src.jar.file}" tofile="${release.dir}/${icu4j-charset-src.jar.file}"/>
        <copy file="${icu4j.localespi.dir}/${out.dir}/lib/${icu4j-localespi-src.jar.file}" tofile="${release.dir}/${icu4j-localespi-src.jar.file}"/>
    </target>


    <target name="releaseDocs" depends="docs" description="Build ICU4J API reference doc jar file for distribution">
        <mkdir dir="${release.dir}"/>
        <jar jarfile="${release.dir}/${icu4jdocs.jar.file}" compress="true" basedir="${doc.dir}"/>
    </target>

    <property name="src.release.wrk.dir" value="${out.dir}/tmpsrc"/>

    <target name="releaseSourceArchiveZip" description="Build ICU4J source release archive (.zip)">
        <delete dir="${src.release.wrk.dir}"/>
        <delete file="${icu4jsrc.zip.file}"/>

        <mkdir dir="${src.release.wrk.dir}"/>

        <fixcrlf srcdir="."
                destdir="${src.release.wrk.dir}"
                encoding="UTF-8"
                eol="crlf">
            <include name="demos/**/*"/>
            <include name="main/**/*"/>
            <include name="perf-tests/**/*"/>
            <include name="samples/**/*"/>
            <include name="tools/**/*"/>
            <include name="*.html"/>
            <include name="*.xml"/>
            <include name="*.properties"/>
            <include name="*.css"/>
            <include name="*.stub"/>
            <exclude name="**/out/**/*"/>
            <exclude name="**/*.jar"/>
            <exclude name="**/build-local.properties"/>
            <exclude name="main/tests/core/src/com/ibm/icu/dev/data/rbbi/english.dict"/>
            <exclude name="main/tests/core/src/com/ibm/icu/dev/test/serializable/data/**/*.dat"/>
            <exclude name="main/tests/core/src/com/ibm/icu/dev/test/util/Trie2Test.*.tri2"/>
            <exclude name="tools/build/icu4j*.api*.gz"/>
        </fixcrlf>

        <mkdir dir="${release.dir}"/>
        <zip destfile="${release.dir}/${icu4jsrc.zip.file}">
            <fileset dir="${src.release.wrk.dir}" includes="**/*"/>
            <fileset dir="${basedir}">
                <include name="main/shared/data/*.jar"/>
                <include name="main/tests/core/src/com/ibm/icu/dev/data/rbbi/english.dict"/>
                <include name="main/tests/core/src/com/ibm/icu/dev/test/serializable/data/**/*.dat"/>
                <include name="main/tests/core/src/com/ibm/icu/dev/test/util/Trie2Test.*.tri2"/>
                <include name="tools/build/icu4j*.api*.gz"/>
            </fileset>
        </zip>

        <delete dir="${src.release.wrk.dir}"/>
    </target>

    <target name="releaseSourceArchiveTgz" description="Build ICU4J source release archive (.tgz)">
        <delete dir="${src.release.wrk.dir}"/>
        <delete file="${icu4jsrc.tgz.file}"/>

        <mkdir dir="${src.release.wrk.dir}"/>

        <fixcrlf srcdir="."
                destdir="${src.release.wrk.dir}"
                encoding="UTF-8"
                eol="lf">
            <include name="demos/**/*"/>
            <include name="main/**/*"/>
            <include name="perf-tests/**/*"/>
            <include name="samples/**/*"/>
            <include name="tools/**/*"/>
            <include name="*.html"/>
            <include name="*.xml"/>
            <include name="*.properties"/>
            <include name="*.css"/>
            <include name="*.stub"/>
            <exclude name="**/out/**/*"/>
            <exclude name="**/*.jar"/>
            <exclude name="**/build-local.properties"/>
            <exclude name="main/tests/core/src/com/ibm/icu/dev/data/rbbi/english.dict"/>
            <exclude name="main/tests/core/src/com/ibm/icu/dev/test/serializable/data/**/*.dat"/>
            <exclude name="main/tests/core/src/com/ibm/icu/dev/test/util/Trie2Test.*.tri2"/>
            <exclude name="tools/build/icu4j*.api*.gz"/>
        </fixcrlf>

        <property name="icu4jsrc.tar" value="${out.dir}/icu4jsrc.tar"/>

        <tar destfile="${icu4jsrc.tar}" longfile="gnu">
            <fileset dir="${src.release.wrk.dir}" includes="**/*"/>
            <fileset dir="${basedir}">
                <include name="main/shared/data/*.jar"/>
                <include name="main/tests/core/src/com/ibm/icu/dev/data/rbbi/english.dict"/>
                <include name="main/tests/core/src/com/ibm/icu/dev/test/serializable/data/**/*.dat"/>
                <include name="main/tests/core/src/com/ibm/icu/dev/test/util/Trie2Test.*.tri2"/>
                <include name="tools/build/icu4j*.api*.gz"/>
            </fileset>
        </tar>

        <mkdir dir="${release.dir}"/>
        <gzip destfile="${release.dir}/${icu4jsrc.tgz.file}" src="${icu4jsrc.tar}"/>

        <delete dir="${src.release.wrk.dir}"/>
        <delete file="${icu4jsrc.tar}"/>
    </target>

    <!-- findbugs targets -->

    <target name="findbugs" description="Run FindBugs on all library sub projects.">
        <property name="findbugs.out.dir" value="${out.dir}/findbugs"/>
        <mkdir dir="${findbugs.out.dir}"/>

        <ant dir="${icu4j.core.dir}" inheritAll="false" target="findbugs"/>
        <copy file="${icu4j.core.dir}/${out.dir}/fb-core.html" todir="${findbugs.out.dir}"/>

        <ant dir="${icu4j.collate.dir}" inheritAll="false" target="findbugs"/>
        <copy file="${icu4j.collate.dir}/${out.dir}/fb-collate.html" todir="${findbugs.out.dir}"/>

        <ant dir="${icu4j.currdata.dir}" inheritAll="false" target="findbugs"/>
        <copy file="${icu4j.currdata.dir}/${out.dir}/fb-currdata.html" todir="${findbugs.out.dir}"/>

        <ant dir="${icu4j.langdata.dir}" inheritAll="false" target="findbugs"/>
        <copy file="${icu4j.langdata.dir}/${out.dir}/fb-langdata.html" todir="${findbugs.out.dir}"/>

        <ant dir="${icu4j.regiondata.dir}" inheritAll="false" target="findbugs"/>
        <copy file="${icu4j.regiondata.dir}/${out.dir}/fb-regiondata.html" todir="${findbugs.out.dir}"/>

        <ant dir="${icu4j.translit.dir}" inheritAll="false" target="findbugs"/>
        <copy file="${icu4j.translit.dir}/${out.dir}/fb-translit.html" todir="${findbugs.out.dir}"/>


        <ant dir="${icu4j.charset.dir}" inheritAll="false" target="findbugs"/>
        <copy file="${icu4j.charset.dir}/${out.dir}/fb-charset.html" todir="${findbugs.out.dir}"/>

        <ant dir="${icu4j.localespi.dir}" inheritAll="false" target="findbugs"/>
        <copy file="${icu4j.localespi.dir}/${out.dir}/fb-localespi.html" todir="${findbugs.out.dir}"/>
    </target>

    <!-- compile targets -->
    <target name="core" description="Build core classes">
        <ant dir="${icu4j.core.dir}" inheritAll="false"/>
    </target>

    <target name="collate" depends="core" description="Build collation classes">
        <ant dir="${icu4j.collate.dir}" inheritAll="false"/>
    </target>

    <target name="charset" depends="core" description="Build charset classes">
        <ant dir="${icu4j.charset.dir}" inheritAll="false"/>
    </target>

    <target name="currdata" depends="core" description="Build currency data classes">
        <ant dir="${icu4j.currdata.dir}" inheritAll="false"/>
    </target>

    <target name="langdata" depends="core" description="Build language data classes">
        <ant dir="${icu4j.langdata.dir}" inheritAll="false"/>
    </target>

    <target name="localespi" if="is.java6.plus" description="Build Locale SPI classes">
        <antcall target="_build-localespi"/>
    </target>

    <target name="_build-localespi" depends="core, collate, currdata, langdata, regiondata">
        <ant dir="${icu4j.localespi.dir}" inheritAll="false"/>
    </target>

    <target name="regiondata" depends="core" description="Build region data classes">
        <ant dir="${icu4j.regiondata.dir}" inheritAll="false"/>
    </target>

    <target name="translit" depends="core" description="Build translit classes">
        <ant dir="${icu4j.translit.dir}" inheritAll="false"/>
    </target>

    <target name="test-framework" depends="core" description="Build test framework classes">
        <ant dir="${icu4j.test-framework.dir}" inheritAll="false"/>
    </target>

    <target name="core-tests" depends="core, test-framework" description="Build core tests">
        <ant dir="${icu4j.core-tests.dir}" inheritAll="false"/>
    </target>

    <target name="collate-tests" depends="collate, test-framework" description="Build core tests">
        <ant dir="${icu4j.collate-tests.dir}" inheritAll="false"/>
    </target>

    <target name="charset-tests" depends="charset, test-framework" description="Build charset tests">
        <ant dir="${icu4j.charset-tests.dir}" inheritAll="false"/>
    </target>

    <target name="localespi-tests" if="is.java6.plus" description="Build Locale SPI tests">
        <antcall target="_build-localespi-tests"/>
    </target>

    <target name="_build-localespi-tests" depends="localespi, test-framework">
        <ant dir="${icu4j.localespi-tests.dir}" inheritAll="false"/>
    </target>

    <target name="packaging-tests" depends="test-framework" description="Build packaging tests">
        <ant dir="${icu4j.packaging-tests.dir}" inheritAll="false"/>
    </target>

    <target name="translit-tests" depends="translit, test-framework" description="Build translit tests">
        <ant dir="${icu4j.translit-tests.dir}" inheritAll="false"/>
    </target>

    <target name="testall" depends="test-framework" description="Build top level TestAll">
        <ant dir="${icu4j.testall.dir}" inheritAll="false"/>
    </target>

    <target name="demos" depends="core, charset, translit" description="Build demo classes">
        <ant dir="${icu4j.demos.dir}" inheritAll="false"/>
    </target>

    <target name="samples" depends="core, charset, collate, translit" description="Build sample classes">
        <ant dir="${icu4j.samples.dir}" inheritAll="false"/>
    </target>

    <target name="build-tools" description="Build build-tool classes">
        <ant dir="${icu4j.build-tools.dir}" inheritAll="false"/>
    </target>

    <target name="tools" depends="core, core-tests, collate, translit, translit-tests" description="Build tool classes">
        <ant dir="${icu4j.tools.dir}" inheritAll="false"/>
    </target>

    <target name="perf-tests" if="is.java6.plus" depends="core, charset, collate, tools" description="Build performance test classes">
        <ant dir="${icu4j.perf-tests.dir}" inheritAll="false"/>
    </target>

    <!-- doc targets -->
    <target name="docs" depends="info, build-tools, _checkJCite, _docsWithJCite, _docsWithoutJCite" description="Build API documents"/>

    <target name="_checkJCite" if="env.JCITE_DIR">
        <fileset dir="${env.JCITE_DIR}" id="jcite.files">
            <include name="build/*.jar"/>
            <include name="lib/*.jar"/>
        </fileset>
        <pathconvert property="jcite.libs" refid="jcite.files"/>

        <dirset dir="${basedir}" id="jcite.src.dirs">
            <include name="samples/src"/>
            <include name="demos/src"/>
            <include name="main/tests/*/src"/>
        </dirset>
        <pathconvert property="jcite.addl.src" refid="jcite.src.dirs"/>
    </target>

    <target name="_docsStyleSheet">
        <condition property="docs.style.sheet" value="stylesheet7.css" else="stylesheet.css">
            <isset property="is.java7.plus"/>
        </condition>
    </target>

    <!-- doclint in V8 is too strict to handle existing html in javadoc -->
    <target name="_setLintV8" unless="is.pre.java8">
        <property name="lintParam" value="-Xdoclint:-html"/>
    </target>
    <target name="_setLintPreV8" if="is.pre.java8">
        <property name="lintParam" value=""/>
    </target>
    
    <target name="_docsWithJCite" depends="_docsStyleSheet, _setLintV8, _setLintPreV8" if="jcite.libs">
        <echo message="JCite library path:             ${jcite.libs}"/>
        <echo message="JCite additional source path:   ${jcite.addl.src}"/>
        <echo message="Custom stylesheet:              ${docs.style.sheet}"/>
        <javadoc
                destdir="${doc.dir}"
                nodeprecatedlist="true"
                windowtitle="${icu4j.api.doc.window.title}"
                doctitle="${icu4j.api.doc.title}"
                header="${icu4j.api.doc.header}"
                encoding="${java.src.encoding}"
                docencoding="UTF-8"
                charset="UTF-8"
                bottom="&lt;font size=-1&gt;Copyright (c) ${current.year} IBM Corporation and others.&lt;/font&gt;"
                additionalparam="${lintParam} -breakiterator -use -tagletpath ${icu4j.build-tools.jar}${path.separator}${jcite.libs} -taglet com.ibm.icu.dev.tool.docs.ICUTaglet -taglet ch.arrenbrecht.jcite.JCiteTaglet -J-Djcitesourcepath=${jcite.addl.src} -J-Dfile.encoding=UTF-8"
                link="${icu4j.api.doc.jdk.link}"
                source="1.5"
                stylesheetfile="${docs.style.sheet}">
            <packageset dir="${icu4j.core.dir}/src">
                <include name="com/ibm/icu/lang/**"/>
                <include name="com/ibm/icu/math/**"/>
                <include name="com/ibm/icu/text/**"/>
                <include name="com/ibm/icu/util/**"/>
            </packageset>
            <packageset dir="${icu4j.collate.dir}/src">
                <include name="com/ibm/icu/text/**"/>
            </packageset>
            <packageset dir="${icu4j.translit.dir}/src">
                <include name="com/ibm/icu/text/**"/>
            </packageset>
            <packageset dir="${icu4j.charset.dir}/src">
                <include name="com/ibm/icu/charset/**"/>
            </packageset>
        </javadoc>
    </target>

    <target name="_docsWithoutJCite" unless="jcite.libs">
        <javadoc
                destdir="${doc.dir}"
                nodeprecatedlist="true"
                windowtitle="${icu4j.api.doc.window.title}"
                doctitle="${icu4j.api.doc.title}"
                header="${icu4j.api.doc.header}"
                encoding="${java.src.encoding}"
                docencoding="UTF-8"
                charset="UTF-8"
                bottom="&lt;font size=-1&gt;Copyright (c) ${current.year} IBM Corporation and others.&lt;/font&gt;"
                additionalparam="-breakiterator -use -tagletpath ${icu4j.build-tools.jar} -taglet com.ibm.icu.dev.tool.docs.ICUTaglet"
                link="${icu4j.api.doc.jdk.link}"
                source="1.5">
            <packageset dir="${icu4j.core.dir}/src">
                <include name="com/ibm/icu/lang/**"/>
                <include name="com/ibm/icu/math/**"/>
                <include name="com/ibm/icu/text/**"/>
                <include name="com/ibm/icu/util/**"/>
            </packageset>
            <packageset dir="${icu4j.collate.dir}/src">
                <include name="com/ibm/icu/text/**"/>
            </packageset>
            <packageset dir="${icu4j.translit.dir}/src">
                <include name="com/ibm/icu/text/**"/>
            </packageset>
            <packageset dir="${icu4j.charset.dir}/src">
                <include name="com/ibm/icu/charset/**"/>
            </packageset>
        </javadoc>
    </target>

    <!-- JaCoCo code coverage target -->
    <taskdef uri="antlib:org.jacoco.ant" resource="org/jacoco/ant/antlib.xml" onerror="ignore">
        <classpath path="${env.JACOCO_DIR}/lib/jacocoant.jar"/>
    </taskdef>

    <target name="coverageJaCoCo" depends="jar, tests" description="Run the ICU4J unit tests and generate code coverage report">
        <property name="jacoco.out.dir" value="${out.dir}/jacoco"/>
        <property name="jacoco.exec.data.file" value="${jacoco.out.dir}/jacoco.exec"/>
        <property name="jacoco.report.html.zip" value="${jacoco.out.dir}/report_html.zip"/>
        <property name="jacoco.report.xml" value="${jacoco.out.dir}/report.xml"/>
        <property name="jacoco.report.csv" value="${jacoco.out.dir}/report.csv"/>

        <delete dir="${jacoco.out.dir}"/>
        <mkdir dir="${jacoco.out.dir}"/>

        <jacoco:coverage destfile="${jacoco.exec.data.file}">
            <java classname="com.ibm.icu.dev.test.TestAll" fork="yes" failonerror="true">
                <jvmarg line="${jvm_options} -ea -Djava.awt.headless=true"/>
                <classpath>
                    <pathelement location="${icu4j.jar.file}"/>
                    <pathelement location="${icu4j-charset.jar.file}"/>
                    <pathelement location="${icu4j.test-framework.jar}"/>
                    <pathelement location="${icu4j.core-tests.jar}"/>
                    <pathelement location="${icu4j.collate-tests.jar}"/>
                    <pathelement location="${icu4j.charset-tests.jar}"/>
                    <pathelement location="${icu4j.translit-tests.jar}"/>
                    <pathelement location="${icu4j.testall.jar}"/>
            </classpath>
        </java>
        </jacoco:coverage>

        <jacoco:report>
            <executiondata>
                <file file="${jacoco.exec.data.file}"/>
            </executiondata>

            <structure name="ICU4J Project">
                <classfiles>
                    <fileset dir=".">
                        <include name="${icu4j.jar.file}"/>
                        <include name="${icu4j-charset.jar.file}"/>
                    </fileset>
                </classfiles>
                <sourcefiles encoding="UTF-8">
                    <fileset dir="${icu4j.core.dir}/src"/>
                    <fileset dir="${icu4j.collate.dir}/src"/>
                    <fileset dir="${icu4j.currdata.dir}/src"/>
                    <fileset dir="${icu4j.langdata.dir}/src"/>
                    <fileset dir="${icu4j.regiondata.dir}/src"/>
                    <fileset dir="${icu4j.translit.dir}/src"/>

                    <fileset dir="${icu4j.charset.dir}/src"/>
                </sourcefiles>
            </structure>

            <html destfile="${jacoco.report.html.zip}"/>
            <xml destfile="${jacoco.report.xml}"/>
            <csv destfile="${jacoco.report.csv}"/>
        </jacoco:report>
    </target>

    <!-- Clover code coverage target -->
    <property name="clover.out.dir" value="${out.dir}/clover"/>
    <property name="clover.jar" location="${env.CLOVER_DIR}/clover.jar"/>
    <taskdef resource="cloverlib.xml" classpath="${clover.jar}" onerror="ignore"/>

    <target name="codeCoverage" depends="clean" description="Generate code coverage report with clover">
        <!-- Set up clover -->
        <mkdir dir="${clover.out.dir}"/>
        <clover-setup initstring="${clover.out.dir}/clover.db">
            <files>
                <exclude name="**/dev/**/*.java"/>
            </files>
            <methodContext name="API" regexp="(.* )?public .*"/>
        </clover-setup>

        <!-- Build components with clover instrumentation -->
        <ant dir="${icu4j.core.dir}" inheritAll="false" inheritRefs="true">
            <property name="build.compiler" value="${build.compiler}"/>
        </ant>
        <ant dir="${icu4j.collate.dir}" inheritAll="false" inheritRefs="true">
            <property name="build.compiler" value="${build.compiler}"/>
        </ant>
        <ant dir="${icu4j.charset.dir}" inheritAll="false" inheritRefs="true">
            <property name="build.compiler" value="${build.compiler}"/>
        </ant>
        <ant dir="${icu4j.currdata.dir}" inheritAll="false" inheritRefs="true">
            <property name="build.compiler" value="${build.compiler}"/>
        </ant>
        <ant dir="${icu4j.langdata.dir}" inheritAll="false" inheritRefs="true">
            <property name="build.compiler" value="${build.compiler}"/>
        </ant>
        <ant dir="${icu4j.regiondata.dir}" inheritAll="false" inheritRefs="true">
            <property name="build.compiler" value="${build.compiler}"/>
        </ant>
        <ant dir="${icu4j.translit.dir}" inheritAll="false" inheritRefs="true">
            <property name="build.compiler" value="${build.compiler}"/>
        </ant>
        <ant dir="${icu4j.test-framework.dir}" inheritAll="false" inheritRefs="true">
            <property name="build.compiler" value="${build.compiler}"/>
        </ant>
        <ant dir="${icu4j.core-tests.dir}" inheritAll="false" inheritRefs="true">
            <property name="build.compiler" value="${build.compiler}"/>
        </ant>
        <ant dir="${icu4j.collate-tests.dir}" inheritAll="false" inheritRefs="true">
            <property name="build.compiler" value="${build.compiler}"/>
        </ant>
        <ant dir="${icu4j.charset-tests.dir}" inheritAll="false" inheritRefs="true">
            <property name="build.compiler" value="${build.compiler}"/>
        </ant>
        <ant dir="${icu4j.translit-tests.dir}" inheritAll="false" inheritRefs="true">
            <property name="build.compiler" value="${build.compiler}"/>
        </ant>
        <ant dir="${icu4j.testall.dir}" inheritAll="false" inheritRefs="true">
            <property name="build.compiler" value="${build.compiler}"/>
        </ant>

        <!-- Run the test suites -->
        <java classname="com.ibm.icu.dev.test.TestAll" fork="yes" failonerror="true">
            <classpath>
                <pathelement location="${icu4j.core.jar}"/>
                <pathelement location="${icu4j.collate.jar}"/>
                <pathelement location="${icu4j.charset.jar}"/>
                <pathelement location="${icu4j.currdata.jar}"/>
                <pathelement location="${icu4j.langdata.jar}"/>
                <pathelement location="${icu4j.regiondata.jar}"/>
                <pathelement location="${icu4j.translit.jar}"/>
                <pathelement location="${icu4j.test-framework.jar}"/>
                <pathelement location="${icu4j.core-tests.jar}"/>
                <pathelement location="${icu4j.collate-tests.jar}"/>
                <pathelement location="${icu4j.charset-tests.jar}"/>
                <pathelement location="${icu4j.translit-tests.jar}"/>
                <pathelement location="${icu4j.testall.jar}"/>
                <pathelement location="${clover.jar}"/>
            </classpath>
        </java>

        <!-- Generate HTML coverage report -->
        <!-- <clover-html-report outdir="${clover.out.dir}/html" title="ICU4J Code Coverage"/> -->
        <clover-report>
            <current outfile="${clover.out.dir}/html" title="ICU4J Code Coverage">
                <format type="html" filter="assert" />
            </current>
        </clover-report>
    </target>

    <!-- Release management targets -->
    <target name="checktags" depends="info, build-tools" description="Check API tags before release">
        <javadoc source="1.5"
                 encoding="${java.src.encoding}">
            <packageset dir="${icu4j.core.dir}/src">
                <include name="com/ibm/icu/lang/**"/>
                <include name="com/ibm/icu/math/**"/>
                <include name="com/ibm/icu/text/**"/>
                <include name="com/ibm/icu/util/**"/>
            </packageset>
            <packageset dir="${icu4j.collate.dir}/src">
                <include name="com/ibm/icu/**"/>
            </packageset>
            <packageset dir="${icu4j.charset.dir}/src">
                <include name="com/ibm/icu/charset/**"/>
            </packageset>
            <doclet name="com.ibm.icu.dev.tool.docs.CheckTags" path="${icu4j.build-tools.jar}"/>
        </javadoc>
    </target>

    <target name="gatherapi" depends="info, build-tools" description="Run API database generator tool">
        <mkdir dir="${out.dir}"/>
        <javadoc source="1.5"
                 encoding="${java.src.encoding}">
            <packageset dir="${icu4j.core.dir}/src">
                <include name="com/ibm/icu/lang/**"/>
                <include name="com/ibm/icu/math/**"/>
                <include name="com/ibm/icu/text/**"/>
                <include name="com/ibm/icu/util/**"/>
            </packageset>
            <packageset dir="${icu4j.collate.dir}/src">
                <include name="com/ibm/icu/text/**"/>
                <include name="com/ibm/icu/util/**"/>
            </packageset>
            <packageset dir="${icu4j.charset.dir}/src">
                <include name="com/ibm/icu/charset/**"/>
            </packageset>
            <packageset dir="${icu4j.translit.dir}/src">
                <include name="com/ibm/icu/text/**"/>
            </packageset>
            <doclet name="com.ibm.icu.dev.tool.docs.GatherAPIData" path="${icu4j.build-tools.jar}">
                <param name="-name" value="ICU4J ${icu4j.impl.version}"/>
                <param name="-output" value="${out.dir}/icu4j${api.report.version}.api3"/>
                <param name="-internal"/>
                <param name="-version"/>
                <param name="-gzip"/>
            </doclet>
        </javadoc>
    </target>

    <target name="apireport" depends="info, gatherapi" description="Run API report generator tool">
        <java classname="com.ibm.icu.dev.tool.docs.ReportAPI"
                classpath="${icu4j.build-tools.jar}"
                failonerror="true">
            <arg value="-old:" />
            <arg value="${icu4j.build-tools.dir}/icu4j${api.report.prev.version}.api3.gz" />
            <arg value="-new:" />
            <arg value="${out.dir}/icu4j${api.report.version}.api3.gz" />
            <arg value="-html" />
            <arg value="-out:" />
            <arg value="${out.dir}/icu4j_compare_${api.report.prev.version}_${api.report.version}.html" />
        </java>
    </target>

    <target name="gatherapiOld" depends="info, build-tools" description="Run API database generator tool (Pre Java 5 style)">
        <mkdir dir="${out.dir}"/>
        <javadoc source="1.5"
                 encoding="${java.src.encoding}">
            <packageset dir="${icu4j.core.dir}/src">
                <include name="com/ibm/icu/lang/**"/>
                <include name="com/ibm/icu/math/**"/>
                <include name="com/ibm/icu/text/**"/>
                <include name="com/ibm/icu/util/**"/>
            </packageset>
            <packageset dir="${icu4j.collate.dir}/src">
                <include name="com/ibm/icu/text/**"/>
                <include name="com/ibm/icu/util/**"/>
            </packageset>
            <packageset dir="${icu4j.charset.dir}/src">
                <include name="com/ibm/icu/charset/**"/>
            </packageset>
            <packageset dir="${icu4j.translit.dir}/src">
                <include name="com/ibm/icu/text/**"/>
            </packageset>
            <doclet name="com.ibm.icu.dev.tool.docs.GatherAPIDataOld" path="${icu4j.build-tools.jar}">
                <param name="-name" value="ICU4J ${icu4j.impl.version}"/>
                <param name="-output" value="${out.dir}/icu4j${api.report.version}.api"/>
                <param name="-internal"/>
                <param name="-gzip"/>
            </doclet>
        </javadoc>
    </target>

    <target name="apireportOld" depends="info, gatherapiOld" description="Run API report generator tool (Pre Java 5 Style)">
        <java classname="com.ibm.icu.dev.tool.docs.ReportAPI"
                classpath="${icu4j.build-tools.jar}"
                failonerror="true">
            <arg value="-old:" />
            <arg value="${icu4j.build-tools.dir}/icu4j${api.report.prev.version}.api.gz" />
            <arg value="-new:" />
            <arg value="${out.dir}/icu4j${api.report.version}.api.gz" />
            <arg value="-html" />
            <arg value="-internal" />
            <arg value="-out:" />
            <arg value="${out.dir}/icu4j_compare_${api.report.prev.version}_${api.report.version}.html" />
        </java>
    </target>

    <target name="checkDeprecated" depends="info, build-tools, gatherapi, main"
        description="Check consistency between javadoc @deprecated and @Deprecated annotation">
        <java classname="com.ibm.icu.dev.tool.docs.DeprecatedAPIChecker"
                failonerror="true">
            <arg value="${out.dir}/icu4j${api.report.version}.api3.gz" />
            <classpath>
                <pathelement location="${icu4j.build-tools.jar}"/>
                <pathelement location="${icu4j.core.jar}"/>
                <pathelement location="${icu4j.collate.jar}"/>
                <pathelement location="${icu4j.charset.jar}"/>
                <pathelement location="${icu4j.currdata.jar}"/>
                <pathelement location="${icu4j.langdata.jar}"/>
                <pathelement location="${icu4j.regiondata.jar}"/>
                <pathelement location="${icu4j.translit.jar}"/>
            </classpath>
        </java>
    </target>

    <target name="draftAPIs" depends="info, gatherapi" description="Run API collector tool and generate draft API report">
        <java classname="com.ibm.icu.dev.tool.docs.CollectAPI"
                classpath="${icu4j.build-tools.jar}"
                failonerror="true">
            <arg value="-f"/>
            <arg value="Draft"/>
            <arg value="-o"/>
            <arg value="${out.dir}/draftAPIs.html"/>
            <arg value="${out.dir}/icu4j${api.report.version}.api3.gz" />
        </java>
    </target>

    <target name="swatDeprecated" depends="build-tools" description="Convert @deprecated @draft tags to @provisional">
        <antcall target="_runSwatDeprecated">
            <param name="swat.deprecated.opt" value="-dep"/>
        </antcall>
    </target>

    <target name="swatProvisional" depends="build-tools" description="Convert @provisional tags to @deprecated @draft">
        <antcall target="_runSwatDeprecated">
            <param name="swat.deprecated.opt" value="-prov"/>
        </antcall>
    </target>

    <target name="_runSwatDeprecated">
        <java classname="com.ibm.icu.dev.tool.docs.SwatDeprecated"
                classpath="${icu4j.build-tools.jar}"
                failonerror="true">
            <arg value="${swat.deprecated.opt}"/>
            <arg value="-src"/>
            <arg value="${icu4j.core.dir}/src"/>
            <arg value="-dst"/>
            <arg value="${icu4j.core.dir}/src"/>
            <arg value="-overwrite"/>
            <arg value="-verbose"/>
        </java>
        <java classname="com.ibm.icu.dev.tool.docs.SwatDeprecated"
                classpath="${icu4j.build-tools.jar}"
                failonerror="true">
            <arg value="${swat.deprecated.opt}"/>
            <arg value="-src"/>
            <arg value="${icu4j.charset.dir}/src"/>
            <arg value="-dst"/>
            <arg value="${icu4j.charset.dir}/src"/>
            <arg value="-overwrite"/>
            <arg value="-verbose"/>
        </java>
    </target>

    <target name="serialTestData" depends="main, tests">
        <property name="serial.test.data.dir" value="${out.dir}/serialTestData"/>
        <delete dir="${serial.test.data.dir}"/>
        <mkdir dir="${serial.test.data.dir}"/>
        <java classname="com.ibm.icu.dev.test.serializable.SerializableWriter" fork="yes" failonerror="true">
            <arg line="${serial.test.data.dir}"/>
            <classpath>
                <pathelement location="${icu4j.core.jar}"/>
                <pathelement location="${icu4j.collate.jar}"/>
                <pathelement location="${icu4j.charset.jar}"/>
                <pathelement location="${icu4j.currdata.jar}"/>
                <pathelement location="${icu4j.langdata.jar}"/>
                <pathelement location="${icu4j.regiondata.jar}"/>
                <pathelement location="${icu4j.translit.jar}"/>
                <pathelement location="${icu4j.test-framework.jar}"/>
                <pathelement location="${icu4j.core-tests.jar}"/>
            </classpath>
        </java>
        <echo message="Note: The serialization compatibility test data files were"/>
        <echo message="created in ${serial.test.data.dir}. Once you confirm"/>
        <echo message="the test runs clean, you should copy the data file directory to"/>
        <echo message="main/tests/core/src/com/ibm/icu/dev/test/serializable/data."/>
    </target>

    <!-- Special packaging targets -->
    <target name="translitIMEJar" depends="info" description="Build transliterator IME 'icutransime.jar' jar file">
        <property name="translit.ime.out.dir" value="${out.dir}/translit_ime"/>
 
        <mkdir dir="${translit.ime.out.dir}/bin"/>
        <javac destdir="${translit.ime.out.dir}/bin"
                source="${javac.source}"
                target="${javac.target}"
                encoding="${java.src.encoding}"
                debug="on" deprecation="off">
            <src path="${icu4j.core.dir}/src"/>
            <src path="${icu4j.translit.dir}/src"/>
            <src path="${icu4j.tools.dir}/src"/>
            <include name="com/ibm/icu/dev/tool/ime/translit/*.java"/>
        </javac>

        <copy file="${icu4j.tools.dir}/src/com/ibm/icu/dev/tool/ime/translit/Transliterator.properties"
                todir="${translit.ime.out.dir}/bin/com/ibm/icu/dev/tool/ime/translit"/>

        <mkdir dir="${translit.ime.out.dir}/lib"/>
        <jar jarfile="${translit.ime.out.dir}/lib/icutransime.jar"
                compress="true"
                basedir="${translit.ime.out.dir}/bin"
                includes="com/ibm/icu/dev/tool/ime/translit/**/*"
                manifest="${icu4j.tools.dir}/src/com/ibm/icu/dev/tool/ime/translit/manifest.stub">
            <metainf dir="${icu4j.tools.dir}/src/com/ibm/icu/dev/tool/ime/translit" includes="services/*" />
        </jar>
    </target>

    <target name="indicIMEJar" depends="info" description="Build indic IME 'icuindicime.jar' jar file">
        <property name="indic.ime.out.dir" value="${out.dir}/indic_ime"/>
 
        <mkdir dir="${indic.ime.out.dir}/bin"/>
        <javac destdir="${indic.ime.out.dir}/bin"
                source="${javac.source}"
                target="${javac.target}"
                encoding="${java.src.encoding}"
                debug="on" deprecation="off">
            <src path="${icu4j.core.dir}/src"/>
            <src path="${icu4j.tools.dir}/src"/>
            <include name="com/ibm/icu/dev/tool/ime/indic/*.java"/>
        </javac>

        <copy file="${icu4j.tools.dir}/src/com/ibm/icu/dev/tool/ime/indic/DisplayNames.properties"
                todir="${indic.ime.out.dir}/bin/com/ibm/icu/dev/tool/ime/indic"/>

        <mkdir dir="${indic.ime.out.dir}/lib"/>
        <jar jarfile="${indic.ime.out.dir}/lib/icuindicime.jar"
                compress="true"
                basedir="${indic.ime.out.dir}/bin"
                includes="com/ibm/icu/dev/tool/ime/indic/**/*"
                manifest="${icu4j.tools.dir}/src/com/ibm/icu/dev/tool/ime/indic/manifest.stub">
            <metainf dir="${icu4j.tools.dir}/src/com/ibm/icu/dev/tool/ime/indic" includes="services/*" />
        </jar>
    </target>

    <target name="cldrUtil" depends="icu4jJar" description="Build Utilities for CLDR tooling">
        <mkdir dir="${cldr.util.out.dir}/bin"/>
        <javac destdir="${cldr.util.out.dir}/bin"
                source="${javac.source}"
                target="${javac.target}"
                encoding="${java.src.encoding}"
                debug="on" deprecation="off"
                classpath="${icu4j.jar.file}">

            <src path="${icu4j.tools.dir}/src"/>
            <src path="${icu4j.translit-tests.dir}/src"/>
            <src path="${icu4j.test-framework.dir}/src"/>

            <include name="com/ibm/icu/dev/test/TestFmwk.java" />
            <include name="com/ibm/icu/dev/util/*.java" />
            <include name="com/ibm/icu/dev/tool/UOption.java" />
        </javac>

        <mkdir dir="${cldr.util.out.dir}/lib"/>
        <jar jarfile="${cldr.util.out.dir}/lib/utilities.jar"
                compress="true"
                basedir="${cldr.util.out.dir}/bin">
            <include name="com/ibm/icu/dev/test/*.class"/>
            <include name="com/ibm/icu/dev/util/*.class"/>
            <include name="com/ibm/icu/dev/tool/UOption*.class"/>
        </jar>
    </target>

    <target name="releaseCLDR" depends="icu4jJar,icu4jSrcJar,cldrUtil" description="Build release files for CLDR tooling">
        <mkdir dir="${cldr.release.dir}"/>
        <!-- icu4j.jar -->
        <copy file="${icu4j.jar.file}" todir="${cldr.release.dir}"/>
        <!-- icu4j-src.jar -->
        <copy file="${icu4j-src.jar.file}" todir="${cldr.release.dir}"/>
        <!-- utilities.jar -->
        <copy file="${cldr.util.out.dir}/lib/utilities.jar" todir="${cldr.release.dir}"/>
        <!-- utilities-src.jar -->
        <jar jarfile="${cldr.release.dir}/utilities-src.jar" compress="true">
            <fileset dir="${icu4j.test-framework.dir}/${src.dir}">
                <include name="com/ibm/icu/dev/test/TestFmwk.java"/>
                <include name="com/ibm/icu/dev/test/*Log*.java"/>
                <include name="com/ibm/icu/dev/test/TestUtil.java"/>
                <include name="com/ibm/icu/dev/test/UTF16Util.java"/>
            </fileset>
            <fileset dir="${icu4j.test-framework.dir}/${src.dir}" includes="com/ibm/icu/dev/util/*.java"/>
            <fileset dir="${icu4j.translit-tests.dir}/${src.dir}" includes="com/ibm/icu/dev/util/*.java"/>
            <fileset dir="${icu4j.tools.dir}/${src.dir}" includes="com/ibm/icu/dev/tool/UOption.java"/>
       </jar>
    </target>

    <target name="xliff" description="Build xliff converter tool">
        <property name="xliff.out.dir" value="${out.dir}/xliff"/>

        <mkdir dir="${xliff.out.dir}/bin"/>
        <javac destdir="${xliff.out.dir}/bin"
                source="1.3"
                target="1.3"
                encoding="${java.src.encoding}"
                debug="on" deprecation="off">
            <src path="${icu4j.tools.dir}/src"/>
            <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"/>
       </javac>

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

        <jar jarfile="${xliff.out.dir}/lib/xliff-src.jar"
                compress="true"
                basedir="${icu4j.tools.dir}/src">
            <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"/>
        </jar>

        <jar jarfile="${xliff.out.dir}/lib/xliff.jar"
                compress="true"
                basedir="${xliff.out.dir}/bin"
                manifest="${icu4j.tools.dir}/src/com/ibm/icu/dev/tool/localeconverter/manifest.stub"/>
    </target>


    <!-- ICU4J modularization targets -->
    <property name="module.dir" value="${out.dir}/module"/>
    <property name="module.bin.dir" value="${module.dir}/bin"/>
    <property name="module.tests.dir" value="${module.dir}/tests"/>
    <property name="module.jar.dir" value="${module.dir}/lib"/>
    <property name="module.jar" value="${module.jar.dir}/icu4j-module.jar"/>

    <target name="moduleJar" description="Create a ICU4J module jar file">
        <mkdir dir="${module.jar.dir}"/>
        <jar jarfile="${module.jar}"
                compress="true"
                basedir="${module.bin.dir}">
            <manifest>
                <attribute name="Built-By" value="${corp}" />
                <section name="com/ibm/icu">
                    <attribute name="Specification-Title" value="ICU4J Modularized Build" />
                    <attribute name="Specification-Version" value="${jar.spec.version}" />
                    <attribute name="Specification-Vendor" value="ICU" />
                    <attribute name="Implementation-Title" value=" ICU for Java Module" />
                    <attribute name="Implementation-Version" value="${jar.impl.version}" />
                    <attribute name="Implementation-Vendor" value="${corp}" />
                    <attribute name="Implementation-Vendor-Id" value="com.ibm" />
                    <attribute name="Copyright-Info" value="${jar.copyright.info}" />
                    <attribute name="Sealed" value="false" />
                </section>
            </manifest>
        </jar>
        <copy file="${module.jar}" tofile="icu4j.jar"/>
    </target>

    <target name="moduleCheck" description="Run tests for a ICU4J module jar">
        <java classname="com.ibm.icu.dev.test.TestAll" fork="yes" failonerror="true">
            <arg value="-nodata"/>
            <classpath>
                <pathelement location="${module.jar}"/>
                <pathelement location="${module.tests.dir}"/>
            </classpath>
        </java>
    </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"/>
        <include name="com/ibm/icu/dev/test/TestAllCore.java"/>
    </patternset>

    <!-- Break Iterator -->
    <target name="breakIterator" depends="_copyFullPropsData" description="Modular build of break iterator services">
        <mkdir dir="${module.bin.dir}"/>
        <javac srcdir="${icu4j.core.dir}/src"
                destdir="${module.bin.dir}"
                source="${javac.source}"
                target="${javac.target}"
                encoding="${java.src.encoding}"
                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>
    </target>

    <target name="breakIteratorTests" depends="breakIterator" description="Modular build of break iterator test suite">
        <mkdir dir="${module.tests.dir}"/>
        <javac destdir="${module.tests.dir}"
                source="${javac.source}"
                target="${javac.target}"
                encoding="${java.src.encoding}"
                classpath="${module.bin.dir}"
                debug="on" deprecation="off">
            <src path="${icu4j.core.dir}/src"/>
            <src path="${icu4j.test-framework.dir}/src"/>
            <src path="${icu4j.core-tests.dir}/src"/>
            <src path="${icu4j.testall.dir}/src"/>

            <patternset refid="common.test.sources"/>
            <include name="com/ibm/icu/dev/test/rbbi/**/*.java"/>
        </javac>

        <copy file="${icu4j.core-tests.dir}/src/com/ibm/icu/dev/test/rbbi/rbbitst.txt"
                todir="${module.tests.dir}/com/ibm/icu/dev/test/rbbi"/>
    </target>

    <!-- Calendar -->
    <target name="calendar" description="Modular build of calendar services">
        <mkdir dir="${module.bin.dir}"/>
        <javac srcdir="${icu4j.core.dir}/src"
                destdir="${module.bin.dir}"
                source="${javac.source}"
                target="${javac.target}"
                encoding="${java.src.encoding}"
                debug="on" deprecation="off">
            <include name="com/ibm/icu/impl/data/*Holiday*.java"/>
            <include name="com/ibm/icu/impl/TimeZoneNames*.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>

        <!-- Calendar does not require Collation data, BreakIterator data -->
        <unjar src="${icu4j.data.jar}" dest="${module.bin.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" />
            </patternset>
        </unjar>
        <unjar src="${icu4j.tzdata.jar}" dest="${module.bin.dir}">
            <patternset>
                <include name="**/*.res" />
            </patternset>
        </unjar>
    </target>

    <target name="calendarTests" depends="calendar" description="Modular build of calendar test suite">
        <mkdir dir="${module.tests.dir}"/>
        <javac destdir="${module.tests.dir}"
                source="${javac.source}"
                target="${javac.target}"
                encoding="${java.src.encoding}"
                classpath="${module.bin.dir}"
                debug="on" deprecation="off">
            <src path="${icu4j.core.dir}/src"/>
            <src path="${icu4j.test-framework.dir}/src"/>
            <src path="${icu4j.core-tests.dir}/src"/>
            <src path="${icu4j.testall.dir}/src"/>

            <patternset refid="common.test.sources"/>
            <include name="com/ibm/icu/dev/test/calendar/**/*.java" />
        </javac>

        <unjar src="${icu4j.testdata.jar}" dest="${module.tests.dir}">
            <patternset>
                <include name="**/calendar.res"/>
            </patternset>
        </unjar>
    </target>

    <!-- Collator -->
    <!-- this module will soon be obsolete, use the collate jar -->
    <target name="collator" description="Modular build of collator services">
        <mkdir dir="${module.bin.dir}"/>
        <javac  destdir="${module.bin.dir}"
                source="${javac.source}"
                target="${javac.target}"
                encoding="${java.src.encoding}"
                debug="on" deprecation="off">
            <src path="${icu4j.core.dir}/src"/>
            <src path="${icu4j.collate.dir}/src"/>

            <include name="com/ibm/icu/impl/coll/*.java"/>
            <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>

        <unjar src="${icu4j.data.jar}" dest="${module.bin.dir}">
            <patternset>
                <include name="**/*.icu"/>
                <include name="**/coll/*.res"/>
                <include name="**/*.brk"/>
                <include name="**/*.nrm"/>
                <include name="**/icudt${icu4j.data.version}b/res_index.res"/>
                <include name="**/keyTypeData.res"/>
            </patternset>
        </unjar>
    </target>

    <target name="collatorTests" depends="collator" description="Modular build of collator test suite">
        <mkdir dir="${module.tests.dir}"/>
        <javac destdir="${module.tests.dir}"
                source="${javac.source}"
                target="${javac.target}"
                encoding="${java.src.encoding}"
                classpath="${module.bin.dir}"
                debug="on" deprecation="off">
            <src path="${icu4j.core.dir}/src"/>
            <src path="${icu4j.test-framework.dir}/src"/>
            <src path="${icu4j.collate-tests.dir}/src"/>
            <src path="${icu4j.testall.dir}/src"/>

            <patternset refid="common.test.sources"/>
            <include name="com/ibm/icu/dev/test/TestAllCollate.java"/>
            <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/AlphabeticIndexTest.java"/>
            <exclude name="com/ibm/icu/dev/test/collator/RandomCollator.java"/>
            <exclude name="com/ibm/icu/dev/test/collator/IndexCharactersTest.java"/>
        </javac>

        <copy todir="${module.tests.dir}">
            <fileset dir="${icu4j.collate-tests.dir}/src">
                <include name="com/ibm/icu/dev/data/*.txt"/>
            </fileset>
        </copy>
    </target>

    <!-- Compression -->
    <target name="compression" description="Modular build of compression services">
        <mkdir dir="${module.bin.dir}"/>
        <javac srcdir="${icu4j.core.dir}/src"
                destdir="${module.bin.dir}"
                source="${javac.source}"
                target="${javac.target}"
                encoding="${java.src.encoding}"
                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="Modular build of compression test suite">
        <mkdir dir="${module.tests.dir}"/>
        <javac destdir="${module.tests.dir}"
                source="${javac.source}"
                target="${javac.target}"
                encoding="${java.src.encoding}"
                classpath="${module.bin.dir}"
                debug="on" deprecation="off">
            <src path="${icu4j.core.dir}/src"/>
            <src path="${icu4j.test-framework.dir}/src"/>
            <src path="${icu4j.core-tests.dir}/src"/>
            <src path="${icu4j.testall.dir}/src"/>

            <patternset refid="common.test.sources"/>
            <include name="com/ibm/icu/dev/test/compression/**/*.java"/>
        </javac>
    </target>

    <!-- Format -->
    <target name="format" description="Modular build of format services">
        <mkdir dir="${module.bin.dir}"/>
        <javac srcdir="${icu4j.core.dir}/src"
                destdir="${module.bin.dir}"
                source="${javac.source}"
                target="${javac.target}"
                encoding="${java.src.encoding}"
                debug="on" deprecation="off">
            <include name="com/ibm/icu/impl/LocaleDisplayNamesImpl.java"/>
            <include name="com/ibm/icu/impl/TimeZoneNames*.java"/>
            <include name="com/ibm/icu/lang/UCharacter.java"/>
            <include name="com/ibm/icu/text/BreakIteratorFactory.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>

        <javac srcdir="${icu4j.regiondata.dir}/src"
                destdir="${module.bin.dir}"
                source="${javac.source}"
                target="${javac.target}"
                encoding="${java.src.encoding}"
                debug="on" deprecation="off"/>

        <javac srcdir="${icu4j.currdata.dir}/src"
                destdir="${module.bin.dir}"
                source="${javac.source}"
                target="${javac.target}"
                encoding="${java.src.encoding}"
                debug="on" deprecation="off"/>

        <unjar src="${icu4j.data.jar}" dest="${module.bin.dir}">
            <patternset>
                <include name="**/*.icu"/>
                <include name="**/*.brk"/>
                <include name="**/*.res"/>
                <exclude name="**/translit/*.res"/>
            </patternset>
        </unjar>
        <unjar src="${icu4j.tzdata.jar}" dest="${module.bin.dir}">
            <patternset>
                <include name="**/*.res" />
            </patternset>
        </unjar>
    </target>

    <target name="formatTests" depends="format" description="Modular build of format test suite">
        <mkdir dir="${module.tests.dir}"/>
        <javac destdir="${module.tests.dir}"
                source="${javac.source}"
                target="${javac.target}"
                encoding="${java.src.encoding}"
                classpath="${module.bin.dir}"
                debug="on" deprecation="off">
            <src path="${icu4j.core.dir}/src"/>
            <src path="${icu4j.test-framework.dir}/src"/>
            <src path="${icu4j.core-tests.dir}/src"/>
            <src path="${icu4j.testall.dir}/src"/>

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

        <unjar src="${icu4j.testdata.jar}" dest="${module.tests.dir}">
            <patternset>
                <include name="**/format.res"/>
            </patternset>
        </unjar>

        <copy file="${icu4j.core-tests.dir}/src/com/ibm/icu/dev/test/format/NumberFormatTestCases.txt"
                todir="${module.tests.dir}/com/ibm/icu/dev/test/format"/>

        <copy file="${icu4j.core-tests.dir}/src/com/ibm/icu/dev/data/numberformattestspecification.txt"
                todir="${module.tests.dir}/com/ibm/icu/dev/data"/>

    </target>

    <!-- Normalizer -->
    <target name="normalizer" description="Modular build of normalizer services">
        <mkdir dir="${module.bin.dir}"/>
        <javac srcdir="${icu4j.core.dir}/src"
                destdir="${module.bin.dir}"
                source="${javac.source}"
                target="${javac.target}"
                encoding="${java.src.encoding}"
                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>

        <unjar src="${icu4j.data.jar}" dest="${module.bin.dir}">
            <patternset>
                <include name="**/ubidi.icu"/>
                <include name="**/ucase.icu"/>
                <include name="**/unorm.icu"/>
                <include name="**/uprops.icu"/>
                <include name="**/pnames.icu"/>
                <include name="**/unames.icu"/>
                <include name="**/*.nrm"/>
            </patternset>
        </unjar>
    </target>

    <target name="normalizerTests" depends="normalizer" description="Modular build of normalizer test suite">
        <mkdir dir="${module.tests.dir}"/>
        <javac destdir="${module.tests.dir}"
                source="${javac.source}"
                target="${javac.target}"
                encoding="${java.src.encoding}"
                classpath="${module.bin.dir}"
                debug="on" deprecation="off">
            <src path="${icu4j.core.dir}/src"/>
            <src path="${icu4j.test-framework.dir}/src"/>
            <src path="${icu4j.core-tests.dir}/src"/>
            <src path="${icu4j.testall.dir}/src"/>

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

        <copy todir="${module.tests.dir}">
            <fileset dir="${icu4j.core-tests.dir}/src">
                <include name="com/ibm/icu/dev/data/unicode/*.txt"/>
            </fileset>
        </copy>

        <unjar src="${icu4j.testdata.jar}" dest="${module.tests.dir}">
            <patternset>
                <include name="**/testnorm.nrm"/>
            </patternset>
        </unjar>

    </target>

    <!-- Character Properties -->
    <target name="_copyBasicPropsData">
        <mkdir dir="${module.bin.dir}"/>
        <unjar src="${icu4j.data.jar}" dest="${module.bin.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"/>
                <include name="**/*.nrm"/>
            </patternset>
        </unjar>
    </target>

    <target name="_copyFullPropsData">
        <mkdir dir="${module.bin.dir}"/>
        <unjar src="${icu4j.data.jar}" dest="${module.bin.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"/>
                <include name="**/*.dict"/>
                <include name="**/*.nrm"/>
                <exclude name="**/coll/*.res"/>
                <exclude name="**/translit/*.res"/>
                <exclude name="**/rbnf/*.res"/>
            </patternset>
        </unjar>
        <unjar src="${icu4j.tzdata.jar}" dest="${module.bin.dir}">
            <patternset>
                <include name="**/*.res" />
            </patternset>
        </unjar>
    </target>

    <target name="_propertiesClasses">
        <mkdir dir="${module.bin.dir}"/>
        <javac srcdir="${icu4j.core.dir}/src"
                destdir="${module.bin.dir}"
                source="${javac.source}"
                target="${javac.target}"
                encoding="${java.src.encoding}"
                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">
        <mkdir dir="${module.tests.dir}"/>
        <javac destdir="${module.tests.dir}"
                source="${javac.source}"
                target="${javac.target}"
                encoding="${java.src.encoding}"
                classpath="${module.bin.dir}"
                debug="on" deprecation="off">
            <src path="${icu4j.core.dir}/src"/>
            <src path="${icu4j.test-framework.dir}/src"/>
            <src path="${icu4j.core-tests.dir}/src"/>
            <src path="${icu4j.testall.dir}/src"/>

            <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 todir="${module.tests.dir}">
            <fileset dir="${icu4j.core-tests.dir}/src">
                <include name="com/ibm/icu/dev/data/unicode/SpecialCasing.txt"/>
                <include name="com/ibm/icu/dev/data/unicode/UnicodeData.txt"/>
            </fileset>
        </copy>
    </target>

    <target name="propertiesBasic" depends="_propertiesClasses, _copyBasicPropsData" description="Modular build of basic character properties"/>

    <target name="propertiesBasicTests" depends="propertiesBasic, _propertiesTests" description="Modular build of basic character properties test suite"/>

    <target name="propertiesFull" depends="_propertiesClasses, _copyFullPropsData" description="Modular build of full character properties"/>

    <target name="propertiesFullTests" depends="propertiesFull, _propertiesTests" description="Modular build of full character properties test suite"/>

    <!-- Transliterator -->
    <!-- this module will soon be obsolete, use the translit jar -->
    <target name="transliterator" depends="_propertiesClasses" description="Modular build of transliterator services">
        <mkdir dir="${module.bin.dir}"/>
        <javac  destdir="${module.bin.dir}"
                source="${javac.source}"
                target="${javac.target}"
                encoding="${java.src.encoding}"
                debug="on" deprecation="off">
            <src path="${icu4j.core.dir}/src"/>
            <src path="${icu4j.translit.dir}/src"/>

            <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"/>
            <include name="com/ibm/icu/text/BreakIteratorFactory.java"/>
        </javac>

        <unjar src="${icu4j.data.jar}" dest="${module.bin.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="**/*.dict"/>
                <include name="**/*.nrm"/>
                <include name="**/brkitr/*.res"/>
                <include name="**/translit/*.res"/>
                <include name="**/likelySubtags.res"/>
            </patternset>
        </unjar>
    </target>

    <target name="transliteratorTests" depends="transliterator" description="Modular build of transliterator test suite">
        <mkdir dir="${module.tests.dir}"/>
        <javac destdir="${module.tests.dir}"
                source="${javac.source}"
                target="${javac.target}"
                encoding="${java.src.encoding}"
                classpath="${module.bin.dir}"
                debug="on" deprecation="off">
            <src path="${icu4j.core.dir}/src"/>
            <src path="${icu4j.test-framework.dir}/src"/>
            <src path="${icu4j.translit-tests.dir}/src"/>
            <src path="${icu4j.testall.dir}/src"/>

            <patternset refid="common.test.sources"/>
            <include name="com/ibm/icu/dev/test/TestAllTranslit.java"/>
            <include name="com/ibm/icu/dev/test/translit/**/*.java"/>
            <exclude name="com/ibm/icu/dev/test/translit/UnicodeFilterLogic*.java"/>
        </javac>

        <copy file="${icu4j.translit-tests.dir}/src/com/ibm/icu/dev/test/translit/langtagRegex.txt"
                todir="${module.tests.dir}/com/ibm/icu/dev/test/translit"/>
    </target>

    <!-- StringPrep -->
    <target name="stringPrep" depends="normalizer" description="Modular build of stringprep services">
        <mkdir dir="${module.bin.dir}"/>
        <javac srcdir="${icu4j.core.dir}/src"
                destdir="${module.bin.dir}"
                source="${javac.source}"
                target="${javac.target}"
                encoding="${java.src.encoding}"
                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>

        <unjar src="${icu4j.data.jar}" dest="${module.bin.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="stringPrepTests" depends="stringPrep" description="Modular build of stringprep test suite">
        <mkdir dir="${module.tests.dir}"/>
        <javac destdir="${module.tests.dir}"
                source="${javac.source}"
                target="${javac.target}"
                encoding="${java.src.encoding}"
                classpath="${module.bin.dir}"
                debug="on" deprecation="off">
            <src path="${icu4j.core.dir}/src"/>
            <src path="${icu4j.test-framework.dir}/src"/>
            <src path="${icu4j.core-tests.dir}/src"/>
            <src path="${icu4j.testall.dir}/src"/>

            <patternset refid="common.test.sources"/>
            <include name="com/ibm/icu/dev/test/stringprep/**/*.java"/>
        </javac>

        <unjar src="${icu4j.testdata.jar}" dest="${module.tests.dir}">
            <patternset>
                <include name="**/*.spp"/>
                <include name="**/idna_rules.res"/>
            </patternset>
        </unjar>

        <copy file="${icu4j.core-tests.dir}/src/com/ibm/icu/dev/data/IDNATestInput.txt"
                todir="${module.tests.dir}/com/ibm/icu/dev/data"/>
    </target>

    <target name="publishToMavenRepo" depends="releaseVer">
        <!--
            Publish libraries to Maven repositories, snapshot or release depending on current
            version in pom.xml.

            Prerequisites
            
            1) Apache Maven Ant tasks - http://maven.apache.org/ant-tasks
            2) GnuPG
            3) Put build-local.properties to specify followings
            
                maven-ant-tasks.jar = [location of maven ant tasks jar file]
                gpg.user = ICU Project
                gpg.passphrase = [passprase for ICU Project's PGP key]

            4) Maven configuration file ~/.m2/settings.xml
                <settings>
                    <servers>
                        <server>
                            <id>icu4j-releases</id>
                            <username>[your JIRA/Nexus ID]</username>
                            <password>[your JIRA/Nexus password]</password>
                        </server>
                        <server>
                            <id>icu4j-snapshots</id>
                            <username>[your JIRA/Nexus ID]</username>
                            <password>[your JIRA/Nexus password]</password>
                        </server>
                    </servers>
                </settings>

            Note: For now, charset.jar and localespi.jar are excluded.
        -->
        <fail message="Maven Ant Tasks are required to publish libraries. Set maven-ant-tasks.jar property. Maven Ant Tasks URL: http://maven.apache.org/ant-tasks/" unless="maven-ant-tasks.jar"/>
        <condition property="no_maven-ant-tasks">
            <available file="${maven-ant-tasks.jar}"/>
        </condition>
        <fail message="Maven Ant Tasks not found at ${maven-ant-tasks.jar}" unless="no_maven-ant-tasks"/>

        <path id="maven-ant-tasks.classpath" path="${maven-ant-tasks.jar}"/>
        <typedef resource="org/apache/maven/artifact/ant/antlib.xml" uri="urn:maven-artifact-ant"
            classpathref="maven-ant-tasks.classpath"/>

        <xmlproperty file="pom.xml" prefix="pom.xml"/>

        <!-- copy release files -->
        <property name="maven.release.dir" value="${release.dir}/maven"/>

        <property name="maven.icu4j.jar.versioned.file" value="icu4j-${pom.xml.project.version}.jar"/>
        <property name="maven.icu4j-src.jar.versioned.file" value="icu4j-${pom.xml.project.version}-src.jar"/>
        <property name="maven.icu4jdocs.jar.file" value="icu4j-${pom.xml.project.version}-javadoc.jar"/>

        <mkdir dir="${maven.release.dir}"/>

        <copy file="${release.dir}/${icu4j.jar.versioned.file}" tofile="${maven.release.dir}/${maven.icu4j.jar.versioned.file}"/>
        <copy file="${release.dir}/${icu4j-src.jar.versioned.file}" tofile="${maven.release.dir}/${maven.icu4j-src.jar.versioned.file}"/>
        <copy file="${release.dir}/${icu4jdocs.jar.versioned.file}" tofile="${maven.release.dir}/${maven.icu4jdocs.jar.file}"/>

        <copy file="pom.xml" todir="${maven.release.dir}"/>

        <!-- sign release files-->
        <macrodef name="gpg">
            <attribute name="file"/>
            <sequential>
                <delete file="@{file}.asc" failonerror="false"/>
                <exec executable="gpg">
                    <arg value="-u"/>
                    <arg value="${gpg.user}"/>
                    <arg value="-ab"/>
                    <arg value="--passphrase"/>
                    <arg value="${gpg.passphrase}"/>
                    <arg value="-o"/>
                    <arg value="@{file}.asc"/>
                    <arg value="@{file}"/>
                </exec>
            </sequential>
        </macrodef>

        <gpg file="${maven.release.dir}/${maven.icu4j.jar.versioned.file}"/>
        <gpg file="${maven.release.dir}/${maven.icu4j-src.jar.versioned.file}"/>
        <gpg file="${maven.release.dir}/${maven.icu4jdocs.jar.file}"/>

        <gpg file="${maven.release.dir}/pom.xml"/>

        <!-- deploy files to the repository -->
        <deploy xmlns="urn:maven-artifact-ant" file="${maven.release.dir}/${maven.icu4j.jar.versioned.file}">
            <pom file="${maven.release.dir}/pom.xml"/>
            <attach file="${maven.release.dir}/pom.xml.asc" type="pom.asc"/>

            <attach file="${maven.release.dir}/${maven.icu4j.jar.versioned.file}.asc" type="jar.asc"/>
            <attach file="${maven.release.dir}/${maven.icu4j-src.jar.versioned.file}" classifier="sources"/>
            <attach file="${maven.release.dir}/${maven.icu4j-src.jar.versioned.file}.asc" classifier="sources" type="jar.asc"/>
            <attach file="${maven.release.dir}/${maven.icu4jdocs.jar.file}" classifier="javadoc"/>
            <attach file="${maven.release.dir}/${maven.icu4jdocs.jar.file}.asc" classifier="javadoc" type="jar.asc"/>
        </deploy>

        <antcall target="_verify_config_for_release"/>
    </target>

</project>
