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

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

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

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

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

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

    <target name="anthack1">
        <!-- It's a real pain to set properties conditionally.
          Ant 1.5 isn't really any better than 1.4, in fact 1.5 enforces that
          properties are write-once so you can't even set a default and then
          override it, which we used to do for Ant 1.4. -->
        <condition property="version.1.4">
            <or>
                <equals arg1="${ant.java.version}" arg2="1.4"/>
                <equals arg1="${ant.java.version}" arg2="1.5"/>
            </or>
        </condition>
        
        <condition property="doc.params"
            value="-breakiterator -use -tagletpath ./classes -taglet com.ibm.icu.dev.tool.docs.ICUTaglet -group 'ICU Core' 'com.ibm.icu.lang*:com.ibm.icu.math*:com.ibm.icu.text*:com.ibm.icu.util*:com.ibm.icu.stringprep*' -group 'ICU Tests' 'com.ibm.icu.dev.test*' -group 'Demos' 'com.ibm.icu.dev.demo*' -group 'ICU Tools' 'com.ibm.icu.dev*'">
                <equals arg1="${version.1.4}" arg2="true"/>
        </condition>

        <condition property="richeditdoc.params"
            value="-breakiterator -use -tagletpath ./classes -taglet com.ibm.icu.dev.tool.docs.ICUTaglet -group 'Rich Text Editing' 'com.ibm.richtext*'">
                <equals arg1="${version.1.4}" arg2="true"/>
        </condition>
    </target>

    <target name="anthack2" unless="doc.params">
        <property name="doc.params" value=""/>
    </target>

    <target name="init">
        <tstamp/>
        <property name="src.dir" value="src"/>
        <property name="build.dir" value="classes"/>
        <property name="api.dir" value="${src.dir}/com/ibm/icu/dev/tool/docs"/>
        <property name="doc.dir" value="doc"/>
        <property name="testjar.file" value="icu4jtests.jar"/>
        <property name="jar.file" value="icu4j.jar"/>
        <property name="jarSrc.file" value="icu4jsrc.jar"/>
        <property name="zipCoreSrc.file" value="icu4jcsrc.zip"/>
        <property name="zipTestSrc.file" value="icu4jtsrc.zip"/>
        <property name="eclipse.dir" value="${src.dir}/com/ibm/icu/dev/eclipse"/>
        <property name="jarDocs.file" value="icu4jdocs.jar"/>
        <property name="icu4j.manifest" value="${src.dir}/com/ibm/icu/manifest.stub"/>
        <property name="icu4j.module.manifest" value="${src.dir}/com/ibm/icu/manifest.module.stub"/>
        <property name="xliff.manifest" value="${src.dir}/com/ibm/dev/tool/localeconverter/manifest.xliff.stub"/>
        <property name="cldr.util.manifest" value="${src.dir}/com/ibm/icu/dev/test/util/manifest.cldrutil.stub"/>
        <property name="icu4j.tests.manifest" value="${src.dir}/com/ibm/icu/dev/test/manifest.test.stub"/>
        <property name="ime.translit.manifest" value="${src.dir}/com/ibm/icu/dev/tool/ime/translit/manifest.stub"/>
        <property name="ime.translit.jar.file" value="icutransime.jar"/>
        <property name="ime.indic.manifest" value="${src.dir}/com/ibm/icu/dev/tool/ime/indic/manifest.stub"/>
        <property name="ime.indic.jar.file" value="icuindicime.jar"/>
        <property name="zip.file" value="../icu4j${DSTAMP}.zip"/>
        <property name="zipSrc.file" value="../icu4jSrc${DSTAMP}.zip"/>
        <!-- fix the data folder every time there is a version update-->
        <property name="icu4j.data.path" value="com/ibm/icu/impl/data/icudt35b/" />
        <property name="icu4j.testdata.path" value="com/ibm/icu/dev/data/testdata/" />
        <property name="icu4j.javac.source" value="1.4"/>
        <property name="icu4j.javac.target" value="1.4"/>

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

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

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

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

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

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

        <uptodate property="icu4j.module.resources" targetfile="${src.dir}/com/ibm/icu/impl/data/icudata.jar" >
            <srcfiles dir="${build.dir}" includes="${icu4j.data.path}/*.icu"/>
        </uptodate>
        <!-- <echo message="icu4j.module.resources result: ${icu4j.module.resources}" /> -->
    </target>

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

    <target name="resources" depends="init, testdata" description="builds all the resources">
        <unjar src="${src.dir}/com/ibm/icu/impl/data/icudata.jar" dest="${build.dir}"/>
        <touch file="${build.dir}/${icu4j.data.path}/res_index.res"/>
    </target>

    <target name="icudata" depends="init" if="icu4j.resources">
        <!-- use this target to force resources to be rebuilt -->
        <unjar src="${src.dir}/com/ibm/icu/impl/data/icudata.jar" dest="${build.dir}"/>
        <touch file="${build.dir}/${icu4j.data.path}/res_index.res"/>
    </target>

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

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

    <target name="tests" depends="core,testdata" description="build tests">
        <javac includes="com/ibm/icu/dev/test/calendar/**/*.java"
            excludes="**/CVS/**/*"
            srcdir="${src.dir}"
            destdir="${build.dir}"
            classpathref="build.classpath"
            source="${icu4j.javac.source}"
            target="${icu4j.javac.target}"
            debug="on" deprecation="off"/>
        <javac includes="com/ibm/icu/dev/test/collator/**/*.java"
            excludes="**/CVS/**/*"
            srcdir="${src.dir}"
            destdir="${build.dir}"
            classpathref="build.classpath"
            source="${icu4j.javac.source}"
            target="${icu4j.javac.target}"
            debug="on" deprecation="off"/>
        <javac includes="com/ibm/icu/dev/test/format/**/*.java"
            excludes="**/CVS/**/*"
            srcdir="${src.dir}"
            destdir="${build.dir}"
            classpathref="build.classpath"
            source="${icu4j.javac.source}"
            target="${icu4j.javac.target}"
            debug="on" deprecation="off"/>
        <javac includes="com/ibm/icu/dev/test/translit/**/*.java"
            excludes="**/CVS/**/*"
            srcdir="${src.dir}"
            destdir="${build.dir}"
            classpathref="build.classpath"
            source="${icu4j.javac.source}"
            target="${icu4j.javac.target}"
            debug="on" deprecation="off"/>
        <javac includes="com/ibm/icu/dev/test/lang/**/*.java, com/ibm/icu/dev/test/normalizer/**/*.java"
            excludes="**/CVS/**/*"
            srcdir="${src.dir}"
            destdir="${build.dir}"
            classpathref="build.classpath"
            source="${icu4j.javac.source}"
            target="${icu4j.javac.target}"
            debug="on" deprecation="off"/>
        <javac includes="com/ibm/icu/dev/test/serializable/**/*.java"
            excludes="**/CVS/**/*"
            srcdir="${src.dir}"
            destdir="${build.dir}"
            classpathref="build.classpath"
            source="${icu4j.javac.source}"
            target="${icu4j.javac.target}"
            debug="on" deprecation="off"/>            
        <javac includes="com/ibm/icu/dev/test/**/*.java"
            excludes="**/CVS/**/*"
            srcdir="${src.dir}"
            destdir="${build.dir}"
            classpathref="build.classpath"
            source="${icu4j.javac.source}"
            target="${icu4j.javac.target}"
            debug="on" deprecation="off"/>
    </target>

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

    <target name="buildmangle" depends="init,anthack1" if="version.1.4">
        <javac includes="com/ibm/icu/dev/tool/docs/CodeMangler.java"
            srcdir="${src.dir}"
            destdir="${build.dir}"
            classpathref="build.classpath"
            source="${icu4j.javac.source}"
            target="${icu4j.javac.target}"/>
    </target>

    <target name="mangle" depends="buildmangle" if="version.1.4">
    <!-- this is a hack for now, need a way to express dependency on the .jpp files
    and to provide directories or trees of files to the code mangler tool. -->
        <java classname="com.ibm.icu.dev.tool.docs.CodeMangler" classpath="${build.dir}" logError="true">
            <arg value="-dVERSION_${ant.java.version}"/>
            <arg value="${src.dir}/com/ibm/icu/dev/tool/docs/ICUTaglet.java"/>
         </java>
    </target>

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

    <target name="one4tools" depends="anthack1,anthack2,mangle" if="version.1.4">
        <javac includes="com/ibm/icu/dev/localeconverter/docs/*.java,com/ibm/icu/dev/tool/docs/*.java"
            excludes="**/CVS/**/*"
            srcdir="${src.dir}"
            destdir="${build.dir}"
            classpathref="build.classpath"
            source="${icu4j.javac.source}" 
            target="${icu4j.javac.target}"
            debug="on" deprecation="off"/>
    </target>

    <target name="tools" depends="core,one4tools" description="build tools">
        <javac includes="com/ibm/icu/dev/tool/**/*.java"
            excludes="com/ibm/icu/dev/tool/cldr/*,com/ibm/icu/dev/tool/localeconverter/*,com/ibm/icu/dev/tool/docs/*,**/CVS/**/*"
            srcdir="${src.dir}"
            destdir="${build.dir}"
            classpathref="build.classpath"
            source="${icu4j.javac.source}"
            target="${icu4j.javac.target}"
            debug="on" deprecation="off"/>
    </target>

    <target name="build_indexgenerator" depends="core">
        <javac includes="com/ibm/icu/dev/tool/index/IndexGenerator.java"
            srcdir="${src.dir}"
            destdir="${build.dir}"
            classpathref="build.classpath"
            source="${icu4j.javac.source}"
            target="${icu4j.javac.target}"
            debug="on" deprecation="off"/>
    </target>
            
<!-- use excludefiles below when we move to ant 1.5 -->

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

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

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

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

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

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

    <target name="jar" depends="core,indices" description="build full 'icu4j.jar' jar file">
        <jar jarfile="${jar.file}"
            compress="true"
            includes="com/ibm/icu/util/**/*,com/ibm/icu/text/**/*,com/ibm/icu/math/**/*,com/ibm/icu/impl/**/*,com/ibm/icu/lang/**/*"
            basedir="${build.dir}"
            manifest="${icu4j.manifest}"/>
    </target>

    <target name="jarTests" depends="tests,jar" description="build runtime 'icu4jtests.jar' jar file">
        <jar jarfile="${testjar.file}" compress="true" manifest="${icu4j.tests.manifest}">
            <fileset dir="${build.dir}" includes="com/ibm/icu/dev/test/**/*"/>
            <fileset dir="${build.dir}" includes="com/ibm/icu/dev/data/**/*"/>
        </jar>
    </target>

    <target name="jarSrc" depends="init" description="build source 'icu4jsrc.jar' jar file">
        <!--Create a jar archive of just the source for distribution.  The
        jar file will be created in the directory above the root ICU4J
        directory. The exclude pattern ${src.dir}/com/ibm/icu/dev/data/unicode/UnicodeData-*.txt
        and ${src.dir}/com/ibm/icu/dev/data/unicode/SpecialCasing-*.txt
        eliminates old archive copies like SpecialCasing-2.txt and
        UnicodeData-2.1.8.txt -->
        <jar jarfile="${jarSrc.file}"
            compress="true"
            basedir="."
            excludes="${richedit.dir}/**/*,test_*,${src.dir}/com/ibm/icu/dev/data/unicode//UnicodeData-*.txt,${src.dir}/com/ibm/icu/dev/data/unicode/SpecialCasing-*.txt,${src.dir}/com/ibm/icu/dev/data/unicode/CompositionExclusions-*.txt,${obsolete.dir}/**,**/*~,${src.dir}/**/*.class,${build.dir}/**,**/CVS/**/*,${doc.dir}/**,*.jar,*.zip, *.gz"
            manifest="${icu4j.manifest}"/>
    </target>

    <target name="jarDocs" depends="docs" description="build documentation 'icu4jdocs.jar' jar file">
        <jar jarfile="${jarDocs.file}"
            compress="true"
            basedir="${doc.dir}"
            manifest="${icu4j.manifest}"/>
    </target>

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

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

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

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

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

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

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

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

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

    <target name="noData" depends="core, tests" description="builds ICU4J without any data">
       <delete failonerror="no">
            <fileset dir="${build.dir}/${icu4j.data.path}/../" includes="Holiday*.class"/>
            <fileset dir="${build.dir}/${icu4j.data.path}/../" includes="BreakIterator*.class"/>
            <fileset dir="${build.dir}/${icu4j.data.path}"/>
            <fileset dir="${build.dir}/${icu4j.testdata.path}"/>
            <fileset dir="${build.dir}/${icu4j.testdata.path}../"/>                 
        </delete>
    </target>
    <target name="noDataCheck" depends="noData" description="runs the tests when no data is present">
        <java classname="com.ibm.icu.dev.test.TestAll" fork="yes" failonerror="true">
            <arg value="-nothrow"/>
            <arg value="-nodata"/>
            <classpath>
                <pathelement location="clover.jar"/>
                <pathelement location="${build.dir}"/>
            </classpath>
        </java>
    </target>
    <target name="_requires14" unless="version.1.4">
        <echo message="One of your targets requires JAVA_HOME to be set to JDK version 1.4"/>
    </target>

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

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

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

    <target name="apireport" depends="tools" if="version.1.4" description="run API report generator tool">
        <java classname="com.ibm.icu.dev.tool.docs.ReportAPI" classpath="${build.dir}" failonerror="true">
            <arg value="-old:"/>
            <arg value="${api.dir}/icu4j34.api.gz"/>
            <arg value="-new:"/>
            <arg value="${api.dir}/icu4j341.api.gz"/>
            <arg value="-html"/>
            <arg value="-out:"/>
            <arg value="${api.dir}/icu4j_compare_34_341.html"/>
        </java>
    </target>

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

    <!--
        Targets to copy the required *.icu files
     -->
    <target name="normalizerData" depends="init" >
        <unjar src="${src.dir}/com/ibm/icu/impl/data/icudata.jar" dest="${build.dir}">
            <patternset>
                <!-- arrgh, includes attributes of patternset does not work here in ant 1.5.3 -->
                <include name="**/unorm.icu"/>
                <include name="**/uprops.icu"/>
                <include name="**/pnames.icu"/>
                <include name="**/unames.icu"/>
            </patternset>
        </unjar>
        <touch file="${build.dir}/${icu4j.data.path}/uprops.icu"/>
    </target>

    <target name="copyFullPropsData" depends="init" >
        <unjar src="${src.dir}/com/ibm/icu/impl/data/icudata.jar" dest="${build.dir}">
            <patternset>
                <!-- arrgh, includes attributes of patternset does not work here in ant 1.5.3 -->
                <include name="**/unorm.icu"/>
                <include name="**/uprops.icu"/>
                <include name="**/ubidi.icu"/>
                <include name="**/ucase.icu"/>
                <include name="**/unames.icu"/>
                <include name="**/pnames.icu"/>
                <include name="**/*.res"/>
                <include name="**/*.brk"/>
                <exclude name="**/coll/*.res"/>
                <exclude name="**/translit/*.res"/>
                <exclude name="**/rbnf/*.res"/>
            </patternset>
        </unjar>
        <touch file="${build.dir}/${icu4j.data.path}/uprops.icu"/>
    </target>

    <target name="copyBasicPropsData" depends="init" >
        <unjar src="${src.dir}/com/ibm/icu/impl/data/icudata.jar" dest="${build.dir}">
            <patternset>
                <!-- arrgh, includes attributes of patternset does not work here in ant 1.5.3 -->
                <include name="**/unorm.icu"/>
                <include name="**/uprops.icu"/>
                <include name="**/ubidi.icu"/>
                <include name="**/ucase.icu"/>
                <include name="**/pnames.icu"/>
                <include name="**/unames.icu"/>
            </patternset>
        </unjar>
        <touch file="${build.dir}/${icu4j.data.path}/uprops.icu"/>
    </target>

    <target name="copyCollatorData" depends="init">
        <unjar src="${src.dir}/com/ibm/icu/impl/data/icudata.jar" dest="${build.dir}">
            <patternset>
                <!-- arrgh, includes attributes of patternset does not work here in ant 1.5.3 -->
                <include name="**/*.icu"/>
                <include name="**/coll/*.res"/>
                <include name="**/*.brk"/>
            </patternset>
        </unjar>
        <touch file="${build.dir}/${icu4j.data.path}/uprops.icu"/>
    </target>

    <target name="copyCalendarData" depends="init">
        <!-- Calendar does not require Collation data, BreakIterator data -->
        <unjar src="${src.dir}/com/ibm/icu/impl/data/icudata.jar" dest="${build.dir}">
            <patternset>
                <!-- arrgh, includes attributes of patternset does not work here in ant 1.5.3 -->
                <include name="**/unorm.icu"/>
                <include name="**/uprops.icu"/>
                <include name="**/pnames.icu"/>
                <include name="**/unames.icu"/>
                <include name="**/*.res"/>
                <exclude name="**/coll/*.res"/>
                <exclude name="**/translit/*.res"/>
                <exclude name="**/rbnf/*.res"/>
            </patternset>
        </unjar>
        <touch file="${build.dir}/${icu4j.data.path}/uprops.icu"/>
    </target>
    <target name="copyTranslitData" depends="init">
        <!-- Calendar does not require Collation data, BreakIterator data -->
        <unjar src="${src.dir}/com/ibm/icu/impl/data/icudata.jar" dest="${build.dir}">
            <patternset>
                <!-- arrgh, includes attributes of patternset does not work here in ant 1.5.3 -->
                <include name="**/unorm.icu"/>
                <include name="**/uprops.icu"/>
                <include name="**/ubidi.icu"/>
                <include name="**/ucase.icu"/>
                <include name="**/unames.icu"/>
                <include name="**/pnames.icu"/>
                <include name="**/*.brk"/>
                <include name="**/translit/*.res"/>
            </patternset>
        </unjar>
        <touch file="${build.dir}/${icu4j.data.path}/uprops.icu"/>
    </target>
    
    <target name="copyFormatData" depends="init" if="icu4j.module.resources">
        <!-- Format does not require BreakIterator data -->
        <unjar src="${src.dir}/com/ibm/icu/impl/data/icudata.jar" dest="${build.dir}">
            <patternset>
                <!-- arrgh, includes attributes of patternset does not work here in ant 1.5.3 -->
                <include name="**/*.icu"/>
                <include name="**/*.res"/>
                <exclude name="**/translit/*.res"/>
            </patternset>
        </unjar>
        <touch file="${build.dir}/${icu4j.data.path}/uprops.icu"/>
    </target>
    
    <target name="copyAllICUData" depends="init">
        <unjar src="${src.dir}/com/ibm/icu/impl/data/icudata.jar" dest="${build.dir}"/>
    </target>

    <target name="moduleJar" depends="init" description="modular build of 'icu4j.jar' jar file">
        <jar jarfile="${jar.file}"
            compress="true"
            includes="com/ibm/icu/util/**/*,com/ibm/icu/text/**/*,com/ibm/icu/math/**/*,com/ibm/icu/impl/**/*,com/ibm/icu/lang/**/*"
            basedir="${build.dir}"
            manifest="${icu4j.module.manifest}"/>
    </target>

    <!--
         Targets to build only Normalization API and Normalization tests
     -->

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

    <target name="normalizerTests" depends="normalizer">
        <javac includes="com/ibm/icu/dev/test/TestFmwk.java,com/ibm/icu/dev/test/TestLog.java,com/ibm/icu/dev/test/TestUtil.java,com/ibm/icu/dev/test/UTF16Util.java,com/ibm/icu/dev/test/TestAll.java,com/ibm/icu/dev/test/normalizer/**/*.java"
            excludes="**/CVS/**/*,com/ibm/icu/dev/test/normalizer/TestDeprecatedNormalizerAPI.java"
            srcdir="${src.dir}"
            destdir="${build.dir}"
            source="${icu4j.javac.source}"
            target="${icu4j.javac.target}"
            classpathref="build.classpath"
            debug="on" deprecation="off"/>
    </target>

    <!--
            Targets to build only Collation API and Collation tests
     -->

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

    <target name="collatorTests" depends="collator" description="test collator modular build target">
        <javac includes="com/ibm/icu/dev/test/TestFmwk.java,com/ibm/icu/dev/test/TestLog.java,com/ibm/icu/dev/test/TestUtil.java,com/ibm/icu/dev/test/UTF16Util.java,com/ibm/icu/dev/test/TestAll.java,com/ibm/icu/dev/test/collator/**/*.java,com/ibm/icu/dev/test/search/**/*.java"
            excludes="**/CVS/**/*, com/ibm/icu/dev/test/collator/RandomCollator.java"
            srcdir="${src.dir}"
            destdir="${build.dir}"
            classpathref="build.classpath"
            source="${icu4j.javac.source}"
            target="${icu4j.javac.target}"
            debug="on" deprecation="off"/>
    </target>

    <!--
            Targets to build only Character properties API and tests
     -->

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

    <target name="propertiesFull" depends="init,propertiesClasses,copyFullPropsData" description="modular build of full character properties">
    </target>
    
    <target name="propertiesClasses">
        <javac includes="com/ibm/icu/lang/**/*, com/ibm/icu/text/*BreakIterator*.java,com/ibm/icu/text/*BreakDictionary*.java,com/ibm/icu/impl/data/*Break*.java,com/ibm/icu/text/UnicodeSetIterator.java,"
            excludes="**/CVS/**/*,com/ibm/icu/impl/UtilityExtensions.java"
            srcdir="${src.dir}"
            destdir="${build.dir}"
            source="${icu4j.javac.source}"
            target="${icu4j.javac.target}"
            classpathref="build.classpath"
            debug="on" deprecation="off"/>
    </target>
    <target name="propertiesBasicTests" depends="propertiesBasic" description="test propertiesBasic modular build target">
        <copy file="${src.dir}/com/ibm/icu/dev/data/unicode/SpecialCasing.txt"
            todir="${build.dir}/com/ibm/icu/dev/data/unicode/"/>
        <javac includes="com/ibm/icu/dev/test/TestFmwk.java,com/ibm/icu/dev/test/TestLog.java,com/ibm/icu/dev/test/TestUtil.java,com/ibm/icu/dev/test/UTF16Util.java,com/ibm/icu/dev/test/TestAll.java,com/ibm/icu/dev/test/lang/**/*.java"
            excludes="**/CVS/**/*,com/ibm/icu/dev/test/lang/TestUScriptRun.java"
            srcdir="${src.dir}"
            destdir="${build.dir}"
            classpathref="build.classpath"
            source="${icu4j.javac.source}"
            target="${icu4j.javac.target}"
            debug="on" deprecation="off"/>
    </target>

    <target name="propertiesFullTests" depends="propertiesFull" description="test propertiesFull modular build target">
        <copy file="${src.dir}/com/ibm/icu/dev/data/unicode/SpecialCasing.txt"
            todir="${build.dir}/com/ibm/icu/dev/data/unicode/"/>
        <javac includes="com/ibm/icu/dev/test/TestFmwk.java,com/ibm/icu/dev/test/TestLog.java,com/ibm/icu/dev/test/TestUtil.java,com/ibm/icu/dev/test/UTF16Util.java,com/ibm/icu/dev/test/TestAll.java,com/ibm/icu/dev/test/lang/**/*.java"
            excludes="**/CVS/**/*,com/ibm/icu/dev/test/lang/TestUScriptRun.java"
            srcdir="${src.dir}"
            destdir="${build.dir}"
            classpathref="build.classpath"
            source="${icu4j.javac.source}"
            target="${icu4j.javac.target}"
            debug="on" deprecation="off"/>
    </target>
    
    <!--
            Targets to build only Compression API API and tests
     -->
    <target name="compression" depends="init" description="modular build of compression services">
        <javac includes="com/ibm/icu/text/SCSU.java, com/ibm/icu/text/UnicodeCompressor.java, com/ibm/icu/text/UnicodeDecompressor.java"
            excludes="**/CVS/**/*"
            srcdir="${src.dir}"
            destdir="${build.dir}"
            source="${icu4j.javac.source}"
            target="${icu4j.javac.target}"
            classpathref="build.classpath"
            debug="on" deprecation="off"/>
    </target>

    <target name="compressionTests" depends="compression" description="test compression modular build target">
        <javac includes="com/ibm/icu/dev/test/TestFmwk.java,com/ibm/icu/dev/test/TestLog.java,com/ibm/icu/dev/test/TestUtil.java,com/ibm/icu/dev/test/UTF16Util.java,com/ibm/icu/dev/test/TestAll.java,com/ibm/icu/dev/test/compression/**/*.java"
            excludes="**/CVS/**/*"
            srcdir="${src.dir}"
            destdir="${build.dir}"
            classpathref="build.classpath"
            source="${icu4j.javac.source}"
            target="${icu4j.javac.target}"
            debug="on" deprecation="off"/>
    </target>

    <!--
            Targets to build only Calendar API and Calendar tests
     -->
    <target name="calendar" depends="init,copyCalendarData" description="modular build of calendar services">
        <javac includes="com/ibm/icu/util/*Calendar*.java,com/ibm/icu/lang/UCharacter.java,com/ibm/icu/text/UnicodeSetIterator.java,com/ibm/icu/text/NumberFormat*Shim.java,com/ibm/icu/impl/data/*Calendar*.java,com/ibm/icu/impl/data/*Holiday*.java"
            excludes="**/CVS/**/*, com/ibm/icu/lang/UScriptRun.java,com/ibm/icu/impl/UtilityExtensions.java,com/ibm/icu/impl/BOCU.java,com/ibm/icu/impl/TrieBuilder.java,com/ibm/icu/impl/IntTrieBuilder.java"
            srcdir="${src.dir}"
            destdir="${build.dir}"
            source="${icu4j.javac.source}"
            target="${icu4j.javac.target}"
            classpathref="build.classpath"
            debug="on" deprecation="off"/>
    </target>

    <target name="calendarTests" depends="calendar" description="test calendar modular build target">
        <javac includes="com/ibm/icu/dev/test/TestFmwk.java,com/ibm/icu/dev/test/TestLog.java,com/ibm/icu/dev/test/TestUtil.java,com/ibm/icu/dev/test/UTF16Util.java,com/ibm/icu/dev/test/TestAll.java,com/ibm/icu/dev/test/calendar/**/*"
            excludes="**/CVS/**/*"
            srcdir="${src.dir}"
            destdir="${build.dir}"
            classpathref="build.classpath"
            source="${icu4j.javac.source}"
            target="${icu4j.javac.target}"
            debug="on" deprecation="off"/>
    </target>

    <!--
            Targets to build only Transliterator API and  tests
     -->

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

    <target name="transliteratorTests" depends="transliterator" description = "test transliterator modular build target">
        <javac includes="com/ibm/icu/dev/test/TestFmwk.java,com/ibm/icu/dev/test/TestLog.java,com/ibm/icu/dev/test/TestUtil.java,com/ibm/icu/dev/test/UTF16Util.java,com/ibm/icu/dev/test/TestAll.java,com/ibm/icu/dev/test/translit/**/*"
            excludes="**/CVS/**/*,com/ibm/icu/dev/test/translit/UnicodeFilterLogic*.java"
            srcdir="${src.dir}"
            destdir="${build.dir}"
            classpathref="build.classpath"
            source="${icu4j.javac.source}"
            target="${icu4j.javac.target}"
            debug="on" deprecation="off"/>
    </target>

    <!--
            Targets to build only Format API
     -->

    <target name="format" depends="init,copyFormatData" description="modular build of formatting services">
        <javac includes="com/ibm/icu/text/*Format*.java,com/ibm/icu/lang/UCharacter.java,com/ibm/icu/text/*Collator*.java,com/ibm/icu/text/UnicodeSetIterator.java,com/ibm/icu/impl/data/CalendarData*.java"
            excludes="**/CVS/**/*, com/ibm/icu/lang/UScriptRun.java,com/ibm/icu/impl/UtilityExtensions.java,com/ibm/icu/impl/BOCU.java,com/ibm/icu/impl/TrieBuilder.java,com/ibm/icu/impl/IntTrieBuilder.java"
            srcdir="${src.dir}"
            destdir="${build.dir}"
            source="${icu4j.javac.source}"
            target="${icu4j.javac.target}"
            classpathref="build.classpath"
            debug="on" deprecation="off"/>
    </target>

    <target name="formatTests" depends="format" description="test format modular build target">
        <javac includes="com/ibm/icu/dev/test/TestFmwk.java,com/ibm/icu/dev/test/TestLog.java,com/ibm/icu/dev/test/TestUtil.java,com/ibm/icu/dev/test/UTF16Util.java,com/ibm/icu/dev/test/TestAll.java,com/ibm/icu/dev/test/format/**/*"
            excludes="**/CVS/**/*"
            srcdir="${src.dir}"
            destdir="${build.dir}"
            classpathref="build.classpath"
            source="${icu4j.javac.source}"
            target="${icu4j.javac.target}"
            debug="on" deprecation="off"/>
        <copy file="${src.dir}/com/ibm/icu/dev/test/format/NumberFormatTestCases.txt"
            todir="${build.dir}/com/ibm/icu/dev/test/format"/>
    </target>

    <!--
            Targets to build only BreakIterator API
     -->

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

    <target name="breakIteratorTests" depends="breakIterator" description="test breakIterator modular build target">
        <javac includes="com/ibm/icu/dev/test/TestFmwk.java,com/ibm/icu/dev/test/TestLog.java,com/ibm/icu/dev/test/TestUtil.java,com/ibm/icu/dev/test/UTF16Util.java,com/ibm/icu/dev/test/TestAll.java,com/ibm/icu/dev/test/rbbi/**/*"
            excludes="**/CVS/**/*"
            srcdir="${src.dir}"
            destdir="${build.dir}"
            classpathref="build.classpath"
            source="${icu4j.javac.source}"
            target="${icu4j.javac.target}"
            debug="on" deprecation="off"/>
        <copy file="${src.dir}/com/ibm/icu/dev/test/rbbi/rbbitst.txt"
            todir="${build.dir}/com/ibm/icu/dev/test/rbbi"/>
    </target>
    
    <!--
            Targets to build only StringPrep and IDNA API
     -->    
    <target name="copyStringPrepData" depends="init">
        <unjar src="${src.dir}/com/ibm/icu/impl/data/icudata.jar" dest="${build.dir}">
            <patternset>
                <!-- arrgh, includes attributes of patternset does not work here in ant 1.5.3 -->
                <include name="**/*.spp"/>
                <include name="**/ubidi.icu"/>
                <include name="**/ucase.icu"/>
                <include name="**/unorm.icu"/>
                <include name="**/uprops.icu"/>
                <include name="**/pnames.icu"/>
                <include name="**/unames.icu"/>
            </patternset>
        </unjar>
    </target>

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

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

    <target name="moduleCheck" depends="init" description="run tests for module jar">
        <java classname="com.ibm.icu.dev.test.TestAll" fork="yes" failonerror="true">
            <arg value="-nothrow"/>
            <arg value="-nodata"/>
            <classpath>
                <pathelement location="${build.dir}"/>
            </classpath>
        </java>
    </target>
    
    <!-- build the extra Transliterator data pertaining to Han-Latin transliteration -->
    <target name="extraTransliteratorData" depends="init" description="build han-to-latin transliterator data (normally omitted)">
        <copy todir="${build.dir}/com/ibm/icu/impl/data">
            <fileset dir="${src.dir}/com/ibm/icu/impl/data" includes="Transliterator_Han_Latin_*.txt"/>
        </copy>
    </target>

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

    <target name="xliff" depends="init" description="build xliff converter tool">
        <javac includes="com/ibm/icu/dev/tool/localeconverter/XLIFF2ICUConverter.java,com/ibm/icu/dev/tool/localeconverter/CalculateCRC32.java,com/ibm/icu/dev/tool/UOption.java,com/ibm/icu/dev/tool/xmlcomparator/XMLValidator.java"
            srcdir="${src.dir}"
            destdir="${build.dir}"
            classpathref="build.classpath"
            source="${icu4j.javac.source}"
            target="${icu4j.javac.target}"
            debug="on" deprecation="off"/>
        <jar jarfile="xliff.jar"
            compress="true"
            includes="com/ibm/icu/dev/tool/localeconverter/XLIFF2ICUConverter*.class,com/ibm/icu/dev/tool/localeconverter/CalculateCRC32.class,com/ibm/icu/dev/tool/UOption.class"
            basedir="${build.dir}"
            manifest="${icu4j.module.manifest}"/>
        <jar jarfile="xliff-src.jar"
            compress="true"
            includes="com/ibm/icu/dev/tool/localeconverter/XLIFF2ICUConverter.java,com/ibm/icu/dev/tool/localeconverter/CalculateCRC32.java,com/ibm/icu/dev/tool/UOption.java"
            basedir="${src.dir}"
            manifest="${icu4j.module.manifest}"/>
     </target>
     
    <!-- Target for builing Utilities Jar for CLDR -->

    <target name="cldrUtil" depends="init" description="build Utilities for CLDR">
        <javac includes="com/ibm/icu/dev/test/util/*.java,com/ibm/icu/dev/test/TestFmwk.java,com/ibm/icu/dev/tool/UOption.java"
            srcdir="${src.dir}"
            destdir="${build.dir}"
            source="${icu4j.javac.source}"
            target="${icu4j.javac.target}"
            classpathref="build.classpath"
            debug="on" deprecation="off"/>
        <jar jarfile="utilities.jar"
            compress="true"
            includes="com/ibm/icu/dev/test/util/*.class,com/ibm/icu/dev/test/TestFmwk*.class,com/ibm/icu/dev/test/AbstractTest*.class,com/ibm/icu/dev/test/TestLog*.class,com/ibm/icu/dev/tool/UOption*.class"
            basedir="${build.dir}"
            manifest="${cldr.util.manifest}"/>
     </target>
     <!--Target for building jars -->
     <target name="distJars" depends="jarSrc, jar, jarDocs" />   
     
     <!-- Target for checking the loading of bundles from the default package.
          This is hack to get around Eclipse's build problems. 
     -->
    <target name="defaultPackage" depends="tests" description="Tests for loading resources in the default package">
        <copy file="${src.dir}/com/ibm/icu/dev/test/util/TestDefaultPackageLoading.jpp"
            tofile="${src.dir}/TestDefaultPackageLoading.java"/>
        <copy file="${src.dir}/com/ibm/icu/dev/test/util/TestData_en.jpp"
            tofile="${src.dir}/TestData_en.java"/>
        <javac includes="TestData_en.java, TestDefaultPackageLoading.java"
            excludes="**/CVS/**/*"
            srcdir="${src.dir}"
            destdir="${build.dir}"
            classpathref="build.classpath"
            source="${icu4j.javac.source}"
            target="${icu4j.javac.target}"
            debug="on" deprecation="off"/>
        <!-- copy the file to default package and test if we can load it -->
        <copy file="${build.dir}/com/ibm/icu/dev/data/testdata/te.res"
            todir="${build.dir}/"/>
        <!-- copy the file up one level and test if java style base name loading works -->
        <copy file="${build.dir}/com/ibm/icu/dev/data/testdata/te.res"
            tofile="${build.dir}/com/ibm/icu/dev/data/TestData_bge.res"/>
    </target>
    
    <target name="defaultPackageCheck" depends="tests" description="Run Tests for loading resources in the default package">
            <!--run the tests -->
        <java classname="TestDefaultPackageLoading" fork="yes" failonerror="true">
            <jvmarg value="-ea"/>  <!-- enable assertion checks -->
            <arg value="-n"/>
            <classpath>
                <pathelement path="${java.class.path}/"/>
                <pathelement location="clover.jar"/>
                <pathelement path="${build.dir}"/>
            </classpath>
        </java>
    </target>

    <!-- for building eclipse distribution -->
    
    <target name="zipCoreSrc" depends="init" description="build zip of core sources for debugging">
        <!-- for eclipse -->
        <zip destfile="${zipCoreSrc.file}"
            compress="true"
            basedir="${src.dir}"
            includes="../license.html,../Copyright_Assignment.rtf,com/ibm/icu/impl/**/*,com/ibm/icu/lang/**/*,com/ibm/icu/math/**/*,com/ibm/icu/text/**/*,com/ibm/icu/util/**/*"/>
    </target>

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

    <target name="undoEclipseMangle" depends="buildmangle" description="preprocess files back to default)">
        <java classname="com.ibm.icu.dev.tool.docs.CodeMangler" classpath="${build.dir}" logError="true">
            <arg value="@eclipseCoreArgs.txt"/>
            <arg value="@eclipseTestArgs.txt"/>
        </java>
    </target>

    <target name="eclipseCoreMangle" depends="buildmangle">
        <java classname="com.ibm.icu.dev.tool.docs.CodeMangler" classpath="${build.dir}" logError="true">
            <arg value="-dFOUNDATION"/>
            <arg value="-t"/>
            <arg value="@eclipseCoreArgs.txt"/>
         </java>
    </target>

    <target name="eclipseTestMangle" depends="buildmangle">
        <java classname="com.ibm.icu.dev.tool.docs.CodeMangler" classpath="${build.dir}" logError="true">
            <arg value="-dFOUNDATION"/>
            <arg value="-t"/>
            <arg value="@eclipseTestArgs.txt"/>
        </java>
    </target>

    <target name="eclipseCore" depends="init,coreData,icudata,eclipseCoreMangle">
        <javac includes="com/ibm/icu/util/**/*.java,com/ibm/icu/text/**/*.java,com/ibm/icu/math/**/*.java,com/ibm/icu/impl/**/*.java,com/ibm/icu/lang/*.java"
            excludes="**/CVS/**/*,**/GlobalizationPreferences*"
            compiler="javac1.3"
            srcdir="${src.dir}"
            destdir="${build.dir}"
            classpathref="build.classpath"
            bootclasspath="ee.foundation.jar"
            source="1.3"
            target="1.1"
            debug="on" 
            deprecation="off"
            encoding="ascii"/>
        <antcall target="indices"/>
        <jar jarfile="${jar.file}"
            compress="true"
            includes="com/ibm/icu/util/**/*,com/ibm/icu/text/**/*,com/ibm/icu/math/**/*,com/ibm/icu/impl/**/*,com/ibm/icu/lang/**/*"
            basedir="${build.dir}"
            manifest="${icu4j.manifest}"/>
    </target>

    <target name="eclipseCorePkg" depends="eclipseCore" description="build eclipse core package">
        <!-- should do a clean build before start -->

        <copy file="${jar.file}" toDir="${eclipse.dir}/com.ibm.icu"/>
        <antcall target="zipCoreSrc"/>
        <move file="${zipCoreSrc.file}" toDir="${eclipse.dir}/com.ibm.icu"/>
        <zip destfile="eclipseICU4J_core.zip"
            basedir="${eclipse.dir}"
            includes="com.ibm.icu,com.ibm.icu/**/*"
            excludes="com.ibm.icu/CVS/**/*"/>
    </target>

    <target name="eclipseTestPkg" depends="eclipseCore,eclipseTestMangle" description="build tests trimmed for eclipse API">
        <antcall target="tests"/>
        <jar jarfile="${testjar.file}" compress="true" manifest="${icu4j.tests.manifest}">
            <fileset dir="${build.dir}" includes="com/ibm/icu/dev/test/**/*" excludes="/com/ibm/icu/dev/test/**/GlobalizationPreferences*"/>
            <fileset dir="${build.dir}" includes="com/ibm/icu/dev/data/**/*"/>
        </jar>
        <copy file="${testjar.file}" toDir="${eclipse.dir}/com.ibm.icu.tests"/>
        <antcall target="zipTestSrc"/>
        <move file="${zipTestSrc.file}" toDir="${eclipse.dir}/com.ibm.icu.tests"/>
        <zip destfile="eclipseICU4J_tests.zip"
            basedir="${eclipse.dir}"
            includes="com.ibm.icu.tests,com.ibm.icu.tests/**/*"/>
    </target>

    <target name="eclipseInterfacePkg" depends="init" description="build eclipse interface package">
        <zip destfile="eclipseICU4J_intf.zip"
            basedir="${eclipse.dir}"
            includes="org.eclipse.icu/**/*"/>
    </target>

    <target name="eclipseImplementationPkg" depends="init" description="build eclipse implementation package">
        <zip destfile="eclipseICU4J_impl.zip"
            basedir="${eclipse.dir}"
            includes="com.ibm.icu.eclipse/**/*"/>
    </target>

    <target name="eclipsePkgs" 
        depends="eclipseCorePkg,eclipseTestPkg,eclipseInterfacePkg"
        description="build all eclipse packages"/>
</project>
