Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(180)

Side by Side Diff: README.chromium

Issue 2442923002: ICU update to 58 part 2 (Closed)
Patch Set: apply more patches and updates; almost ready to roll Created 4 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « BUILD.gn ('k') | READ_THIS_FIRST » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 Name: icu 1 Name: icu
2 URL: http://site.icu-project.org/ 2 URL: http://site.icu-project.org/
3 Version: 58.1 3 Version: 58.1
4 License: MIT 4 License: MIT
5 Security Critical: yes 5 Security Critical: yes
6 6
7 WARNING: ICU is in the middle of being updated to 58.1. DEPS-roll to
8 ToT WOULD NOT work until the update is completed. Do not roll icu to the
9 ToT. If you need to make a change in ICU 56, contact jshin@chromium.org
10 (jungshik at google) to make a branch.
11
12 Description: 7 Description:
13 This directory contains the source code of ICU 58.1 for C/C++. 8 This directory contains the source code of ICU 58.1 for C/C++.
14 9
15 A. How to update ICU 10 A. How to update ICU
16 11
17 1. Run "scripts/update.sh <version>" (e.g. 56-1). 12 1. Run "scripts/update.sh <version>" (e.g. 58-1).
18 This will download ICU from the upstream svn repository. 13 This will download ICU from the upstream svn repository.
19 It does preserve Chrome-specific build files (*local.mk) and 14 It does preserve Chrome-specific build files (*local.mk) and
20 converter files. (see section C) 15 converter files. (see section C)
21 16
22 2. Update the source file lists for i18n and common 17 2. Update the source file lists for i18n and common
23 in icu.gypi and BUILD.gn. See the comments in the files. 18 in icu.gypi and BUILD.gn. See the comments in the files.
24 19
25 3. Review and apply patches/changes in "D. Local Modifications" if 20 3. Review and apply patches/changes in "D. Local Modifications" if
26 necessary/applicable. Update patch files in patches/. 21 necessary/applicable. Update patch files in patches/.
27 22
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after
94 k. Whenever data is updated (e.g timezone update), follow d ~ j as long 89 k. Whenever data is updated (e.g timezone update), follow d ~ j as long
95 as the ICU build directory used in a ~ c is kept. Besides, icudt.dll for 90 as the ICU build directory used in a ~ c is kept. Besides, icudt.dll for
96 Windows has to be udpated following the procedure described below. 91 Windows has to be udpated following the procedure described below.
97 92
98 93
99 2. icu data dll for Windows (non-default build option) 94 2. icu data dll for Windows (non-default build option)
100 95
101 Follow these steps to build windows/icudt.dll. By default, we set 96 Follow these steps to build windows/icudt.dll. By default, we set
102 icu_use_icu_data_flag to 1 and don't use this file. 97 icu_use_icu_data_flag to 1 and don't use this file.
103 98
104 a. check out a clean copy of icu56 from the upstream on Windows 99 a. check out a clean copy of icu58 from the upstream on Windows
105 outside the Chrome tree. 100 outside the Chrome tree.
106 101
107 $ svn export --native-eol LF http://source.icu-project.org/repos/icu/icu/tag s/release-56-1 ${SEPARATE_ICU_ROOT}/icu56 102 $ svn export --native-eol LF http://source.icu-project.org/repos/icu/icu/tag s/release-58-1 ${SEPARATE_ICU_ROOT}/icu58
108 103
109 b. copy ${CHROME_ICU_ROOT}/common/icudtl.dat to 104 b. copy ${CHROME_ICU_ROOT}/common/icudtl.dat to
110 ${SEPARATE_ICU_ROOT}/source/data/in/icudt56l.dat 105 ${SEPARATE_ICU_ROOT}/source/data/in/icudt58l.dat
111 c. copy ${CHROME_ICU_ROOT}/source/data/makedata.mak to 106 c. copy ${CHROME_ICU_ROOT}/source/data/makedata.mak to
112 ${SEPARATE_ICU_ROOT}/source/data/makedata.mak 107 ${SEPARATE_ICU_ROOT}/source/data/makedata.mak
113 c. In Visual Studio, open source/allinone/allinone.sln solution 108 c. In Visual Studio, open source/allinone/allinone.sln solution
114 in ${SEPARATE_ICU_ROOT} 109 in ${SEPARATE_ICU_ROOT}
115 d. Build 'makedata' target 110 d. Build 'makedata' target
116 e. icudt56.dll will be generated in ${SEPARATE_ICU_ROOT}/bin 111 e. icudt58.dll will be generated in ${SEPARATE_ICU_ROOT}/bin
117 f. Copy that icudt56.dll to ${CHROME_ICU_ROOT}/windows/icudt.dll 112 f. Copy that icudt58.dll to ${CHROME_ICU_ROOT}/windows/icudt.dll
118 and check that in. 113 and check that in.
119 114
120 3. Note on the locale data customization 115 3. Note on the locale data customization
121 116
122 - scripts/trim_data.sh 117 - scripts/trim_data.sh
123 a. Trim the locale data for Chrome's UI langauges : 118 a. Trim the locale data for Chrome's UI langauges :
124 locales, lang, region, currency, zone 119 locales, lang, region, currency, zone
125 b. Trim the locale data for non-UI languages to the bare minimum : 120 b. Trim the locale data for non-UI languages to the bare minimum :
126 ExemplarCharacters, LocaleScript, layout, and the name of the 121 ExemplarCharacters, LocaleScript, layout, and the name of the
127 language for a locale in its native language. 122 language for a locale in its native language.
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after
196 - patches/locale_google.patch: 191 - patches/locale_google.patch:
197 * Google's internal ICU locale changes 192 * Google's internal ICU locale changes
198 * Simpler region names for Hong Kong and Macau in all locales 193 * Simpler region names for Hong Kong and Macau in all locales
199 * Currency signs in ru and uk locales (do not include 'tr' locale changes) 194 * Currency signs in ru and uk locales (do not include 'tr' locale changes)
200 * AM/PM, midnight, noon formatting for a few Indian locales 195 * AM/PM, midnight, noon formatting for a few Indian locales
201 * Timezone name changes in Korean and Chinese locales 196 * Timezone name changes in Korean and Chinese locales
202 197
203 - patches/locale1.patch: Minor fixes for Korean 198 - patches/locale1.patch: Minor fixes for Korean
204 199
205 200
206 2. Applied post-56 fixes from the upstream for measure/date format bugs 201 2. Breakiterator patches
207
208 - patches/measure_format.patch: combined patch of 12 CLs taken
209 from bugs below.
210 - upstream bugs
211 http://bugs.icu-project.org/trac/ticket/11986
212 http://bugs.icu-project.org/trac/ticket/12031
213 http://bugs.icu-project.org/trac/ticket/12030
214 http://bugs.icu-project.org/trac/ticket/12041
215
216 - patches/relative_date.patch from Android
217 https://android.googlesource.com/platform/external/icu/+/f9ffd5b%5E%21
218
219 3. Breakiterator patches
220 - patches/linebrk.patch 202 - patches/linebrk.patch
221 a. Drop *_loose.txt for all locales and use the corresponding normal.txt 203 a. Drop *_loose.txt for all locales and use the corresponding normal.txt
222 b. Drop local patches we used to have for the following issues. They'll 204 b. Drop local patches we used to have for the following issues. They'll
223 be dealt with in the upstream (Unicode/CLDR). 205 be dealt with in the upstream (Unicode/CLDR).
224 http://unicode.org/cldr/trac/ticket/6557 206 http://unicode.org/cldr/trac/ticket/6557
225 http://unicode.org/cldr/trac/ticket/4200 (http://crbug.com/39779) 207 http://unicode.org/cldr/trac/ticket/4200 (http://crbug.com/39779)
226 208
227 - patches/wordbrk.patch for word.txt 209 - patches/wordbrk.patch for word.txt
228 a. Move full stops (U+002E, U+FF0E) from MidNumLet to MidNum so that 210 a. Move full stops (U+002E, U+FF0E) from MidNumLet to MidNum so that
229 FQDN labels can be split at '.' 211 FQDN labels can be split at '.'
230 b. Move fullwidth digits (U+FF10 - U+FF19) from Ideographic to Numeric. 212 b. Move fullwidth digits (U+FF10 - U+FF19) from Ideographic to Numeric.
231 See http://unicode.org/cldr/trac/ticket/6555 213 See http://unicode.org/cldr/trac/ticket/6555
232 214
233 - patches/khmer-dictbe.patch 215 - patches/khmer-dictbe.patch
234 Adjust parameters to use a smaller Khmer dictionary (khmerdict.txt). 216 Adjust parameters to use a smaller Khmer dictionary (khmerdict.txt).
235 http://bugs.icu-project.org/trac/ticket/9451 217 http://bugs.icu-project.org/trac/ticket/9451
236 218
237 - Add several common Chinese words that were dropped previously to 219 - Add several common Chinese words that were dropped previously to
238 source/data/cjdict/brkitr/cjdict.txt 220 source/data/cjdict/brkitr/cjdict.txt
239 patch: patches/cjdict.patch 221 patch: patches/cjdict.patch
240 upstream bug: http://bugs.icu-project.org/trac/ticket/10888 222 upstream bug: http://bugs.icu-project.org/trac/ticket/10888
241 223
242 4. Timezone data update 224 3. Timezone data update
243 Run scripts/update_tz.sh to grab the latest version of the 225 Run scripts/update_tz.sh to grab the latest version of the
244 following timezone data files and put them in source/data/misc 226 following timezone data files and put them in source/data/misc
245 227
246 metaZones.txt 228 metaZones.txt
247 timezoneTypes.txt 229 timezoneTypes.txt
248 windowsZones.txt 230 windowsZones.txt
249 zoneinfo64.txt 231 zoneinfo64.txt
250 232
251 As of July 26, 2016, the latest version is 2016f and the above files 233 As of Oct 21, 2016, the latest version is 2016h and the above files
252 are available at 234 are available at
253 http://source.icu-project.org/repos/icu/data/trunk/tzdata/icunew/2016f/44/ 235 http://source.icu-project.org/repos/icu/data/trunk/tzdata/icunew/2016h/44/
254 236
255 5. Build-related changes 237 4. Build-related changes
256 238
257 - patches/wpo.patch 239 - patches/wpo.patch (only needed when icudata dll is used).
258 upstream bugs : http://bugs.icu-project.org/trac/ticket/8043 240 upstream bugs : http://bugs.icu-project.org/trac/ticket/8043
259 http://bugs.icu-project.org/trac/ticket/5701 241 http://bugs.icu-project.org/trac/ticket/5701
260 - patches/vscomp.patch for building with Visual Studio on Windows. 242 - patches/vscomp.patch for building with Visual Studio on Windows:
261 a. do not use WINDOWS_LOCALE_API in locmap.c 243 do not use WINDOWS_LOCALE_API in locmap.c
262 b. do not redefine stringpiece::npos
263 c. fix http://bugs.icu-project.org/trac/ticket/12129 (C4138 warning)
264 d. fix http://bugs.icu-project.org/trac/ticket/11893 (C4275 warning)
265 244
266 - patches/data.build.patch : 245 - patches/data.build.patch :
267 Remove unnecessary resources : unames, collator rule source 246 Remove unnecessary resources : unames, collator rule source
268 - patches/data.build.win.patch : 247 - patches/data.build.win.patch :
269 Windows-only data build patch. 248 Windows-only data build patch.
270 - patches/data_symb.patch : 249 - patches/data_symb.patch :
271 Put ICU_DATA_ENTRY_POINT(icudtXX_dat) in common when we use 250 Put ICU_DATA_ENTRY_POINT(icudtXX_dat) in common when we use
272 the icu data file or icudt.dll 251 the icu data file or icudt.dll
273 252
274 6. Apply a timezone detection API fix 253 5. Add back UTF-32 converters temporarily even when
275 - patches/tzdetect.patch
276 - upstream bugs
277 http://bugs.icu-project.org/trac/ticket/11623
278
279 7. Fix 'bad cast' found in Transliterator with a cfi build
280 - patches/xlit_badcast.patch
281 - upstream bug (fixed in the upstream. Will be in ICU 57 release)
282 http://bugs.icu-project.org/trac/ticket/11937
283
284 8. Add back UTF-32 converters temporarily even when
285 UCONFIG_ONLY_HTML_CONVERSION is defined until UTF-32 is 254 UCONFIG_ONLY_HTML_CONVERSION is defined until UTF-32 is
286 removed from Blink. See 255 removed from Blink. See
287 http://www.icu-project.org/trac/ticket/11296 and 256 http://www.icu-project.org/trac/ticket/11296 and
288 http://crbug.com/417850 257 http://crbug.com/417850
289 258
290 - patches/utf32.patch 259 - patches/utf32.patch
291 260
292 9. Fix a UText bug found in uregex_open fuzzer. 261 6. Fix two bugs found in 58.1 that will fixed in 58.1 maintenance release
293 - patches/utext.patch
294 - upstream bug (fixed in trunk in Jan, 2016. Will be in ICU 57 release)
295 http://bugs.icu-project.org/trac/ticket/12130
296 262
297 10. Fix a bug in regex compiler. 263 upstream bugs:
298 - patches/regexcmp.patch 264 http://www.icu-project.org/trac/ticket/12825 (scriptset)
299 - upstream bug (fixed in the upstream. Will be in ICU 57 release) 265 http://www.icu-project.org/trac/ticket/12822 (without std::string on Win)
300 http://bugs.icu-project.org/trac/ticket/12138
301 266
302 11. Remove an unnecessary static initializer 267 - patches/scriptset.patch
303 - patches/remove_si.patch 268 - patches/digilist.patch
304 - upstream bug (fixed in trunk. Will be in ICU 57 release)
305 http://bugs.icu-project.org/trac/ticket/12408
306
307 12. Cherry pick locale data fixes from the upstream and Android
308 - patches/locale_extra.patch
309 - upstream bugs
310 http://unicode.org/cldr/trac/ticket/9045 (en-AU date format)
311 http://unicode.org/cldr/trac/ticket/7969 (percent sign in ar and fa)
312 - Android patch for the 2nd bug
313 https://android.googlesource.com/platform/external/icu/+/56b2b8b
314
315 13. Add Emoji properties support by cherry-picking from 57.1
316 - patches/emoji_props.patch
317 - Upstream change cherry-picked
318 http://bugs.icu-project.org/trac/changeset/38183
319 - source/data/in/{pnames,uprops}.icu were copied from the upstream,
320 but they're just for the record. Their contents are hard-coded
321 in the source files patched by the above patch.
OLDNEW
« no previous file with comments | « BUILD.gn ('k') | READ_THIS_FIRST » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698