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