<!--
* © 2016 and later: Unicode, Inc. and others.
* License & terms of use: http://www.unicode.org/copyright.html#License
*******************************************************************************
* Copyright (C) 1997-2016, International Business Machines Corporation and    *
* others. All Rights Reserved.                                                *
*******************************************************************************
-->
<project name="icu4j" default="jar" basedir="."
    xmlns:jacoco="antlib:org.jacoco.ant"
    xmlns:ivy="antlib:org.apache.ivy.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="https://docs.oracle.com/javase/8/docs/api/"/>
    <property name="icu4j.api.doc.copyright.footer" value="&lt;font size=-1&gt;Copyright &#x00A9; 2016 Unicode, Inc. and others.&lt;/font&gt;"/>

    <!-- 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"/>
    <property name="external-jars" value="lib"/>

    <!-- 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."/>
            <contains string="${java.version}" substring="1.9."/>
        </or>
    </condition>
    <fail message="The JDK version is too old or unknown.">
        <condition>
            <not>
                <isset property="is.java6.plus"/>
            </not>
        </condition>
    </fail>

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

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

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

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

    <condition property="is.java7.plus">
        <or>
            <isset property="is.java7"/>
            <isset property="is.java8"/>
            <isset property="is.java9"/>
        </or>
    </condition>

    <condition property="is.java8.plus">
        <or>
            <isset property="is.java8"/>
            <isset property="is.java9"/>
        </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.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>

    <target name="ivy-clean">
        <ivy:cleancache/>
    </target>

    <!-- Ivy Targets -->
    <property name="ivy.install.version" value="2.1.0-rc2" />
    <condition property="ivy.home" value="${env.IVY_HOME}">
        <isset property="env.IVY_HOME" />
    </condition>
    <property name="ivy.home" value="${user.home}/.ant" />
    <property name="ivy.jar.dir" value="${ivy.home}/lib" />
    <property name="ivy.jar.file" value="${ivy.jar.dir}/ivy.jar" />

    <target name="download-ivy" unless="offline">
        <mkdir dir="${ivy.jar.dir}"/>
        <!-- download Ivy from web site so that it can be used even without any special installation -->
        <get src="https://repo1.maven.org/maven2/org/apache/ivy/ivy/${ivy.install.version}/ivy-${ivy.install.version}.jar"
             dest="${ivy.jar.file}" usetimestamp="true"/>
    </target>

    <target name="init-ivy" depends="download-ivy">
      <!-- try to load ivy here from ivy home, in case the user has not already dropped
              it into ant's lib dir (note that the latter copy will always take precedence).
              We will not fail as long as local lib dir exists (it may be empty) and
              ivy is in at least one of ant's lib dir or the local lib dir. -->
        <path id="ivy.lib.path">
            <fileset dir="${ivy.jar.dir}" includes="*.jar"/>
        </path>
        <taskdef resource="org/apache/ivy/ant/antlib.xml"
                 uri="antlib:org.apache.ivy.ant" classpathref="ivy.lib.path"/>
    </target>

    <target name="test-init-junit-dependency" depends="init-ivy">
        <ivy:retrieve/>
    </target>

    <target name="init" depends="test-init-junit-dependency"
        description="Initialize the environment for build and test. May require internet access."/>

    <!-- Junit Targets -->
    <macrodef name="icu-junit">
        <attribute name="testdir"/>
        <attribute name="output"/>
        <attribute name="jvm-options" default=""/>
        <attribute name="test-patternset" default="test-classes-patternset"/>
        <attribute name="classpath" default="junit.icu.jars"/>
        <attribute name="failure-status" default="ignore"/>
        <element name="junit-parameters" optional="true"/>
        <sequential>
            <!--set the property - if it was set before it won't override-->
            <property name="user-jvm-options" value=""/>
            <property name="internal-jvm-options" value=""/>
            <delete dir="${junit.out.dir}/@{output}"/>
            <mkdir  dir="${junit.out.dir}/@{output}"/>

            <junit fork="yes" forkmode="once" printsummary="yes" haltonfailure="no" failureproperty="@{failure-status}">
                <jvmarg value="-Xss4m"/>
                <jvmarg value="-ea"/>
                <jvmarg value="-Djava.awt.headless=true"/>
                <jvmarg line="${user-jvm-options}"/>
                <jvmarg line="@{jvm-options}"/>
                <jvmarg line="${internal-jvm-options}"/>
                <junit-parameters/>
                <classpath>
                    <path refid="junit.jars"/>
                    <path refid="@{classpath}"/>
                </classpath>
                <formatter type="plain"/>
                <formatter type="xml"/>

                <batchtest todir="${junit.out.dir}/@{output}">
                    <fileset dir="@{testdir}/${bin.dir}">
                        <patternset refid="@{test-patternset}"/>
                    </fileset>
                </batchtest>
            </junit>

            <junitreport tofile="@{output}-TestSuite.xml" todir="${junit.out.dir}/@{output}">
                <fileset dir="${junit.out.dir}/@{output}">
                    <include name="*.xml"/>
                </fileset>
                <report format="frames" todir="${junit.out.dir}/@{output}/html"/>
            </junitreport>

            <fail message="test failed: @{testdir}" if="@{failure-status}" />

        </sequential>
    </macrodef>

    <property name="junit.out.dir" value="${out.dir}/junit-results"/>
    <property name="junit.core.jar" value="${external-jars}/junit-4.12.jar"/>
    <property name="junit.hamcrest.jar" value="${external-jars}/hamcrest-core-1.3.jar"/>
    <property name="junit.junitparams.jar" value="${external-jars}/JUnitParams-1.0.5.jar"/>
    <path id="junit.jars">
        <pathelement path="${junit.core.jar}"/>
        <pathelement path="${junit.hamcrest.jar}"/>
        <pathelement path="${junit.junitparams.jar}"/>
    </path>

    <path id="junit.icu.jars">
        <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.localespi-tests.jar}"/>
        <pathelement location="${icu4j.packaging-tests.jar}"/>
        <pathelement location="${icu4j.regiondata.jar}"/>
    </path>

    <!--Class names that will be included/excluded as tests-->
    <patternset id="test-classes-patternset">
        <include name="**/*Test*"/>
        <exclude name="**/*Fmwk*"/>
        <exclude name="**/*TestUtility*"/>
        <exclude name="**/*TestHelper*"/>
        <exclude name="**/*TestCase*"/>
        <exclude name="**/*TestData*"/>
        <exclude name="**/*TestSample*"/>
        <exclude name="**/*$*.class"/>
        <exclude name="**/data/**"/>
    </patternset>

    <!--Class names that will be included/excluded as tests for time zone check-->
    <patternset id="timeZoneCheck-patternset">
        <include name="**/TimeZoneFormatTest*"/>
        <exclude name="**/*$*.class"/>
    </patternset>

    <!--Class names that will be included/excluded as tests for packaging check-->
    <patternset id="packagingCheck-patternset">
        <include name="**/TestLocaleNamePackaging*"/>
        <exclude name="**/*$*.class"/>
    </patternset>

    <!--Class names that will be included/excluded as tests for locale SPI check-->
    <patternset id="localespiCheck-patternset">
        <include name="**/*Test*"/>
        <exclude name="com/ibm/icu/dev/test/localespi/TestUtil.*"/>
        <exclude name="**/*$*.class"/>
    </patternset>

    <!-- 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, 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">
    	<parallel>
	        <antcall target="_charsetCheck"/>
    	    <antcall target="_collateCheck"/>
        	<antcall target="_coreCheck"/>
        	<antcall target="_translitCheck"/>
        </parallel>
    </target>

    <target name="exhaustiveCheck" description="Run the standard ICU4J test suite in exhaustive mode">
        <antcall target="check">
            <param name="internal-jvm-options" value="-DICU.exhaustive=10"/>
        </antcall>
        <fail message="test failed" if="icu-junit-failure" />
    </target>

    <target name="check" depends="main, tests" description="Run the standard ICU4J test suite">
        <antcall target="_check"/>
        <fail message="test failed" if="icu-junit-failure" />
    </target>

    <target name="runTest" description="Run the standard ICU4J test suite without calling any other build targets">
        <antcall target="_check"/>
        <fail message="test failed" if="icu-junit-failure" />
    </target>

    <target name="timeZoneCheck" description="Run the complete test for TimeZoneRoundTripAll">
        <icu-junit
            testdir="${icu4j.core-tests.dir}" output="timeZoneCheck"
            test-patternset="timeZoneCheck-patternset"
            jvm-options="-DTimeZoneRoundTripAll=true"
            failure-status="icu-junit-failure"
        />
        <fail message="test failed" if="icu-junit-failure" />
    </target>

    <target name="jdktzCheck" description="Run the standard ICU4J test suite with JDK TimeZone">
        <antcall target="check">
            <param name="internal-jvm-options" value="-Dcom.ibm.icu.util.TimeZone.DefaultTimeZoneType=JDK"/>
        </antcall>
    </target>

    <path id="junit.icu.jars.PackagingCheckNoLangData">
        <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}"/>
    </path>

    <path id="junit.icu.jars.PackagingCheckNoRegionData">
        <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}"/>
    </path>

    <path id="junit.icu.jars.PackagingCheckNoLangNorRegionData">
        <pathelement location="${icu4j.core.jar}"/>
        <pathelement location="${icu4j.charset.jar}"/>
        <pathelement location="${icu4j.test-framework.jar}"/>
        <pathelement location="${icu4j.packaging-tests.jar}"/>
    </path>

    <target name="_packagingCheckNoLangData">
        <!-- region data but no language data -->
        <icu-junit testdir="${icu4j.packaging-tests.dir}" output="packaging/NoLangData"
            test-patternset="packagingCheck-patternset"
            classpath="junit.icu.jars.PackagingCheckNoLangData"
            failure-status="icu-junit-failure"
        />
    </target>

    <target name="_packagingCheckNoRegionData">
        <!-- language data but no region data -->
        <icu-junit testdir="${icu4j.packaging-tests.dir}" output="packaging/NoRegionData"
            test-patternset="packagingCheck-patternset"
            classpath="junit.icu.jars.PackagingCheckNoRegionData"
            failure-status="icu-junit-failure"
        />
    </target>

    <target name="_packagingCheckNoLangNorRegionData">
        <!-- neither region nor language data -->
        <icu-junit testdir="${icu4j.packaging-tests.dir}" output="packaging/NoLangNorRegionData"
            test-patternset="packagingCheck-patternset"
            classpath="junit.icu.jars.PackagingCheckNoLangNorRegionData"
            failure-status="icu-junit-failure"
        />
    </target>

    <target name="packagingCheck" depends="info, core, packaging-tests" description="Run packaging tests">
        <antcall target="_packagingCheckNoLangData"/>
        <antcall target="_packagingCheckNoRegionData"/>
        <antcall target="_packagingCheckNoLangNorRegionData"/>
        <fail message="test failed" if="icu-junit-failure" />
    </target>

    <target name="_coreCheck">
        <icu-junit testdir="${icu4j.core-tests.dir}" output="core"
            failure-status="icu-junit-failure"
        />
    </target>

    <target name="coreCheck" depends="info, core, currdata, langdata, regiondata, core-tests" description="Run only the core tests">
        <antcall target="_coreCheck"/>
        <fail message="test failed" if="icu-junit-failure" />
    </target>

    <target name="_charsetCheck">
        <icu-junit testdir="${icu4j.charset-tests.dir}" output="charset"
            failure-status="icu-junit-failure"
        />
    </target>

    <target name="charsetCheck" depends="info, core, charset, currdata, langdata, regiondata, core-tests, charset-tests" description="Run only the charset tests">
        <antcall target="_charsetCheck"/>
        <fail message="test failed" if="icu-junit-failure" />
    </target>

    <target name="_collateCheck">
        <icu-junit testdir="${icu4j.collate-tests.dir}" output="collate"
            failure-status="icu-junit-failure"
        />
    </target>

    <target name="collateCheck" depends="info, core, collate, currdata, langdata, regiondata, core-tests, collate-tests" description="Run only the collation tests">
        <antcall target="_collateCheck"/>
        <fail message="test failed" if="icu-junit-failure" />
    </target>

    <target name="_translitCheck">
        <icu-junit testdir="${icu4j.translit-tests.dir}" output="translit"
            failure-status="icu-junit-failure"
        />
    </target>

    <target name="translitCheck" depends="info, core, translit, translit-tests" description="Run the ICU4J Translit test suite">
        <antcall target="_translitCheck"/>
        <fail message="test failed" if="icu-junit-failure" />
    </target>

    <target name="_localespiCheck">
        <icu-junit testdir="${icu4j.localespi-tests.dir}" output="localespi"
            test-patternset="localespiCheck-patternset"
            jvm-options="-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}"
            failure-status="icu-junit-failure"
        />
    </target>

    <target name="localespiCheck" if="is.java6.plus" depends="info, localespi, localespi-tests" description="Run the ICU4J Locale SPI test suite">
        <antcall target="_localespiCheck"/>
        <fail message="test failed" if="icu-junit-failure" />
    </target>

    <target name="secureCheck" description="Run the secure (applet-like) ICU4J test suite">
        <antcall target="check">
            <param name="internal-jvm-options" value="-DICU.securitypolicy=${shared.dir}/data/security.policy"/>
        </antcall>
    </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"/>
            </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"/>
            </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="**/*"/>
        </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" depends="_checkJCite">
        <condition property="release.build.config.ok">
            <and>
                <isset property="is.java8"/>
                <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.java8" value="${java.version}" else="${java.version} - Must be 1.8!">
            <isset property="is.java8"/>
        </condition>
        <condition property="disp.java6.bootclasspath" value="${java6.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.java8}"/>
        <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/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/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/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/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, init" description="Build test framework classes">
        <ant dir="${icu4j.test-framework.dir}" inheritAll="false">
            <reference refid="junit.jars"/>
        </ant>
    </target>

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

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

    <target name="charset-tests" depends="charset, test-framework" description="Build charset tests">
        <ant dir="${icu4j.charset-tests.dir}" inheritAll="false">
            <reference refid="junit.jars"/>
        </ant>
    </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">
            <reference refid="junit.jars"/>
        </ant>
    </target>

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

    <target name="translit-tests" depends="translit, test-framework" description="Build translit tests">
        <ant dir="${icu4j.translit-tests.dir}" inheritAll="false">
            <reference refid="junit.jars"/>
        </ant>
    </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="docsStrict" description="Build API documents with all doclint check enabled">
        <condition property="doclint.option" value="-Xdoclint:all">
            <isset property="is.java8.plus"/>
        </condition>
        <antcall target="docs"/>
    </target>

    <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="stylesheet6.css">
            <isset property="is.java6"/>
        </condition>
        <condition property="docs.style.sheet" value="stylesheet7.css">
            <isset property="is.java7"/>
        </condition>
        <!-- all other cases -->
        <property name="docs.style.sheet" value="stylesheet8.css"/>
    </target>

    <target name="_docsLintOption" unless="doclint.options">
        <!-- syntax check is disabled because JCite tag name "@.jcite" is invalidated -->
        <condition property="doclint.option" value="-Xdoclint:reference,html" else="">
            <isset property="is.java8.plus"/>
        </condition>
    </target>

    <target name="_docsWithJCite" depends="_docsStyleSheet, _docsLintOption" if="jcite.libs">
        <echo message="Javadoc lint option:            ${doclint.option}"/>
        <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="${icu4j.api.doc.copyright.footer}"
                additionalparam="${doclint.option} -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}"
                failonerror="true">
            <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" depends="_docsStyleSheet, _docsLintOption" unless="jcite.libs">
        <echo message="Javadoc lint option:            ${doclint.option}"/>
        <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="${icu4j.api.doc.copyright.footer}"
                additionalparam="${doclint.option} -breakiterator -use -tagletpath ${icu4j.build-tools.jar} -taglet com.ibm.icu.dev.tool.docs.ICUTaglet"
                link="${icu4j.api.doc.jdk.link}"
                source="1.5"
                failonerror="true">
            <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="build-tools, 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"/>
        <property name="jacoco.exclusion.txt" value="coverage-exclusion.txt"/>

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

        <!-- core -->
        <jacoco:coverage destfile="${jacoco.exec.data.file}">
            <junit fork="yes" forkmode="once" printsummary="yes" haltonfailure="no">
                <jvmarg value="-ea"/>
                <jvmarg value="-Djava.awt.headless=true"/>
                <classpath>
                    <path refid="junit.jars"/>
                    <path refid="junit.icu.jars"/>
                </classpath>

                <batchtest todir="${junit.out.dir}/core">
                    <fileset dir="${icu4j.core-tests.dir}/${bin.dir}">
                        <patternset refid="test-classes-patternset"/>
                    </fileset>
                </batchtest>
            </junit>
        </jacoco:coverage>

        <!-- charset -->
        <jacoco:coverage destfile="${jacoco.exec.data.file}">
            <junit fork="yes" forkmode="once" printsummary="yes" haltonfailure="no">
                <jvmarg value="-ea"/>
                <jvmarg value="-Djava.awt.headless=true"/>
                <classpath>
                    <path refid="junit.jars"/>
                    <path refid="junit.icu.jars"/>
                </classpath>

                <batchtest todir="${junit.out.dir}/charset">
                    <fileset dir="${icu4j.charset-tests.dir}/${bin.dir}">
                        <patternset refid="test-classes-patternset"/>
                    </fileset>
                </batchtest>
            </junit>
        </jacoco:coverage>

        <!-- collate -->
        <jacoco:coverage destfile="${jacoco.exec.data.file}">
            <junit fork="yes" forkmode="once" printsummary="yes" haltonfailure="no">
                <jvmarg value="-ea"/>
                <jvmarg value="-Djava.awt.headless=true"/>
                <classpath>
                    <path refid="junit.jars"/>
                    <path refid="junit.icu.jars"/>
                </classpath>

                <batchtest todir="${junit.out.dir}/collate">
                    <fileset dir="${icu4j.collate-tests.dir}/${bin.dir}">
                        <patternset refid="test-classes-patternset"/>
                    </fileset>
                </batchtest>
            </junit>
        </jacoco:coverage>

        <!-- translit -->
        <jacoco:coverage destfile="${jacoco.exec.data.file}">
            <junit fork="yes" forkmode="once" printsummary="yes" haltonfailure="no">
                <jvmarg value="-ea"/>
                <jvmarg value="-Djava.awt.headless=true"/>
                <classpath>
                    <path refid="junit.jars"/>
                    <path refid="junit.icu.jars"/>
                </classpath>

                <batchtest todir="${junit.out.dir}/translit">
                    <fileset dir="${icu4j.translit-tests.dir}/${bin.dir}">
                        <patternset refid="test-classes-patternset"/>
                    </fileset>
                </batchtest>
            </junit>
        </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>

        <java classname="com.ibm.icu.dev.tool.coverage.JacocoReportCheck" failonerror="true">
            <arg line="${jacoco.report.xml}  ${jacoco.exclusion.txt}"/>
            <classpath>
                <pathelement location="${icu4j.build-tools.jar}"/>
            </classpath>
        </java>

    </target>

    <!-- Release management targets -->
    <target name="checktags" depends="info, build-tools" description="Check API tags before release">
        <javadoc source="1.6"
                 bootclasspath="${java6.bootclasspath}"
                 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.6"
                 bootclasspath="${java6.bootclasspath}"
                 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.6"
                 bootclasspath="${java6.bootclasspath}"
                 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.test-framework.dir}/src"/>

            <include name="com/ibm/icu/dev/util/CollectionUtilities.java" />
            <include name="com/ibm/icu/dev/util/ElapsedTimer.java" />
            <include name="com/ibm/icu/dev/util/UnicodeMap.java" />
            <include name="com/ibm/icu/dev/util/UnicodeMapIterator.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/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/util/CollectionUtilities.java" />
                <include name="com/ibm/icu/dev/util/ElapsedTimer.java" />
                <include name="com/ibm/icu/dev/util/UnicodeMap.java" />
                <include name="com/ibm/icu/dev/util/UnicodeMapIterator.java" />
            </fileset>
            <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>

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