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 127 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
138 | 138 |
139 - patches/wpo.patch | 139 - patches/wpo.patch |
140 Upstream bugs : http://bugs.icu-project.org/trac/ticket/8043 | 140 Upstream bugs : http://bugs.icu-project.org/trac/ticket/8043 |
141 http://bugs.icu-project.org/trac/ticket/5701 | 141 http://bugs.icu-project.org/trac/ticket/5701 |
142 - patches/vscomp.patch for building with Visual Studio on Windows. | 142 - patches/vscomp.patch for building with Visual Studio on Windows. |
143 a. do not use WINDOWS_LOCALE_API in locmap.c | 143 a. do not use WINDOWS_LOCALE_API in locmap.c |
144 b. do not redefine stringpiece::npos | 144 b. do not redefine stringpiece::npos |
145 - patches/data.build.patch : | 145 - patches/data.build.patch : |
146 Remove unnecessary resources : invuca, unames, collator source, stringprep | 146 Remove unnecessary resources : invuca, unames, collator source, stringprep |
147 - patches/data.build.win.patch : | 147 - patches/data.build.win.patch : |
148 Windows-only data build patch. Add a new target DATALIB to makedata.mak | 148 Windows-only data build patch. |
149 - add an empty file (stubdatabuilt.txt) to source/stubdata | |
150 | 149 |
151 9. Pre-built data files are checked in with the following steps on Linux: | 150 9. Pre-built data files are checked in with the following steps on Linux: |
152 | 151 |
153 a. Make a icu data build directory outside the Chromium source tree | 152 a. Make a icu data build directory outside the Chromium source tree |
154 and cd to that directory. | 153 and cd to that directory. |
155 b. Run | 154 b. Run |
156 | 155 |
157 ${CHROME_ICU_TREE_TOP}/source/runConfigureICU Linux --disable-layout | 156 ${CHROME_ICU_TREE_TOP}/source/runConfigureICU Linux --disable-layout |
158 | 157 |
159 c. Run 'make' | 158 c. Run 'make' |
160 d. 'make' will fail in the 1st pass. Copy | 159 d. 'make' will fail in the 1st pass. Copy |
161 ${CHROME_ICU_TREE_TOP}/source/data/in/coll/invuca.icu | 160 ${CHROME_ICU_TREE_TOP}/source/data/in/coll/invuca.icu |
162 to {BUILD_DIR_ROOT}/data/out/build/icudt52l/coll and re-run 'make' | 161 to {BUILD_DIR_ROOT}/data/out/build/icudt52l/coll and re-run 'make' |
163 in {BUILD_DIR_ROOT}/data. | 162 in {BUILD_DIR_ROOT}/data. |
164 | 163 |
165 e. 'make' will fail again when pkgdata looks for css3transform.res. Edit | 164 e. 'make' will fail again when pkgdata looks for css3transform.res. Edit |
166 data/out/tmp/icudata.lst to replace 'css3transform.res' with 'root.res'. | 165 data/out/tmp/icudata.lst to replace 'css3transform.res' with 'root.res'. |
167 (see http://bugs.icu-project.org/trac/ticket/10570 ) and run 'make' again. | 166 (see http://bugs.icu-project.org/trac/ticket/10570 ) and run 'make' again. |
168 | 167 |
169 | 168 |
170 - source/data/in/icudtl.dat : Built on Linux with all the patches | 169 - source/data/in/icudtl.dat : Built on Linux with all the patches |
171 above applied. icudt52l.dat is generated in | 170 above applied. icudt52l.dat is generated in |
172 {BUILD_DIR_ROOT}/data/out/tmp and copied to the above location with a | 171 {BUILD_DIR_ROOT}/data/out/tmp and copied to the above location with a |
173 version number (52) dropped. | 172 version number (52) dropped. |
174 | 173 |
175 - windows/icudt.dll : With icudt52l.dat in place, all the patches applied | |
176 and header files moved (#11 below), generated by building icudt_build | |
177 project of build/icudt_build.sln on Windows. icudt52.dll is | |
178 generated in bin/{Release,Debug} and copied to windows/icudt.dll | |
179 and checked in. Note that we drop the version number ('52') from the | |
180 dll name to avoind having to update our build scripts/configuration | |
181 files everytime ICU is upgraded to a new version. | |
182 | 174 |
183 - {mac,linux}/icudtl_dat.S : Built on Linux with all the | 175 - {mac,linux}/icudtl_dat.S : Built on Linux with all the |
184 patches above (except android/brkitr.patch) applied and checked in. | 176 patches above (except android/brkitr.patch) applied and checked in. |
185 This file will be generated in {BUILD_DIR_ROOT}/data/out/tmp as | 177 This file will be generated in {BUILD_DIR_ROOT}/data/out/tmp as |
186 icudt52l_dat.S, but '52' is dropped while copying. | 178 icudt52l_dat.S, but '52' is dropped while copying. |
187 | 179 |
188 mac/icudtl_dat.S is identical to linux/icudtl_dat.S. It's made | 180 mac/icudtl_dat.S is identical to linux/icudtl_dat.S except for |
189 by changing the header portion of the Linux version to read as following | 181 the header portion. With "linux/icudtl_dat.S" in its place, |
190 (no leading whitespace) : | 182 run scripts/make_mac_assembly.sh to generate it. |
191 | |
192 .globl _icudt52_dat | |
193 #ifdef U_HIDE_DATA_SYMBOL | |
194 .private_extern _icudt52_dat | |
195 #endif | |
196 .data | |
197 .const | |
198 .align 4 | |
199 _icudt52_dat: | |
200 | |
201 | 183 |
202 - android/icudtl_dat.S : Built on Linux with all the patches above and | 184 - android/icudtl_dat.S : Built on Linux with all the patches above and |
203 android/brkitr.patch applied and android/patch_locale.sh executed. | 185 android/brkitr.patch applied and android/patch_locale.sh executed. |
204 '52' is dropped from the name generated in the build tree. | 186 '52' is dropped from the name generated in the build tree. |
205 | 187 |
206 - android/icudtl.dat : Generated as icudt52l.dat in | 188 - android/icudtl.dat : Generated as icudt52l.dat in |
207 {BUILD_DIR_ROOT}/data/out/tmp along with icudt52l_dat.S and | 189 {BUILD_DIR_ROOT}/data/out/tmp along with icudt52l_dat.S and |
208 copied to the above location with '52' dropped in its name. | 190 copied to the above location with '52' dropped in its name. |
209 | 191 |
| 192 - windows/icudt.dll (by default, we set icu_use_icu_data_flag to 1 |
| 193 and don't use this file.) |
| 194 |
| 195 a. check out a clean copy of icu52 from the upstream on Windows |
| 196 outside the Chrome tree. |
| 197 |
| 198 $ svn export --native-eol LF http://source.icu-project.org/repos/icu/icu
/tags/release-52-1 ${SEPARATE_ICU_ROOT}/icu52 |
| 199 |
| 200 b. copy ${CHROME_ICU_ROOT}/source/data/in/icudtl.dat to |
| 201 ${SEPARATE_ICU_ROOT}/source/data/in/icudt52l.dat |
| 202 c. copy ${CHROME_ICU_ROOT}/source/data/makedata.mak to |
| 203 ${SEPARATE_ICU_ROOT}/source/data/makedata.mak |
| 204 c. In Visual Studio, open source/allinone/allinone.sln solution |
| 205 in ${SEPARATE_ICU_ROOT} |
| 206 d. Build 'makedata' target |
| 207 e. icudt52.dll will be generated in ${SEPARATE_ICU_ROOT}/bin |
| 208 f. Copy that icudt52.dll to ${CHROME_ICU_ROOT}/windows/icudt.dll |
| 209 and check that in. |
| 210 |
210 | 211 |
211 10. Change export of U_ICUDATA_ENTRY_POINT from U_IMPORT to U_EXPORT. | 212 10. Change export of U_ICUDATA_ENTRY_POINT from U_IMPORT to U_EXPORT. |
212 - patches/declspec.patch | 213 - patches/declspec.patch |
OLD | NEW |