OLD | NEW |
1 Name: icu | 1 Name: icu |
2 URL: http://site.icu-project.org/ | 2 URL: http://site.icu-project.org/ |
3 Version: 52.1 | 3 Version: 52.1 |
4 License: MIT | 4 License: MIT |
5 Security Critical: yes | 5 Security Critical: yes |
6 | 6 |
7 Description: | 7 Description: |
8 This directory contains the source code of ICU 52.1 for C/C++ | 8 This directory contains the source code of ICU 52.1 for C/C++ |
9 | 9 |
10 1. It was obtained with the following: | 10 1. It was obtained with the following: |
(...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
91 for Chrome's UI languages and the minimum locale data for other locales, | 91 for Chrome's UI languages and the minimum locale data for other locales, |
92 add reslocal.mk or {trns,sprep,rbnf,coll}local.mk files to | 92 add reslocal.mk or {trns,sprep,rbnf,coll}local.mk files to |
93 source/data/{coll,curr,lang.locale,curr,region,translit,zone,rbnf,sprep}. | 93 source/data/{coll,curr,lang.locale,curr,region,translit,zone,rbnf,sprep}. |
94 | 94 |
95 - Run scripts/trimdata.sh | 95 - Run scripts/trimdata.sh |
96 a. Trim the locale data for Chrome's UI langauges : | 96 a. Trim the locale data for Chrome's UI langauges : |
97 locales, lang, region, currency | 97 locales, lang, region, currency |
98 b. Trim the locale data for non-UI languages to the bare minimum : | 98 b. Trim the locale data for non-UI languages to the bare minimum : |
99 ExemplarCharacters, LocaleScript, layout, and the name of the | 99 ExemplarCharacters, LocaleScript, layout, and the name of the |
100 language for a locale in its native language. | 100 language for a locale in its native language. |
| 101 c. Remove the legacy Chinese character set-based collation |
| 102 (big5han/gb2312han) that don't make any sense and nobdoy uses. |
101 | 103 |
102 - android/patch_locale.sh (to be run for Android build only): | 104 - android/patch_locale.sh (to be run for Android build only): |
103 Makes changes to source/data/{curr,region,lang} to exclude these data | 105 Makes changes to source/data/{curr,region,lang} to exclude these data |
104 except the language and script names of zh_Hans and zh_Hant. | 106 except the language and script names of zh_Hans and zh_Hant. |
105 | 107 |
106 - Add tg.txt to source/data/locale source/data/lang to add the minimal locale | 108 - Add tg.txt to source/data/locale source/data/lang to add the minimal locale |
107 data necessary for the spellchecker. In both directories, add tg.txt to | 109 data necessary for the spellchecker. In both directories, add tg.txt to |
108 reslocal.mk | 110 reslocal.mk |
109 | 111 |
110 6. Removal of unihan collation tables from data/coll/{zh,ja,ko}.txt | 112 6. Timezone data update |
111 | |
112 - run scripts/remove_unihan.sh | |
113 unihan collation tables are never used in Chrome/Blink, but it takes | |
114 about 1MB in the uncompressed ICU data file in ICU. | |
115 | |
116 7. Timezone data update | |
117 - Grab the latest version of the following timezone data files and | 113 - Grab the latest version of the following timezone data files and |
118 put them in source/data/misc. | 114 put them in source/data/misc. |
119 | 115 |
120 metaZones.txt | 116 metaZones.txt |
121 timezoneTypes.txt | 117 timezoneTypes.txt |
122 windowsZones.txt | 118 windowsZones.txt |
123 zoneinfo64.txt | 119 zoneinfo64.txt |
124 | 120 |
125 As of April 2014, the latest version is 2014b and the above files | 121 As of April 2014, the latest version is 2014b and the above files |
126 are available at | 122 are available at |
127 http://source.icu-project.org/repos/icu/data/trunk/tzdata/icunew/2014b/44/ | 123 http://source.icu-project.org/repos/icu/data/trunk/tzdata/icunew/2014b/44/ |
128 | 124 |
129 8. Transliterator customization | 125 7. Transliterator customization |
130 | 126 |
131 - Also add css3transform.txt to source/data/trnslit. | 127 - Also add css3transform.txt to source/data/trnslit. |
132 - Put the following line in trnslocal.mk | 128 - Put the following line in trnslocal.mk |
133 | 129 |
134 TRANSLIT_SOURCE=css3transform.txt | 130 TRANSLIT_SOURCE=css3transform.txt |
135 | 131 |
136 9. Build-related changes | 132 8. Build-related changes |
137 | 133 |
138 - patches/wpo.patch | 134 - patches/wpo.patch |
139 Upstream bugs : http://bugs.icu-project.org/trac/ticket/8043 | 135 Upstream bugs : http://bugs.icu-project.org/trac/ticket/8043 |
140 http://bugs.icu-project.org/trac/ticket/5701 | 136 http://bugs.icu-project.org/trac/ticket/5701 |
141 - patches/vscomp.patch for building with Visual Studio on Windows. | 137 - patches/vscomp.patch for building with Visual Studio on Windows. |
142 a. do not use WINDOWS_LOCALE_API in locmap.c | 138 a. do not use WINDOWS_LOCALE_API in locmap.c |
143 b. do not redefine stringpiece::npos | 139 b. do not redefine stringpiece::npos |
144 - patches/data.build.patch : | 140 - patches/data.build.patch : |
145 Remove unnecessary resources : invuca, unames, collator source, stringprep | 141 Remove unnecessary resources : invuca, unames, collator source, stringprep |
146 - patches/data.build.win.patch : | 142 - patches/data.build.win.patch : |
147 Windows-only data build patch. Add a new target DATALIB to makedata.mak | 143 Windows-only data build patch. Add a new target DATALIB to makedata.mak |
148 - add an empty file (stubdatabuilt.txt) to source/stubdata | 144 - add an empty file (stubdatabuilt.txt) to source/stubdata |
149 | 145 |
150 10. Pre-built data files are checked in with the following steps on Linux: | 146 9. Pre-built data files are checked in with the following steps on Linux: |
151 | 147 |
152 a. Make a icu data build directory outside the Chromium source tree. | 148 a. Make a icu data build directory outside the Chromium source tree. |
153 b. Run 'runConfigureICU Linux' outside the source tree. | 149 b. Run 'runConfigureICU Linux' outside the source tree. |
154 c. Run 'make' | 150 c. Run 'make' |
155 d. 'make' will fail in the 1st pass. Copy source/data/in/coll/invuca.icu | 151 d. 'make' will fail in the 1st pass. Copy source/data/in/coll/invuca.icu |
156 to {BUILD_DIR_ROOT}/data/out/build/icudt52l/coll and re-run 'make' | 152 to {BUILD_DIR_ROOT}/data/out/build/icudt52l/coll and re-run 'make' |
157 in {BUILD_DIR_ROOT}/data. | 153 in {BUILD_DIR_ROOT}/data. |
158 | 154 |
159 e. 'make' will fail again when pkgdata looks for css3transform.res. Edit | 155 e. 'make' will fail again when pkgdata looks for css3transform.res. Edit |
160 data/out/tmp/icudata.lst to replace 'css3transform.res' with 'root.res'. | 156 data/out/tmp/icudata.lst to replace 'css3transform.res' with 'root.res'. |
161 (see http://bugs.icu-project.org/trac/ticket/10570 ) and run 'make' again. | 157 (see http://bugs.icu-project.org/trac/ticket/10570 ) and run 'make' again. |
162 | 158 |
163 | 159 |
164 - source/data/in/icudtl.dat : Built on Linux with all the patches | 160 - source/data/in/icudtl.dat : Built on Linux with all the patches |
165 above applied. icudt52l.dat is generated in | 161 above applied. icudt52l.dat is generated in |
166 {BUILD_DIR_ROOT}/data/out/tmp and copied to the above location with a | 162 {BUILD_DIR_ROOT}/data/out/tmp and copied to the above location with a |
167 version number (52) dropped. | 163 version number (52) dropped. |
168 | 164 |
169 - windows/icudt.dll : With icudt52l.dat in place, all the patches applied | 165 - windows/icudt.dll : With icudt52l.dat in place, all the patches applied |
170 and header files moved (#11 below), generated by building icudt_build | 166 and header files moved (#11 below), generated by building icudt_build |
171 project of build/icudt_build.sln on Windows. icudt52.dll is | 167 project of build/icudt_build.sln on Windows. icudt52.dll is |
172 generated in bin/{Release,Debug} and copied to windows/icudt.dll | 168 generated in bin/{Release,Debug} and copied to windows/icudt.dll |
173 and checked in. Note that we drop the version number ('52') from the | 169 and checked in. Note that we drop the version number ('52') from the |
174 dll name to avoind having to update our build scripts/configuration | 170 dll name to avoind having to update our build scripts/configuration |
175 files everytime ICU is upgraded to a new version. | 171 files everytime ICU is upgraded to a new version. |
176 | 172 |
177 - {mac,linux}/icudt52l_dat.S : Built on Linux with all the | 173 - {mac,linux}/icudtl_dat.S : Built on Linux with all the |
178 patches above (except android/brkitr.patch) applied and checked in. | 174 patches above (except android/brkitr.patch) applied and checked in. |
179 This file will be generated in {BUILD_DIR_ROOT}/data/out/tmp. | 175 This file will be generated in {BUILD_DIR_ROOT}/data/out/tmp as |
| 176 icudt52l_dat.S, but '52' is dropped while copying. |
180 | 177 |
181 mac/icudt52l_dat.S is identical to linux/icudt52l_dat.S. It's made | 178 mac/icudtl_dat.S is identical to linux/icudtl_dat.S. It's made |
182 by changing the header portion of the Linux version to read as following | 179 by changing the header portion of the Linux version to read as following |
183 (no leading whitespace) : | 180 (no leading whitespace) : |
184 | 181 |
185 .globl _icudt52_dat | 182 .globl _icudt52_dat |
186 #ifdef U_HIDE_DATA_SYMBOL | 183 #ifdef U_HIDE_DATA_SYMBOL |
187 .private_extern _icudt52_dat | 184 .private_extern _icudt52_dat |
188 #endif | 185 #endif |
189 .data | 186 .data |
190 .const | 187 .const |
191 .align 4 | 188 .align 4 |
192 _icudt52_dat: | 189 _icudt52_dat: |
193 | 190 |
194 | 191 |
195 - android/icudt52l_dat.S : Built on Linux with all the patches above and | 192 - android/icudtl_dat.S : Built on Linux with all the patches above and |
196 android/brkitr.patch applied and android/patch_locale.sh executed, and | 193 android/brkitr.patch applied and android/patch_locale.sh executed. |
197 checked in. | 194 '52' is dropped from the name generated in the build tree. |
| 195 |
198 - android/icudtl.dat : Generated as icudt52l.dat in | 196 - android/icudtl.dat : Generated as icudt52l.dat in |
199 {BUILD_DIR_ROOT}/data/out/tmp along with icudt52l_dat.S and | 197 {BUILD_DIR_ROOT}/data/out/tmp along with icudt52l_dat.S and |
200 copied to the above location with '52' dropped in its name. | 198 copied to the above location with '52' dropped in its name. |
201 | 199 |
202 | 200 |
203 11. Change export of U_ICUDATA_ENTRY_POINT from U_IMPORT to U_EXPORT. | 201 10. Change export of U_ICUDATA_ENTRY_POINT from U_IMPORT to U_EXPORT. |
204 - patches/declspec.patch | 202 - patches/declspec.patch |
OLD | NEW |