16f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgName: icu
26f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgURL: http://site.icu-project.org/
36f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgVersion: 52.1
46f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgLicense: MIT
56f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgSecurity Critical: yes
66f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org
76f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgDescription:
86f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgThis directory contains the source code of ICU 52.1 for C/C++
96f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org
106f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org1. It was obtained with the following:
116f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org
126f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org    $ svn export --native-eol LF http://source.icu-project.org/repos/icu/icu/tags/release-52-1 icu52
136f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org
146f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org  The following directories we don't use are removed:
156f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org
166f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org   - as_is
176f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org   - packaging
186f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org   - source/layout
196f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org   - source/layoutex
20a8b71a9a8ec2adbc5e4f8ecbd2b09ebd50d3eb2bjshin@chromium.org   - source/data/xml
21ea057470ea4e975b465c940cfb9c92b0966fa10ejshin@chromium.org
22d2abf6c1e1f986f4a8db0341b8a8c55c55ec1174jshin@chromium.org  patches/configure.patch is applied to get runConfigureICU work in the
234dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org  icudata generation step without layout and layoutex directory by removing the
244dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org  corresponding Makefile's from ac_config variable.
254dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org
26d2abf6c1e1f986f4a8db0341b8a8c55c55ec1174jshin@chromium.org2. Apply the following patch for platform related headers (putilimpl.h and
274dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org   others).
284dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org
29c9eddd37e9da9a9933e4fabb8a0c753f193e0276jshin@chromium.org  - patches/putil.patch for Android, QNX and newlib(NaCl-newlib).
304dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org    Upstream bug for Android : http://bugs.icu-project.org/trac/ticket/10478
314dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org    Upstream bug for QNX : http://bugs.icu-project.org/trac/ticket/10811
32c9eddd37e9da9a9933e4fabb8a0c753f193e0276jshin@chromium.org    Upstream bug for newlib : http://bugs.icu-project.org/trac/ticket/10873
33533466397f1085e135e82a308ea4d9d83373e91ajshin@chromium.org
34533466397f1085e135e82a308ea4d9d83373e91ajshin@chromium.org - patches/platform_nacl.patch to add U_PF_NATIVE_CLIENT
35533466397f1085e135e82a308ea4d9d83373e91ajshin@chromium.org   Upstream bug : http://bugs.icu-project.org/trac/ticket/11033
364dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org
374dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org
384dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org3. Breakiterator patches
394dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org
40d2abf6c1e1f986f4a8db0341b8a8c55c55ec1174jshin@chromium.org   - Apply patches/brkitr.patch
41d2abf6c1e1f986f4a8db0341b8a8c55c55ec1174jshin@chromium.org     * word.txt
424dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org       a. Move full stops (U+002E, U+FF0E) from MidNumLet to MidNum so that
434dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org          FQDN labels can be split at '.'
444dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org       b. Move fullwidth digits (U+FF10 - U+FF19) from Ideographic to Numeric.
45d2abf6c1e1f986f4a8db0341b8a8c55c55ec1174jshin@chromium.org          See http://unicode.org/cldr/trac/ticket/6555
464dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org     * line.txt
474dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org       a. Use Japanese rules for all locales because Japanese tailoring only
484dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org          affects Japanese specific characters.
494dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org          See http://unicode.org/cldr/trac/ticket/3974
504dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org       b. Minor changes in CL, OP and IS definitions to handle 'comma-variants'
514dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org          more consistenly.
524dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org          See http://unicode.org/cldr/trac/ticket/6557
534dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org       c. Fix line breaking for Chinese characters and quotation marks
54d2abf6c1e1f986f4a8db0341b8a8c55c55ec1174jshin@chromium.org          See http://unicode.org/cldr/trac/ticket/4200 and
554dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org              http://crbug.com/39779
56d2abf6c1e1f986f4a8db0341b8a8c55c55ec1174jshin@chromium.org
574dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org
584dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org   - Add a new file brklocal.mk (copied from brkfiles.mk) with line_ja.txt
594dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org     and word_POSIX.txt dropped from the build list.
604dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org
614dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org   - Apply patches/khmer-dictbe.patch and put in a smaller Khmer dictionary
62d2abf6c1e1f986f4a8db0341b8a8c55c55ec1174jshin@chromium.org     (source/data/brkitr/khmerdict.txt) obtained from
634dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org     http://bugs.icu-project.org/trac/ticket/9451
64ea057470ea4e975b465c940cfb9c92b0966fa10ejshin@chromium.org
65cc7f2c2dfb4d7a492bf86f29d59f25c936197802jshin@chromium.org   - Add several common Chinese words that were dropped previously to
66cc7f2c2dfb4d7a492bf86f29d59f25c936197802jshin@chromium.org     source/data/cjdict/brkitr/cjdict.txt
67cc7f2c2dfb4d7a492bf86f29d59f25c936197802jshin@chromium.org     patch: patches/cjdict.patch
68cc7f2c2dfb4d7a492bf86f29d59f25c936197802jshin@chromium.org     upstream bug: http://bugs.icu-project.org/trac/ticket/10888
69cc7f2c2dfb4d7a492bf86f29d59f25c936197802jshin@chromium.org
70cc7f2c2dfb4d7a492bf86f29d59f25c936197802jshin@chromium.org
71ea057470ea4e975b465c940cfb9c92b0966fa10ejshin@chromium.org   - android/brkitr.patch (to be applied for Android build only) :
72ea057470ea4e975b465c940cfb9c92b0966fa10ejshin@chromium.org       Reverts some changes about Chinese/Japanese segmentation rules in
73ea057470ea4e975b465c940cfb9c92b0966fa10ejshin@chromium.org       patches/brkitr.patch to reduce binary size for Android.
74ea057470ea4e975b465c940cfb9c92b0966fa10ejshin@chromium.org
75d2abf6c1e1f986f4a8db0341b8a8c55c55ec1174jshin@chromium.org4. Converter changes :
764dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org
77d2abf6c1e1f986f4a8db0341b8a8c55c55ec1174jshin@chromium.org  - converters.patch :
784dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org     a. revises existing mapping tables
794dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org     b. Remove a lot of unused aliases in the converter alias table
804dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org        (source/data/mappings/convrtrs.txt ) leading to 40kB size reduction.
814dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org
824dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org  - Add source/data/mappings/ucmlocal.txt : to list only converters we need.
83ff8353094b0b29f2d50059c452d15bbf0a84c0adjshin@chromium.org  - Add three new tables per WHATWG encoding standards for EUC-JP,
84ff8353094b0b29f2d50059c452d15bbf0a84c0adjshin@chromium.org    Shift_JIS and CP866.
85d2abf6c1e1f986f4a8db0341b8a8c55c55ec1174jshin@chromium.org    They're generated with scripts/{eucjp, sjis, ibm866}_gen.sh.
864dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org  - Add three 'fake' tables for ISO-2022-CN(-Ext) : noop-*.ucm.
87ea057470ea4e975b465c940cfb9c92b0966fa10ejshin@chromium.org
88d2abf6c1e1f986f4a8db0341b8a8c55c55ec1174jshin@chromium.org  - uconv.patch
894dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org    a. ucnv2022 uses 3 fake tables for ISO-2022-CN(-Ext) instead of two
904dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org       huge tables.
914dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org    b. ISO-2022-JP-[1-4] is dropped.
92d2abf6c1e1f986f4a8db0341b8a8c55c55ec1174jshin@chromium.org    c. SCSU, BOCU, ISCII, UTF-7 conversion is diabled leading to
934dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org       the 47kB reduction in the code size.
94ea057470ea4e975b465c940cfb9c92b0966fa10ejshin@chromium.org
954dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org5. Locale changes
96ea057470ea4e975b465c940cfb9c92b0966fa10ejshin@chromium.org  - patches/locale1.patch :
971084fe06443198dab720210d41bdd9c27f852e01jshin@chromium.org      a. Exemplar character set changes for zh*, ja + 9 Indian locales
98d2abf6c1e1f986f4a8db0341b8a8c55c55ec1174jshin@chromium.org      b. Minor fixes for Korean, a few Indic (AmPmMarkers) and
991084fe06443198dab720210d41bdd9c27f852e01jshin@chromium.org      others (datetime format)
100ea057470ea4e975b465c940cfb9c92b0966fa10ejshin@chromium.org
1011084fe06443198dab720210d41bdd9c27f852e01jshin@chromium.org  - Locale build configuration files: To include the full locale data
1021084fe06443198dab720210d41bdd9c27f852e01jshin@chromium.org    for Chrome's UI languages and the minimum locale data for other locales,
103ea057470ea4e975b465c940cfb9c92b0966fa10ejshin@chromium.org    add reslocal.mk or {trns,sprep,rbnf,coll}local.mk files to
104ea057470ea4e975b465c940cfb9c92b0966fa10ejshin@chromium.org    source/data/{coll,curr,lang.locale,curr,region,translit,zone,rbnf,sprep}.
105ea057470ea4e975b465c940cfb9c92b0966fa10ejshin@chromium.org
106d2abf6c1e1f986f4a8db0341b8a8c55c55ec1174jshin@chromium.org    This along with #8 (data.build.patch), #3 (brkiter) and #4 (converter)
1074a39040d7b0c1583008ad5bcece0c80d1f4eb8c2jshin@chromium.org    cuts down the data size by ~ 11MB.
1084a39040d7b0c1583008ad5bcece0c80d1f4eb8c2jshin@chromium.org
1094a39040d7b0c1583008ad5bcece0c80d1f4eb8c2jshin@chromium.org  - Run scripts/trim_data.sh : About 2.1MB data size reduction.
1104e4932615b7e125ce9e7a5a3972bc3237cb8e1b0jshin@chromium.org      a. Trim the locale data for Chrome's UI langauges :
1114e4932615b7e125ce9e7a5a3972bc3237cb8e1b0jshin@chromium.org         locales, lang, region, currency
1124e4932615b7e125ce9e7a5a3972bc3237cb8e1b0jshin@chromium.org      b. Trim the locale data for non-UI languages to the bare minimum :
1134e4932615b7e125ce9e7a5a3972bc3237cb8e1b0jshin@chromium.org        ExemplarCharacters, LocaleScript, layout, and the name of the
1144e4932615b7e125ce9e7a5a3972bc3237cb8e1b0jshin@chromium.org        language for a locale in its native language.
115d2abf6c1e1f986f4a8db0341b8a8c55c55ec1174jshin@chromium.org      c. Remove the legacy Chinese character set-based collation
116991d1f1eb3f60c0e07ce1c4831de949ab124019fjshin@chromium.org         (big5han/gb2312han) that don't make any sense and nobdoy uses.
117ea057470ea4e975b465c940cfb9c92b0966fa10ejshin@chromium.org
118ea057470ea4e975b465c940cfb9c92b0966fa10ejshin@chromium.org  - android/patch_locale.sh (to be run for Android build only):
119eec1355adce8b38402f9d46e1ecdcfe42716f18ejshin@chromium.org      a. Makes changes to source/data/{curr,region,lang} to exclude these data
120eec1355adce8b38402f9d46e1ecdcfe42716f18ejshin@chromium.org         except the language and script names of zh_Hans and zh_Hant.
121eec1355adce8b38402f9d46e1ecdcfe42716f18ejshin@chromium.org      b. Remove exemplar cities in timezone data (data/zone)
122eec1355adce8b38402f9d46e1ecdcfe42716f18ejshin@chromium.org      c. Keep only the minimal calendar data in data/locales
123d2abf6c1e1f986f4a8db0341b8a8c55c55ec1174jshin@chromium.org
124ea057470ea4e975b465c940cfb9c92b0966fa10ejshin@chromium.org  - Add tg.txt to source/data/locale source/data/lang to add the minimal locale
125ea057470ea4e975b465c940cfb9c92b0966fa10ejshin@chromium.org    data necessary for the spellchecker. In both directories, add tg.txt to
126ea057470ea4e975b465c940cfb9c92b0966fa10ejshin@chromium.org    reslocal.mk
127ea057470ea4e975b465c940cfb9c92b0966fa10ejshin@chromium.org
128991d1f1eb3f60c0e07ce1c4831de949ab124019fjshin@chromium.org6. Timezone data update
129ea057470ea4e975b465c940cfb9c92b0966fa10ejshin@chromium.org  - Grab the latest version of the following timezone data files and
130ea057470ea4e975b465c940cfb9c92b0966fa10ejshin@chromium.org    put them in source/data/misc.
131ea057470ea4e975b465c940cfb9c92b0966fa10ejshin@chromium.org
132ea057470ea4e975b465c940cfb9c92b0966fa10ejshin@chromium.org     metaZones.txt
133ea057470ea4e975b465c940cfb9c92b0966fa10ejshin@chromium.org     timezoneTypes.txt
134ea057470ea4e975b465c940cfb9c92b0966fa10ejshin@chromium.org     windowsZones.txt
135ea057470ea4e975b465c940cfb9c92b0966fa10ejshin@chromium.org     zoneinfo64.txt
136ea057470ea4e975b465c940cfb9c92b0966fa10ejshin@chromium.org
137ff8353094b0b29f2d50059c452d15bbf0a84c0adjshin@chromium.org   As of August 2014, the latest version is 2014f and the above files
138ea057470ea4e975b465c940cfb9c92b0966fa10ejshin@chromium.org   are available at
139ff8353094b0b29f2d50059c452d15bbf0a84c0adjshin@chromium.org   http://source.icu-project.org/repos/icu/data/trunk/tzdata/icunew/2014f/44/
140ea057470ea4e975b465c940cfb9c92b0966fa10ejshin@chromium.org
141991d1f1eb3f60c0e07ce1c4831de949ab124019fjshin@chromium.org7. Transliterator customization
142ea057470ea4e975b465c940cfb9c92b0966fa10ejshin@chromium.org
1434dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org   - Also add css3transform.txt to source/data/trnslit.
144ea057470ea4e975b465c940cfb9c92b0966fa10ejshin@chromium.org   - Put the following line in trnslocal.mk
145ea057470ea4e975b465c940cfb9c92b0966fa10ejshin@chromium.org
146ea057470ea4e975b465c940cfb9c92b0966fa10ejshin@chromium.org     TRANSLIT_SOURCE=css3transform.txt
147ea057470ea4e975b465c940cfb9c92b0966fa10ejshin@chromium.org
148991d1f1eb3f60c0e07ce1c4831de949ab124019fjshin@chromium.org8. Build-related changes
149ea057470ea4e975b465c940cfb9c92b0966fa10ejshin@chromium.org
150ea057470ea4e975b465c940cfb9c92b0966fa10ejshin@chromium.org  - patches/wpo.patch
1514dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org    Upstream bugs : http://bugs.icu-project.org/trac/ticket/8043
1524dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org                    http://bugs.icu-project.org/trac/ticket/5701
1534dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org  - patches/vscomp.patch for building with Visual Studio on Windows.
1544dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org     a. do not use WINDOWS_LOCALE_API in locmap.c
1554dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org     b. do not redefine stringpiece::npos
1565002de92e35425dc8c5f0121234f6083da5741f6jshin@chromium.org     c. fix a Windows build failure with U_USING_ICU_NAMESPACE=0
157d2abf6c1e1f986f4a8db0341b8a8c55c55ec1174jshin@chromium.org        upstream bug: http://bugs.icu-project.org/trac/ticket/10486
1585002de92e35425dc8c5f0121234f6083da5741f6jshin@chromium.org        fixed in ICU 53)
1595002de92e35425dc8c5f0121234f6083da5741f6jshin@chromium.org     d. Explicitly use Windows 'A' API when argument is an LPSTR in wintz.c
1605002de92e35425dc8c5f0121234f6083da5741f6jshin@chromium.org        upstream bug : http://bugs.icu-project.org/trac/ticket/10870
1615002de92e35425dc8c5f0121234f6083da5741f6jshin@chromium.org
162ea057470ea4e975b465c940cfb9c92b0966fa10ejshin@chromium.org  - patches/data.build.patch :
1634dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org      Remove unnecessary resources : invuca, unames, collator source, stringprep
164ea057470ea4e975b465c940cfb9c92b0966fa10ejshin@chromium.org  - patches/data.build.win.patch :
1658df7e257721e08383dfe17dc2e097b720e23e057jshin@chromium.org      Windows-only data build patch.
166ea057470ea4e975b465c940cfb9c92b0966fa10ejshin@chromium.org
167a4ce5bf56788dbb4835a5ef6143384266bbff5f5jshin@chromium.org  - patches/clang_win.patch :
168d2abf6c1e1f986f4a8db0341b8a8c55c55ec1174jshin@chromium.org    Take care of 3 warnings from clang and MSVC 2013.
169a4ce5bf56788dbb4835a5ef6143384266bbff5f5jshin@chromium.org    upstream bug : http://bugs.icu-project.org/trac/ticket/11102
170a4ce5bf56788dbb4835a5ef6143384266bbff5f5jshin@chromium.org
171991d1f1eb3f60c0e07ce1c4831de949ab124019fjshin@chromium.org9. Pre-built data files are checked in with the following steps on Linux:
172ea057470ea4e975b465c940cfb9c92b0966fa10ejshin@chromium.org
173d2abf6c1e1f986f4a8db0341b8a8c55c55ec1174jshin@chromium.org    a. Make a icu data build directory outside the Chromium source tree
174eec1355adce8b38402f9d46e1ecdcfe42716f18ejshin@chromium.org       and cd to that directory.
175d2abf6c1e1f986f4a8db0341b8a8c55c55ec1174jshin@chromium.org    b. Run
176eec1355adce8b38402f9d46e1ecdcfe42716f18ejshin@chromium.org
177eec1355adce8b38402f9d46e1ecdcfe42716f18ejshin@chromium.org      ${CHROME_ICU_TREE_TOP}/source/runConfigureICU Linux --disable-layout
178eec1355adce8b38402f9d46e1ecdcfe42716f18ejshin@chromium.org
1794dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org    c. Run 'make'
180d2abf6c1e1f986f4a8db0341b8a8c55c55ec1174jshin@chromium.org    d. 'make' will fail in the 1st pass. Copy
181eec1355adce8b38402f9d46e1ecdcfe42716f18ejshin@chromium.org       ${CHROME_ICU_TREE_TOP}/source/data/in/coll/invuca.icu
182eec1355adce8b38402f9d46e1ecdcfe42716f18ejshin@chromium.org       to {BUILD_DIR_ROOT}/data/out/build/icudt52l/coll and re-run 'make'
183eec1355adce8b38402f9d46e1ecdcfe42716f18ejshin@chromium.org       in {BUILD_DIR_ROOT}/data.
184ea057470ea4e975b465c940cfb9c92b0966fa10ejshin@chromium.org
1854dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org    e. 'make' will fail again when pkgdata looks for css3transform.res. Edit
186ea057470ea4e975b465c940cfb9c92b0966fa10ejshin@chromium.org    data/out/tmp/icudata.lst to replace 'css3transform.res' with 'root.res'.
187ea057470ea4e975b465c940cfb9c92b0966fa10ejshin@chromium.org    (see http://bugs.icu-project.org/trac/ticket/10570 ) and run 'make' again.
188ea057470ea4e975b465c940cfb9c92b0966fa10ejshin@chromium.org
189ea057470ea4e975b465c940cfb9c92b0966fa10ejshin@chromium.org
190ea057470ea4e975b465c940cfb9c92b0966fa10ejshin@chromium.org    - source/data/in/icudtl.dat : Built on Linux with all the patches
1914dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org      above applied. icudt52l.dat is generated in
192ea057470ea4e975b465c940cfb9c92b0966fa10ejshin@chromium.org      {BUILD_DIR_ROOT}/data/out/tmp and copied to the above location with a
1934dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org      version number (52) dropped.
194ea057470ea4e975b465c940cfb9c92b0966fa10ejshin@chromium.org
195ea057470ea4e975b465c940cfb9c92b0966fa10ejshin@chromium.org
196991d1f1eb3f60c0e07ce1c4831de949ab124019fjshin@chromium.org    - {mac,linux}/icudtl_dat.S : Built on Linux with all the
197ea057470ea4e975b465c940cfb9c92b0966fa10ejshin@chromium.org      patches above (except android/brkitr.patch) applied and checked in.
198991d1f1eb3f60c0e07ce1c4831de949ab124019fjshin@chromium.org      This file will be generated in {BUILD_DIR_ROOT}/data/out/tmp as
199991d1f1eb3f60c0e07ce1c4831de949ab124019fjshin@chromium.org      icudt52l_dat.S, but '52' is dropped while copying.
200ea057470ea4e975b465c940cfb9c92b0966fa10ejshin@chromium.org
2018df7e257721e08383dfe17dc2e097b720e23e057jshin@chromium.org      mac/icudtl_dat.S is identical to linux/icudtl_dat.S except for
202d2abf6c1e1f986f4a8db0341b8a8c55c55ec1174jshin@chromium.org      the header portion. With "linux/icudtl_dat.S" in its place,
2038df7e257721e08383dfe17dc2e097b720e23e057jshin@chromium.org      run scripts/make_mac_assembly.sh to generate it.
204ea057470ea4e975b465c940cfb9c92b0966fa10ejshin@chromium.org
205991d1f1eb3f60c0e07ce1c4831de949ab124019fjshin@chromium.org    - android/icudtl_dat.S : Built on Linux with all the patches above and
206991d1f1eb3f60c0e07ce1c4831de949ab124019fjshin@chromium.org      android/brkitr.patch applied and android/patch_locale.sh executed.
207991d1f1eb3f60c0e07ce1c4831de949ab124019fjshin@chromium.org      '52' is dropped from the name generated in the build tree.
208991d1f1eb3f60c0e07ce1c4831de949ab124019fjshin@chromium.org
2094dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org    - android/icudtl.dat : Generated as icudt52l.dat in
2104dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org      {BUILD_DIR_ROOT}/data/out/tmp along with icudt52l_dat.S and
2114dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org      copied to the above location with '52' dropped in its name.
2124dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org
2138df7e257721e08383dfe17dc2e097b720e23e057jshin@chromium.org    - windows/icudt.dll (by default, we set icu_use_icu_data_flag to 1
214d2abf6c1e1f986f4a8db0341b8a8c55c55ec1174jshin@chromium.org      and don't use this file.)
2158df7e257721e08383dfe17dc2e097b720e23e057jshin@chromium.org
2168df7e257721e08383dfe17dc2e097b720e23e057jshin@chromium.org      a. check out a clean copy of icu52  from the upstream on Windows
2178df7e257721e08383dfe17dc2e097b720e23e057jshin@chromium.org         outside the Chrome tree.
2188df7e257721e08383dfe17dc2e097b720e23e057jshin@chromium.org
2198df7e257721e08383dfe17dc2e097b720e23e057jshin@chromium.org        $ svn export --native-eol LF http://source.icu-project.org/repos/icu/icu/tags/release-52-1 ${SEPARATE_ICU_ROOT}/icu52
2208df7e257721e08383dfe17dc2e097b720e23e057jshin@chromium.org
221d2abf6c1e1f986f4a8db0341b8a8c55c55ec1174jshin@chromium.org      b. copy ${CHROME_ICU_ROOT}/source/data/in/icudtl.dat to
2228df7e257721e08383dfe17dc2e097b720e23e057jshin@chromium.org         ${SEPARATE_ICU_ROOT}/source/data/in/icudt52l.dat
2238df7e257721e08383dfe17dc2e097b720e23e057jshin@chromium.org      c. copy ${CHROME_ICU_ROOT}/source/data/makedata.mak to
2248df7e257721e08383dfe17dc2e097b720e23e057jshin@chromium.org         ${SEPARATE_ICU_ROOT}/source/data/makedata.mak
2258df7e257721e08383dfe17dc2e097b720e23e057jshin@chromium.org      c. In Visual Studio, open source/allinone/allinone.sln solution
2268df7e257721e08383dfe17dc2e097b720e23e057jshin@chromium.org         in ${SEPARATE_ICU_ROOT}
227d2abf6c1e1f986f4a8db0341b8a8c55c55ec1174jshin@chromium.org      d. Build 'makedata' target
2288df7e257721e08383dfe17dc2e097b720e23e057jshin@chromium.org      e. icudt52.dll will be generated in ${SEPARATE_ICU_ROOT}/bin
229d2abf6c1e1f986f4a8db0341b8a8c55c55ec1174jshin@chromium.org      f. Copy that icudt52.dll to ${CHROME_ICU_ROOT}/windows/icudt.dll
2308df7e257721e08383dfe17dc2e097b720e23e057jshin@chromium.org         and check that in.
2318df7e257721e08383dfe17dc2e097b720e23e057jshin@chromium.org
232ea057470ea4e975b465c940cfb9c92b0966fa10ejshin@chromium.org
233991d1f1eb3f60c0e07ce1c4831de949ab124019fjshin@chromium.org10. Change export of U_ICUDATA_ENTRY_POINT from U_IMPORT to U_EXPORT.
2344dfa619cf375ebb67b7b9311487d19a4129f742fjshin@chromium.org    - patches/declspec.patch
235d2abf6c1e1f986f4a8db0341b8a8c55c55ec1174jshin@chromium.org
236d2abf6c1e1f986f4a8db0341b8a8c55c55ec1174jshin@chromium.org11. Cherry-pick an upstream patch to fix a bug in bidi.
237d2abf6c1e1f986f4a8db0341b8a8c55c55ec1174jshin@chromium.org    - patches/bidi.patch
238d2abf6c1e1f986f4a8db0341b8a8c55c55ec1174jshin@chromium.org    - upstream bug : http://bugs.icu-project.org/trac/ticket/11054
239