<!DOCTYPE project [
    <!ENTITY icu-config SYSTEM "./icu-config.xml">
]>
<!--
/*
*******************************************************************************
* Copyright (C) 2005-2007, International Business Machines Corporation and    *
* others. All Rights Reserved.                                                *
*******************************************************************************
*/
-->
<project name="icu-build" default="all" basedir=".">
    <target name="init">
        <tstamp/>

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

        <condition property="is.icu4j.classes.set" >
            <or>
                <isset property="env.ICU4J_CLASSES" />
                <isset property="env.ICU4J_JAR" />
            </or>
        </condition >
        <fail unless="is.icu4j.classes.set" message="Please set the ICU4J_CLASSES or ICU4J_JAR environment variable."/>

        <condition property="is.icu4c.dir.set" >
            <isset property="env.ICU4C_DIR" />
        </condition >
        <fail unless="is.icu4c.dir.set" message="Please set the ICU4C_DIR environment variable."/>

        <condition property="is.cldr.dir.set" >
            <isset property="env.CLDR_DIR" />
        </condition >
        <fail unless="is.cldr.dir.set" message="Please set the CLDR_DIR environment variable."/>

        <condition property="is.cldr.classes.set" >
            <or>
                <isset property="env.CLDR_CLASSES" />
                <isset property="env.CLDR_JAR" />
            </or>
        </condition >
        <fail unless="is.cldr.classes.set" message="Please set the CLDR_CLASSES or CLDR_JAR environment variable."/>

        <condition property="is.utilities.classes.set" >
            <or>
                <isset property="env.ICU4J_CLASSES" />
                <isset property="env.UTILITIES_JAR" />
            </or>
        </condition >
        <fail unless="is.utilities.classes.set" message="Please set the ICU4J_CLASSES or UTILITIES_JAR environment variable."/>

        <echo message="java home: ${java.home}"/>
        <echo message="java version: ${java.version}"/>
        <echo message="ant java version: ${ant.java.version}"/>
        <echo message="${ant.version}"/>
    </target>
    <target name="setup">

        <echo message="${env.CLDR_CLASSES}"/>
        <taskdef name="cldr-build" classname="org.unicode.cldr.ant.CLDRBuild">
            <classpath>
                <pathelement path="${java.class.path}/"/>
                <pathelement path="${env.ICU4J_CLASSES}"/>
                <pathelement path="${env.CLDR_CLASSES}"/>
                <pathelement location="${env.ICU4J_JAR}"/>
                <pathelement location="${env.CLDR_JAR}"/>
                <pathelement location="${env.UTILITIES_JAR}"/>
            </classpath>
        </taskdef>
    </target>
    <!-- target for generating ICU data -->
    <target name="all" depends="locales, resfiles, collation, colfiles, supplementalData, brkitr, brkfiles" />

    <!-- parallel target -->
    <target name="pall" depends="init">
        <parallel threadsPerProcessor ="1">
          <sequential>
            <ant target='locales'>
            </ant>
            <ant target='resfiles'>
            </ant>
          </sequential>
          <sequential>
            <ant target='collation'>
            </ant>
            <ant target='colfiles'>
            </ant>
          </sequential>
          <ant target='supplementalData'>
          </ant>
          <sequential>
            <ant target='brkitr'>
            </ant>
            <ant target='brkfiles'>
            </ant>
          </sequential>
          <sequential>
            <ant target='translit'>
            </ant>
            <!--<ant target='trnsfiles'></ant>    Not ANT-built - see note below. -->
          </sequential>
        </parallel>
     </target>

    <target name="locales" depends="init,setup" description="builds locale files in ICU text format">
        <cldr-build toolName="org.unicode.cldr.icu.LDML2ICUConverter" srcFile=".*xml" destFile=".*txt">
            <!-- launch the tool and generate the data after reading the config file -->
            <run>
                <args>
                    <arg name="--sourcedir"       value="${env.CLDR_DIR}/common/main" />
                    <arg name="--destdir"         value="${env.ICU4C_DIR}/source/data/locales"/>
                    <arg name="--specialsdir"     value="${env.ICU4C_DIR}/source/data/xml/main"/>
                    <arg name="--supplementaldir" value="${env.CLDR_DIR}/common/supplemental" />
                </args>
                <!-- http://ant.apache.org/faq.html#xml-entity-include -->
                &icu-config;
            </run>
        </cldr-build>
    </target>
    <target name="resfiles" depends="init,setup" description="builds resfiles.mk">
        <cldr-build toolName="org.unicode.cldr.icu.LDML2ICUConverter" destFile="resfiles.mk" noArgs="true">
            <run>
                <args>
                    <arg name="-s" value="${env.CLDR_DIR}/common/main" />
                    <arg name="-d" value="${env.ICU4C_DIR}/source/data/locales"/>
                    <arg name="-p" value="${env.ICU4C_DIR}/source/data/xml/main"/>
                    <arg name="-m" value="${env.CLDR_DIR}/common/supplemental" />
                    <arg name="-w" value="${env.CLDR_DIR}/common/main" />
                </args>
                  <!-- locale aliases (main) -->
                <deprecates>
                    <alias from="in" to="id" />
                    <alias from="in_ID" to="id_ID" />
                    <alias from="iw" to="he" />
                    <alias from="iw_IL" to="he_IL" />
                    <alias from="ja_JP_TRADITIONAL" to="ja_JP@calendar=japanese" xpath="//ldml/dates/calendars/default[@type='japanese']"/>
                    <alias from="no" to="nb"/>
                    <alias from="no_NO" to="nb_NO"/>
                    <alias from="no_NO_NY" to="nn_NO" />
                    <alias from="en_RH" to="en_ZW" />
                    <alias from="th_TH_TRADITIONAL" to="th_TH@calendar=buddhist" xpath="//ldml/dates/calendars/default[@type='buddhist']" />
                    <aliasLocale locale="az_AZ" />
                    <aliasLocale locale="pa_IN" />
                    <aliasLocale locale="sh" />
                    <aliasLocale locale="sh_BA" />
                    <aliasLocale locale="sh_CS" />
                    <aliasLocale locale="sh_YU" />
                    <aliasLocale locale="sr_BA" />
                    <aliasLocale locale="sr_CS" />
                    <aliasLocale locale="sr_ME" />
                    <aliasLocale locale="sr_RS" />
                    <aliasLocale locale="sr_YU" />
                    <aliasLocale locale="sr_Cyrl_YU" />
                    <aliasLocale locale="sr_Cyrl_CS" />
                    <aliasLocale locale="sr_Latn_YU" />
                    <aliasLocale locale="sr_Latn_CS" />
                    <aliasLocale locale="uz_AF" />
                    <aliasLocale locale="uz_UZ" />
                    <aliasLocale locale="zh_CN" />
                    <aliasLocale locale="zh_HK" />
                    <aliasLocale locale="zh_MO" />
                    <aliasLocale locale="zh_SG" />
                    <aliasLocale locale="zh_TW" />
                </deprecates>
            </run>
        </cldr-build>
    </target>
    <target name="collation" depends="init,setup" description="builds collation files in ICU text format">
        <cldr-build toolName="org.unicode.cldr.icu.LDML2ICUConverter" srcFile=".*xml" destFile=".*txt">
            <run>
                <args>
                    <arg name="--sourcedir"       value="${env.CLDR_DIR}/common/collation" />
                    <arg name="--destdir"         value="${env.ICU4C_DIR}/source/data/coll"/>
                    <arg name="--specialsdir"     value="${env.ICU4C_DIR}/source/data/xml/collation"/>
                    <arg name="--supplementaldir" value="${env.CLDR_DIR}/common/supplemental" />
                </args>
                <!-- http://ant.apache.org/faq.html#xml-entity-include -->
                &icu-config;
            </run>
        </cldr-build>
    </target>
    <target name="colfiles" depends="init, setup" description="builds colfiles.mk">
        <cldr-build toolName="org.unicode.cldr.icu.LDML2ICUConverter" destFile="colfiles.mk" noArgs="true">
            <!-- launch the tool and generate the data after reading the config file -->
            <run>
                <args>
                    <arg name="-s" value="${env.CLDR_DIR}/common/collation" />
                    <arg name="-d" value="${env.ICU4C_DIR}/source/data/coll"/>
                    <arg name="-p" value="${env.ICU4C_DIR}/source/data/xml/collation"/>
                    <arg name="-m" value="${env.CLDR_DIR}/common/supplemental" />
                    <arg name="-w" value="${env.CLDR_DIR}/common/collation" />
                </args>
                 <deprecates>
                    <alias from="de__PHONEBOOK" to="de@collation=phonebook"  xpath="//ldml/collations/default[@type='phonebook']"/>
                    <alias from="es__TRADITIONAL" to="es@collation=traditional" xpath="//ldml/collations/default[@type='traditional']"/>
                    <alias from="hi__DIRECT" to="hi@collation=direct" xpath="//ldml/collations/default[@type='direct']"/>
                    <alias from="zh__PINYIN" to="zh@collation=pinyin" xpath="//ldml/collations/default[@type='pinyin']"/>
                    <alias from="zh_TW_STROKE" to="zh@collation=stroke" xpath="//ldml/collations/default[@type='stroke']"/>
                    <alias from="in" to="id" />
                    <alias from="in_ID" to="id_ID" />
                    <alias from="iw" to="he" />
                    <alias from="iw_IL" to="he_IL" />
                    <alias from="no" to="nb" />
                    <alias from="no_NO" to="nb_NO" />
                    <alias from="sh" to="sr_Latn" />
                    <alias from="sh_BA" to="sr_Latn_BA" />
                    <alias from="sh_CS" to="sr_Latn_RS" />
                    <alias from="sh_YU" to="sr_Latn_RS" />
                    <alias from="sr_BA" to="sr_Cyrl_BA" />
                    <alias from="sr_ME" to="sr_Cyrl_ME" />
                    <alias from="sr_RS" to="sr_Cyrl_RS" />
                    <alias from="zh_CN" to="zh_Hans_CN" />
                    <alias from="zh_SG" to="zh_Hans_SG" />
                    <alias from="zh_HK" to="zh_Hant_HK" />
                    <alias from="zh_MO" to="zh_Hant_MO" />
                    <alias from="zh_TW" to="zh_Hant_TW" />
                    <emptyLocale locale="de_" />
                    <emptyLocale locale="es_" />
                    <emptyLocale locale="hi_" />
                    <emptyLocale locale="zh_" />
                </deprecates>
            </run>
        </cldr-build>
    </target>
    <target name="supplementalData" depends="init,setup" description="builds supplementalData.txt from supplementalData.xml">
        <cldr-build toolName="org.unicode.cldr.icu.LDML2ICUConverter" destFile="supplementalData.txt" noArgs="true">
            <!-- launch the tool and generate the data after reading the config file -->
            <run>
                <args>
                    <arg name="-s" value="${env.CLDR_DIR}/common/supplemental" />
                    <arg name="-d" value="${env.ICU4C_DIR}/source/data/misc"/>
                    <arg name="-l"/>
                    <arg name="-f"/>
                    <arg name="-m" value="${env.CLDR_DIR}/common/supplemental" />
                </args>
            </run>
        </cldr-build>
    </target>
    <target name="brkitr" depends="init,setup" description="builds break iterator files in ICU text format">
        <cldr-build toolName="org.unicode.cldr.icu.LDML2ICUConverter" srcFile=".*xml" destFile=".*txt">
            <run>
                <args>
                    <arg name="--sourcedir"       value="${env.ICU4C_DIR}/source/data/xml/brkitr"/>
                    <arg name="--destdir"         value="${env.ICU4C_DIR}/source/data/brkitr"/>
                    <arg name="--supplementaldir" value="${env.CLDR_DIR}/common/supplemental" />
                </args>
                <!-- The entity include is not required for this target -->
                <!-- http://ant.apache.org/faq.html#xml-entity-include
                &icu-config;
                -->
            </run>
        </cldr-build>
    </target>
    <target name="brkfiles" depends="init, setup" description="builds brkfiles.mk">
        <cldr-build toolName="org.unicode.cldr.icu.LDML2ICUConverter" destFile="brkfiles.mk" noArgs="true">
            <!-- launch the tool and generate the data after reading the config file -->
            <run>
                <args>
                    <arg name="-s" value="${env.ICU4C_DIR}/source/data/xml/brkitr" />
                    <arg name="-d" value="${env.ICU4C_DIR}/source/data/brkitr"/>
                    <arg name="-m" value="${env.CLDR_DIR}/common/supplemental" />
                    <arg name="-w" value="${env.ICU4C_DIR}/source/data/xml/brkitr" />
                </args>
            </run>
        </cldr-build>
    </target>
        <target name="translit" depends="init,setup" description="builds collation files in ICU text format">
        <cldr-build toolName="org.unicode.cldr.icu.ConvertTransforms" srcFile=".*xml" destFile=".*txt">
            <run>
                <args>
                    <arg name="--sourcedir" value="${env.CLDR_DIR}/common/transforms" />
                    <arg name="--destdir"   value="${env.ICU4C_DIR}/source/data/translit"/>
                    <arg name="--commentSkip"/>
                </args>
                <!-- http://ant.apache.org/faq.html#xml-entity-include -->

            </run>
        </cldr-build>
    </target>
    <!-- we don't generate en.txt or el.txt - so don't change trnsfiles.mk for now. -->
<!--   
     <target name="trnsfiles" depends="init, setup" description="builds trnsfiles.mk">
        <cldr-build toolName="org.unicode.cldr.icu.ConvertTransforms" srcFile=".*xml" destFile="trnsfiles.mk" noArgs="true">
            <run>
                <args>   [ double hyphen not allowed in comments - transpose -" to fix below ]
                    <arg name=-"-sourcedir" value="${env.CLDR_DIR}/common/transforms" />
                    <arg name=-"-destdir"   value="${env.ICU4C_DIR}/source/data/translit"/>
                    <arg name=-"-commentSkip"/>
                    <arg name=-"-writeIndex"/>
                </args>
            </run>
        </cldr-build>
    </target> -->
    <target name="clean" depends="init, setup" description="deletes all txt files and mk files from coll and locales directories">
        <delete>
            <fileset id="locales" dir="${env.ICU4C_DIR}/source/data/locales">
                <include name="*.txt" />
                <include name="resfiles.mk" />
            </fileset>
            <fileset id="locales" dir="${env.ICU4C_DIR}/source/data/coll">
                <include name="*.txt" />
                <include name="colfiles.mk" />
            </fileset>
            <fileset id="locales" dir="${env.ICU4C_DIR}/source/data/translit">
                <include name="*_*.txt" />
                <include name="root.txt" />
            </fileset>
            <fileset id="locales" dir="${env.ICU4C_DIR}/source/data/brkitr">
                <!-- brkitr directory contains bunch of txt files that are not produced by LDML2ICUConverter.
                     So can't clean up everything. This needs to be updated when new files are added to xml/brkitr directory -->
                <include name="root.txt, en.txt, en_US.txt, en_US_POSIX.txt, ja.txt" />
                <include name="brkfiles.mk" />
            </fileset>
            <fileset id="locales" dir="${env.ICU4C_DIR}/source/data/misc">
                <include name="supplementalData.txt" />
            </fileset>
        </delete>
    </target>
</project>
