jshin@chromium.org | b564840 | 2014-04-01 20:51:44 +0000 | [diff] [blame] | 1 | # Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 | # Use of this source code is governed by a BSD-style license that can be |
| 3 | # found in the LICENSE file. |
| 4 | |
| 5 | { |
| 6 | 'includes': [ |
| 7 | 'icu.gypi', |
| 8 | ], |
| 9 | 'variables': { |
| 10 | 'use_system_icu%': 0, |
| 11 | 'icu_use_data_file_flag%': 0, |
| 12 | 'want_separate_host_toolset%': 1, |
| 13 | }, |
| 14 | 'target_defaults': { |
| 15 | 'direct_dependent_settings': { |
| 16 | 'defines': [ |
| 17 | # Tell ICU to not insert |using namespace icu;| into its headers, |
| 18 | # so that chrome's source explicitly has to use |icu::|. |
| 19 | 'U_USING_ICU_NAMESPACE=0', |
jshin@chromium.org | 51fac8a | 2014-04-30 22:25:11 +0000 | [diff] [blame] | 20 | # We don't use ICU plugins and dyload is only necessary for them. |
| 21 | # NaCl-related builds also fail looking for dlfcn.h when it's enabled. |
| 22 | 'U_ENABLE_DYLOAD=0', |
jshin@chromium.org | b564840 | 2014-04-01 20:51:44 +0000 | [diff] [blame] | 23 | ], |
| 24 | }, |
| 25 | 'defines': [ |
| 26 | 'U_USING_ICU_NAMESPACE=0', |
| 27 | 'HAVE_DLOPEN=0', |
| 28 | ], |
| 29 | 'conditions': [ |
| 30 | ['component=="static_library"', { |
| 31 | 'defines': [ |
| 32 | 'U_STATIC_IMPLEMENTATION', |
| 33 | ], |
| 34 | }], |
| 35 | ['(OS=="linux" or OS=="freebsd" or OS=="openbsd" or OS=="solaris" \ |
| 36 | or OS=="netbsd" or OS=="mac" or OS=="android" or OS=="qnx") and \ |
| 37 | (target_arch=="arm" or target_arch=="ia32" or \ |
| 38 | target_arch=="mipsel")', { |
| 39 | 'target_conditions': [ |
| 40 | ['_toolset=="host"', { |
| 41 | 'cflags': [ '-m32' ], |
| 42 | 'ldflags': [ '-m32' ], |
| 43 | 'asflags': [ '-32' ], |
| 44 | 'xcode_settings': { |
| 45 | 'ARCHS': [ 'i386' ], |
| 46 | }, |
| 47 | }], |
| 48 | ], |
| 49 | }], |
jshin@chromium.org | 87a2c3f | 2014-04-30 08:59:20 +0000 | [diff] [blame] | 50 | ['(OS=="linux" or OS=="freebsd" or OS=="openbsd" or OS=="solaris" \ |
| 51 | or OS=="netbsd" or OS=="mac" or OS=="android" or OS=="qnx") and \ |
| 52 | (target_arch=="arm64" or target_arch=="x64" or \ |
| 53 | target_arch=="mipsel64")', { |
| 54 | 'target_conditions': [ |
| 55 | ['_toolset=="host"', { |
| 56 | 'cflags': [ '-m64' ], |
| 57 | 'ldflags': [ '-m64' ], |
| 58 | 'asflags': [ '-64' ], |
| 59 | 'xcode_settings': { |
| 60 | 'ARCHS': [ 'x86_64' ], |
| 61 | }, |
| 62 | }], |
| 63 | ], |
| 64 | }], |
jshin@chromium.org | b564840 | 2014-04-01 20:51:44 +0000 | [diff] [blame] | 65 | ], |
| 66 | 'include_dirs': [ |
| 67 | 'source/common', |
| 68 | 'source/i18n', |
| 69 | ], |
| 70 | 'msvs_disabled_warnings': [4005, 4068, 4355, 4996, 4267], |
| 71 | }, |
| 72 | 'conditions': [ |
| 73 | ['use_system_icu==0 or want_separate_host_toolset==1', { |
| 74 | 'targets': [ |
| 75 | { |
jshin@chromium.org | dab7f1f | 2014-06-10 00:57:27 +0000 | [diff] [blame] | 76 | 'target_name': 'copy_icudtl_dat', |
| 77 | 'type': 'none', |
| 78 | # icudtl.dat is the same for both host/target, so this only supports a |
| 79 | # single toolset. If a target requires that the .dat file be copied |
| 80 | # to the output directory, it should explicitly depend on this target |
| 81 | # with the host toolset (like copy_icudtl_dat#host). |
| 82 | 'toolsets': [ 'host' ], |
| 83 | 'copies': [{ |
| 84 | 'destination': '<(PRODUCT_DIR)', |
| 85 | 'conditions': [ |
| 86 | ['OS == "android"', { |
| 87 | 'files': [ |
| 88 | 'android/icudtl.dat', |
| 89 | ], |
| 90 | } , { # else: OS != android |
| 91 | 'files': [ |
| 92 | 'source/data/in/icudtl.dat', |
| 93 | ], |
| 94 | }], |
| 95 | ], |
| 96 | }], |
| 97 | }, |
| 98 | { |
jshin@chromium.org | b564840 | 2014-04-01 20:51:44 +0000 | [diff] [blame] | 99 | 'target_name': 'icudata', |
| 100 | 'type': 'static_library', |
| 101 | 'defines': [ |
| 102 | 'U_HIDE_DATA_SYMBOL', |
| 103 | ], |
| 104 | 'sources': [ |
| 105 | # These are hand-generated, but will do for now. The linux |
jshin@chromium.org | 4e49326 | 2014-04-18 17:35:23 +0000 | [diff] [blame] | 106 | # version is an identical copy of the (mac) icudtl_dat.S file, |
jshin@chromium.org | b564840 | 2014-04-01 20:51:44 +0000 | [diff] [blame] | 107 | # modulo removal of the .private_extern and .const directives and |
| 108 | # with no leading underscore on the icudt52_dat symbol. |
jshin@chromium.org | 4e49326 | 2014-04-18 17:35:23 +0000 | [diff] [blame] | 109 | 'android/icudtl_dat.S', |
| 110 | 'linux/icudtl_dat.S', |
| 111 | 'mac/icudtl_dat.S', |
jshin@chromium.org | b564840 | 2014-04-01 20:51:44 +0000 | [diff] [blame] | 112 | ], |
| 113 | 'conditions': [ |
| 114 | [ 'use_system_icu==1 and want_separate_host_toolset==1', { |
| 115 | 'toolsets': ['host'], |
| 116 | }], |
| 117 | [ 'use_system_icu==0 and want_separate_host_toolset==1', { |
| 118 | 'toolsets': ['host', 'target'], |
| 119 | }], |
| 120 | [ 'use_system_icu==0 and want_separate_host_toolset==0', { |
| 121 | 'toolsets': ['target'], |
| 122 | }], |
| 123 | [ 'OS == "win" and icu_use_data_file_flag==0', { |
| 124 | 'type': 'none', |
| 125 | 'copies': [ |
| 126 | { |
| 127 | 'destination': '<(PRODUCT_DIR)', |
| 128 | 'files': [ |
| 129 | 'windows/icudt.dll', |
| 130 | ], |
| 131 | }, |
| 132 | ], |
| 133 | }], |
| 134 | [ 'icu_use_data_file_flag==1', { |
| 135 | # Remove any assembly data file. |
jshin@chromium.org | 4e49326 | 2014-04-18 17:35:23 +0000 | [diff] [blame] | 136 | 'sources/': [['exclude', 'icudtl_dat']], |
jshin@chromium.org | b564840 | 2014-04-01 20:51:44 +0000 | [diff] [blame] | 137 | # Compile in the stub data symbol. |
| 138 | 'sources': ['source/stubdata/stubdata.c'], |
jshin@chromium.org | 87a2c3f | 2014-04-30 08:59:20 +0000 | [diff] [blame] | 139 | |
jshin@chromium.org | b564840 | 2014-04-01 20:51:44 +0000 | [diff] [blame] | 140 | # Make sure any binary depending on this gets the data file. |
| 141 | 'conditions': [ |
| 142 | ['OS != "ios"', { |
jshin@chromium.org | dab7f1f | 2014-06-10 00:57:27 +0000 | [diff] [blame] | 143 | 'dependencies': [ |
| 144 | 'copy_icudtl_dat#host', |
| 145 | ], |
jshin@chromium.org | b564840 | 2014-04-01 20:51:44 +0000 | [diff] [blame] | 146 | } , { # else: OS=="ios" |
| 147 | 'link_settings': { |
| 148 | 'mac_bundle_resources': [ |
| 149 | 'source/data/in/icudtl.dat', |
| 150 | ], |
| 151 | }, |
| 152 | }], # OS!=ios |
| 153 | ], # conditions |
jshin@chromium.org | 87a2c3f | 2014-04-30 08:59:20 +0000 | [diff] [blame] | 154 | }], # icu_use_data_file_flag |
jshin@chromium.org | b564840 | 2014-04-01 20:51:44 +0000 | [diff] [blame] | 155 | ], # conditions |
| 156 | 'target_conditions': [ |
| 157 | [ 'OS == "win" or OS == "mac" or OS == "ios" or ' |
| 158 | '(OS == "android" and (_toolset != "host" or host_os != "linux")) or ' |
| 159 | '(OS == "qnx" and (_toolset == "host" and host_os != "linux"))', { |
jshin@chromium.org | 4e49326 | 2014-04-18 17:35:23 +0000 | [diff] [blame] | 160 | 'sources!': ['linux/icudtl_dat.S'], |
jshin@chromium.org | b564840 | 2014-04-01 20:51:44 +0000 | [diff] [blame] | 161 | }], |
| 162 | [ 'OS != "android" or _toolset == "host"', { |
jshin@chromium.org | 4e49326 | 2014-04-18 17:35:23 +0000 | [diff] [blame] | 163 | 'sources!': ['android/icudtl_dat.S'], |
jshin@chromium.org | b564840 | 2014-04-01 20:51:44 +0000 | [diff] [blame] | 164 | }], |
| 165 | [ 'OS != "mac" and OS != "ios" and ' |
| 166 | '((OS != "android" and OS != "qnx") or ' |
| 167 | '_toolset != "host" or host_os != "mac")', { |
jshin@chromium.org | 4e49326 | 2014-04-18 17:35:23 +0000 | [diff] [blame] | 168 | 'sources!': ['mac/icudtl_dat.S'], |
jshin@chromium.org | b564840 | 2014-04-01 20:51:44 +0000 | [diff] [blame] | 169 | }], |
| 170 | ], # target_conditions |
| 171 | }, |
| 172 | { |
| 173 | 'target_name': 'icui18n', |
| 174 | 'type': '<(component)', |
| 175 | 'sources': [ |
| 176 | '<@(icui18n_sources)', |
| 177 | ], |
| 178 | 'defines': [ |
| 179 | 'U_I18N_IMPLEMENTATION', |
| 180 | ], |
| 181 | 'dependencies': [ |
| 182 | 'icuuc', |
| 183 | ], |
| 184 | 'direct_dependent_settings': { |
| 185 | 'include_dirs': [ |
| 186 | 'source/i18n', |
| 187 | ], |
| 188 | }, |
thakis@chromium.org | 471c37c | 2014-08-01 23:52:52 +0000 | [diff] [blame] | 189 | 'variables': { |
| 190 | 'clang_warning_flags': [ |
| 191 | # ICU uses its own deprecated functions. |
| 192 | '-Wno-deprecated-declarations', |
| 193 | # ICU prefers `a && b || c` over `(a && b) || c`. |
| 194 | '-Wno-logical-op-parentheses', |
| 195 | # ICU has some `unsigned < 0` checks. |
| 196 | '-Wno-tautological-compare', |
| 197 | # Looks like a real issue, see http://crbug.com/114660 |
| 198 | '-Wno-return-type-c-linkage', |
| 199 | ], |
| 200 | }, |
jshin@chromium.org | b564840 | 2014-04-01 20:51:44 +0000 | [diff] [blame] | 201 | # Since ICU wants to internally use its own deprecated APIs, don't |
| 202 | # complain about it. |
| 203 | 'cflags': [ |
| 204 | '-Wno-deprecated-declarations', |
| 205 | ], |
| 206 | 'cflags_cc': [ |
| 207 | '-frtti', |
| 208 | ], |
| 209 | 'xcode_settings': { |
| 210 | 'GCC_ENABLE_CPP_RTTI': 'YES', # -frtti |
| 211 | }, |
| 212 | 'msvs_settings': { |
| 213 | 'VCCLCompilerTool': { |
| 214 | 'RuntimeTypeInfo': 'true', |
| 215 | }, |
| 216 | }, |
| 217 | 'conditions': [ |
| 218 | [ 'use_system_icu==1 and want_separate_host_toolset==1', { |
| 219 | 'toolsets': ['host'], |
| 220 | }], |
| 221 | [ 'use_system_icu==0 and want_separate_host_toolset==1', { |
| 222 | 'toolsets': ['host', 'target'], |
| 223 | }], |
| 224 | [ 'use_system_icu==0 and want_separate_host_toolset==0', { |
| 225 | 'toolsets': ['target'], |
| 226 | }], |
jshin@chromium.org | b564840 | 2014-04-01 20:51:44 +0000 | [diff] [blame] | 227 | ['OS == "android" and clang==0', { |
| 228 | # Disable sincos() optimization to avoid a linker error since |
| 229 | # Android's math library doesn't have sincos(). Either |
| 230 | # -fno-builtin-sin or -fno-builtin-cos works. |
| 231 | 'cflags': [ |
| 232 | '-fno-builtin-sin', |
| 233 | ], |
| 234 | }], |
thakis@chromium.org | 527ea2d | 2014-08-28 15:22:04 +0000 | [diff] [blame] | 235 | [ 'OS == "win" and clang==1', { |
| 236 | # Note: General clang warnings should go in the |
| 237 | # clang_warning_flags block above. |
| 238 | 'msvs_settings': { |
| 239 | 'VCCLCompilerTool': { |
| 240 | 'AdditionalOptions': [ |
| 241 | # See http://bugs.icu-project.org/trac/ticket/11122 |
| 242 | '-Wno-inline-new-delete', |
| 243 | '-Wno-implicit-exception-spec-mismatch', |
| 244 | ], |
| 245 | }, |
| 246 | }, |
| 247 | }], |
jshin@chromium.org | b564840 | 2014-04-01 20:51:44 +0000 | [diff] [blame] | 248 | ['OS == "android" and use_system_stlport == 1', { |
| 249 | 'target_conditions': [ |
| 250 | ['_toolset == "target"', { |
| 251 | # ICU requires RTTI, which is not present in the system's |
| 252 | # stlport, so we have to include gabi++. |
| 253 | 'include_dirs': [ |
| 254 | '<(android_src)/abi/cpp/include', |
| 255 | ], |
jshin@chromium.org | b564840 | 2014-04-01 20:51:44 +0000 | [diff] [blame] | 256 | }], |
| 257 | ], |
| 258 | }], |
| 259 | ], # conditions |
| 260 | }, |
| 261 | { |
| 262 | 'target_name': 'icuuc', |
| 263 | 'type': '<(component)', |
| 264 | 'sources': [ |
| 265 | '<@(icuuc_sources)', |
| 266 | ], |
| 267 | 'defines': [ |
| 268 | 'U_COMMON_IMPLEMENTATION', |
| 269 | ], |
| 270 | 'dependencies': [ |
| 271 | 'icudata', |
| 272 | ], |
| 273 | 'direct_dependent_settings': { |
| 274 | 'include_dirs': [ |
| 275 | 'source/common', |
| 276 | ], |
| 277 | 'conditions': [ |
| 278 | [ 'component=="static_library"', { |
| 279 | 'defines': [ |
| 280 | 'U_STATIC_IMPLEMENTATION', |
| 281 | ], |
| 282 | }], |
| 283 | ], |
| 284 | }, |
thakis@chromium.org | 471c37c | 2014-08-01 23:52:52 +0000 | [diff] [blame] | 285 | 'variables': { |
| 286 | 'clang_warning_flags': [ |
| 287 | # ICU uses its own deprecated functions. |
| 288 | '-Wno-deprecated-declarations', |
| 289 | # ICU prefers `a && b || c` over `(a && b) || c`. |
| 290 | '-Wno-logical-op-parentheses', |
| 291 | # ICU has some `unsigned < 0` checks. |
| 292 | '-Wno-tautological-compare', |
| 293 | # uresdata.c has switch(RES_GET_TYPE(x)) code. The |
| 294 | # RES_GET_TYPE macro returns an UResType enum, but some switch |
| 295 | # statement contains case values that aren't part of that |
| 296 | # enum (e.g. URES_TABLE32 which is in UResInternalType). This |
| 297 | # is on purpose. |
| 298 | '-Wno-switch', |
| 299 | ], |
| 300 | }, |
jshin@chromium.org | b564840 | 2014-04-01 20:51:44 +0000 | [diff] [blame] | 301 | 'cflags': [ |
| 302 | # Since ICU wants to internally use its own deprecated APIs, |
| 303 | # don't complain about it. |
| 304 | '-Wno-deprecated-declarations', |
| 305 | '-Wno-unused-function', |
| 306 | ], |
| 307 | 'cflags_cc': [ |
| 308 | '-frtti', |
| 309 | ], |
| 310 | 'xcode_settings': { |
| 311 | 'GCC_ENABLE_CPP_RTTI': 'YES', # -frtti |
| 312 | }, |
| 313 | 'msvs_settings': { |
| 314 | 'VCCLCompilerTool': { |
| 315 | 'RuntimeTypeInfo': 'true', |
| 316 | }, |
| 317 | }, |
jshin@chromium.org | 26d8859 | 2014-06-18 09:33:10 +0000 | [diff] [blame] | 318 | 'all_dependent_settings': { |
| 319 | 'msvs_settings': { |
| 320 | 'VCLinkerTool': { |
| 321 | 'AdditionalDependencies': [ |
| 322 | 'advapi32.lib', |
| 323 | ], |
| 324 | }, |
| 325 | }, |
| 326 | }, |
jshin@chromium.org | b564840 | 2014-04-01 20:51:44 +0000 | [diff] [blame] | 327 | 'conditions': [ |
| 328 | [ 'use_system_icu==1 and want_separate_host_toolset==1', { |
| 329 | 'toolsets': ['host'], |
| 330 | }], |
| 331 | [ 'use_system_icu==0 and want_separate_host_toolset==1', { |
| 332 | 'toolsets': ['host', 'target'], |
| 333 | }], |
| 334 | [ 'use_system_icu==0 and want_separate_host_toolset==0', { |
| 335 | 'toolsets': ['target'], |
| 336 | }], |
scottmg@chromium.org | fdf0bb3 | 2014-08-21 20:50:35 +0000 | [diff] [blame] | 337 | [ 'OS == "win" and icu_use_data_file_flag==0', { |
jshin@chromium.org | b564840 | 2014-04-01 20:51:44 +0000 | [diff] [blame] | 338 | 'sources': [ |
| 339 | 'source/stubdata/stubdata.c', |
| 340 | ], |
| 341 | }], |
thakis@chromium.org | 0433071 | 2014-08-28 00:00:23 +0000 | [diff] [blame] | 342 | [ 'OS == "win" and clang==1', { |
| 343 | # Note: General clang warnings should go in the |
| 344 | # clang_warning_flags block above. |
| 345 | 'msvs_settings': { |
| 346 | 'VCCLCompilerTool': { |
| 347 | 'AdditionalOptions': [ |
| 348 | # See http://bugs.icu-project.org/trac/ticket/11122 |
| 349 | '-Wno-inline-new-delete', |
| 350 | '-Wno-implicit-exception-spec-mismatch', |
| 351 | ], |
| 352 | }, |
| 353 | }, |
| 354 | }], |
jshin@chromium.org | b564840 | 2014-04-01 20:51:44 +0000 | [diff] [blame] | 355 | ['OS == "android" and use_system_stlport == 1', { |
| 356 | 'target_conditions': [ |
| 357 | ['_toolset == "target"', { |
| 358 | # ICU requires RTTI, which is not present in the system's |
| 359 | # stlport, so we have to include gabi++. |
| 360 | 'include_dirs': [ |
| 361 | '<(android_src)/abi/cpp/include', |
| 362 | ], |
jshin@chromium.org | b564840 | 2014-04-01 20:51:44 +0000 | [diff] [blame] | 363 | }], |
| 364 | ], |
| 365 | }], |
jshin@chromium.org | b564840 | 2014-04-01 20:51:44 +0000 | [diff] [blame] | 366 | ], # conditions |
| 367 | }, |
| 368 | ], # targets |
| 369 | }], |
| 370 | ['use_system_icu==1', { |
| 371 | 'targets': [ |
| 372 | { |
| 373 | 'target_name': 'system_icu', |
| 374 | 'type': 'none', |
| 375 | 'conditions': [ |
| 376 | ['OS=="android"', { |
| 377 | 'direct_dependent_settings': { |
| 378 | 'include_dirs': [ |
hjd@chromium.org | 95bfa85 | 2014-07-24 13:10:39 +0000 | [diff] [blame] | 379 | '<(android_src)/external/icu/icu4c/source/common', |
| 380 | '<(android_src)/external/icu/icu4c/source/i18n', |
jshin@chromium.org | b564840 | 2014-04-01 20:51:44 +0000 | [diff] [blame] | 381 | ], |
| 382 | }, |
| 383 | 'link_settings': { |
| 384 | 'libraries': [ |
| 385 | '-licui18n', |
| 386 | '-licuuc', |
| 387 | ], |
| 388 | }, |
| 389 | }], |
| 390 | ['OS=="qnx"', { |
| 391 | 'link_settings': { |
| 392 | 'libraries': [ |
| 393 | '-licui18n', |
| 394 | '-licuuc', |
| 395 | ], |
| 396 | }, |
| 397 | }], |
| 398 | ['OS!="android" and OS!="qnx"', { |
| 399 | 'link_settings': { |
| 400 | 'ldflags': [ |
| 401 | '<!@(icu-config --ldflags)', |
| 402 | ], |
| 403 | 'libraries': [ |
| 404 | '<!@(icu-config --ldflags-libsonly)', |
| 405 | ], |
| 406 | }, |
| 407 | }], |
| 408 | ], |
| 409 | }, |
| 410 | { |
| 411 | 'target_name': 'icudata', |
| 412 | 'type': 'none', |
| 413 | 'dependencies': ['system_icu'], |
| 414 | 'export_dependent_settings': ['system_icu'], |
| 415 | 'toolsets': ['target'], |
| 416 | }, |
| 417 | { |
| 418 | 'target_name': 'icui18n', |
| 419 | 'type': 'none', |
| 420 | 'dependencies': ['system_icu'], |
| 421 | 'export_dependent_settings': ['system_icu'], |
| 422 | 'variables': { |
| 423 | 'headers_root_path': 'source/i18n', |
| 424 | 'header_filenames': [ |
| 425 | # This list can easily be updated using the command below: |
| 426 | # find third_party/icu/source/i18n/unicode -iname '*.h' \ |
| 427 | # -printf "'%p',\n" | \ |
| 428 | # sed -e 's|third_party/icu/source/i18n/||' | sort -u |
| 429 | 'unicode/alphaindex.h', |
| 430 | 'unicode/basictz.h', |
| 431 | 'unicode/calendar.h', |
| 432 | 'unicode/choicfmt.h', |
| 433 | 'unicode/coleitr.h', |
| 434 | 'unicode/coll.h', |
| 435 | 'unicode/compactdecimalformat.h', |
| 436 | 'unicode/curramt.h', |
| 437 | 'unicode/currpinf.h', |
| 438 | 'unicode/currunit.h', |
| 439 | 'unicode/datefmt.h', |
| 440 | 'unicode/dcfmtsym.h', |
| 441 | 'unicode/decimfmt.h', |
| 442 | 'unicode/dtfmtsym.h', |
| 443 | 'unicode/dtitvfmt.h', |
| 444 | 'unicode/dtitvinf.h', |
| 445 | 'unicode/dtptngen.h', |
| 446 | 'unicode/dtrule.h', |
| 447 | 'unicode/fieldpos.h', |
| 448 | 'unicode/fmtable.h', |
| 449 | 'unicode/format.h', |
| 450 | 'unicode/fpositer.h', |
| 451 | 'unicode/gender.h', |
| 452 | 'unicode/gregocal.h', |
| 453 | 'unicode/locdspnm.h', |
| 454 | 'unicode/measfmt.h', |
| 455 | 'unicode/measunit.h', |
| 456 | 'unicode/measure.h', |
| 457 | 'unicode/msgfmt.h', |
| 458 | 'unicode/numfmt.h', |
| 459 | 'unicode/numsys.h', |
| 460 | 'unicode/plurfmt.h', |
| 461 | 'unicode/plurrule.h', |
| 462 | 'unicode/rbnf.h', |
| 463 | 'unicode/rbtz.h', |
| 464 | 'unicode/regex.h', |
| 465 | 'unicode/region.h', |
| 466 | 'unicode/search.h', |
| 467 | 'unicode/selfmt.h', |
| 468 | 'unicode/simpletz.h', |
| 469 | 'unicode/smpdtfmt.h', |
| 470 | 'unicode/sortkey.h', |
| 471 | 'unicode/stsearch.h', |
| 472 | 'unicode/tblcoll.h', |
| 473 | 'unicode/timezone.h', |
| 474 | 'unicode/tmunit.h', |
| 475 | 'unicode/tmutamt.h', |
| 476 | 'unicode/tmutfmt.h', |
| 477 | 'unicode/translit.h', |
| 478 | 'unicode/tzfmt.h', |
| 479 | 'unicode/tznames.h', |
| 480 | 'unicode/tzrule.h', |
| 481 | 'unicode/tztrans.h', |
| 482 | 'unicode/ucal.h', |
| 483 | 'unicode/ucoleitr.h', |
| 484 | 'unicode/ucol.h', |
| 485 | 'unicode/ucsdet.h', |
| 486 | 'unicode/ucurr.h', |
| 487 | 'unicode/udateintervalformat.h', |
| 488 | 'unicode/udat.h', |
| 489 | 'unicode/udatpg.h', |
| 490 | 'unicode/udisplaycontext.h', |
| 491 | 'unicode/uformattable.h', |
| 492 | 'unicode/ugender.h', |
| 493 | 'unicode/uldnames.h', |
| 494 | 'unicode/ulocdata.h', |
| 495 | 'unicode/umsg.h', |
| 496 | 'unicode/unirepl.h', |
| 497 | 'unicode/unum.h', |
| 498 | 'unicode/unumsys.h', |
| 499 | 'unicode/upluralrules.h', |
| 500 | 'unicode/uregex.h', |
| 501 | 'unicode/uregion.h', |
| 502 | 'unicode/usearch.h', |
| 503 | 'unicode/uspoof.h', |
| 504 | 'unicode/utmscale.h', |
| 505 | 'unicode/utrans.h', |
| 506 | 'unicode/vtzone.h', |
| 507 | ], |
| 508 | }, |
| 509 | 'includes': [ |
| 510 | '../../build/shim_headers.gypi', |
| 511 | ], |
| 512 | 'toolsets': ['target'], |
| 513 | }, |
| 514 | { |
| 515 | 'target_name': 'icuuc', |
| 516 | 'type': 'none', |
| 517 | 'dependencies': ['system_icu'], |
| 518 | 'export_dependent_settings': ['system_icu'], |
| 519 | 'variables': { |
| 520 | 'headers_root_path': 'source/common', |
| 521 | 'header_filenames': [ |
| 522 | # This list can easily be updated using the command below: |
| 523 | # find third_party/icu/source/common/unicode -iname '*.h' \ |
| 524 | # -printf "'%p',\n" | \ |
| 525 | # sed -e 's|third_party/icu/source/common/||' | sort -u |
| 526 | 'unicode/appendable.h', |
| 527 | 'unicode/brkiter.h', |
| 528 | 'unicode/bytestream.h', |
| 529 | 'unicode/bytestriebuilder.h', |
| 530 | 'unicode/bytestrie.h', |
| 531 | 'unicode/caniter.h', |
| 532 | 'unicode/chariter.h', |
| 533 | 'unicode/dbbi.h', |
| 534 | 'unicode/docmain.h', |
| 535 | 'unicode/dtintrv.h', |
| 536 | 'unicode/enumset.h', |
| 537 | 'unicode/errorcode.h', |
| 538 | 'unicode/icudataver.h', |
| 539 | 'unicode/icuplug.h', |
| 540 | 'unicode/idna.h', |
| 541 | 'unicode/listformatter.h', |
| 542 | 'unicode/localpointer.h', |
| 543 | 'unicode/locid.h', |
| 544 | 'unicode/messagepattern.h', |
| 545 | 'unicode/normalizer2.h', |
| 546 | 'unicode/normlzr.h', |
| 547 | 'unicode/parseerr.h', |
| 548 | 'unicode/parsepos.h', |
| 549 | 'unicode/platform.h', |
| 550 | 'unicode/ptypes.h', |
| 551 | 'unicode/putil.h', |
| 552 | 'unicode/rbbi.h', |
| 553 | 'unicode/rep.h', |
| 554 | 'unicode/resbund.h', |
| 555 | 'unicode/schriter.h', |
| 556 | 'unicode/std_string.h', |
| 557 | 'unicode/strenum.h', |
| 558 | 'unicode/stringpiece.h', |
| 559 | 'unicode/stringtriebuilder.h', |
| 560 | 'unicode/symtable.h', |
| 561 | 'unicode/ubidi.h', |
| 562 | 'unicode/ubrk.h', |
| 563 | 'unicode/ucasemap.h', |
| 564 | 'unicode/ucat.h', |
| 565 | 'unicode/uchar.h', |
| 566 | 'unicode/ucharstriebuilder.h', |
| 567 | 'unicode/ucharstrie.h', |
| 568 | 'unicode/uchriter.h', |
| 569 | 'unicode/uclean.h', |
| 570 | 'unicode/ucnv_cb.h', |
| 571 | 'unicode/ucnv_err.h', |
| 572 | 'unicode/ucnv.h', |
| 573 | 'unicode/ucnvsel.h', |
| 574 | 'unicode/uconfig.h', |
| 575 | 'unicode/udata.h', |
| 576 | 'unicode/uenum.h', |
| 577 | 'unicode/uidna.h', |
| 578 | 'unicode/uiter.h', |
| 579 | 'unicode/uloc.h', |
| 580 | 'unicode/umachine.h', |
| 581 | 'unicode/umisc.h', |
| 582 | 'unicode/unifilt.h', |
| 583 | 'unicode/unifunct.h', |
| 584 | 'unicode/unimatch.h', |
| 585 | 'unicode/uniset.h', |
| 586 | 'unicode/unistr.h', |
| 587 | 'unicode/unorm2.h', |
| 588 | 'unicode/unorm.h', |
| 589 | 'unicode/uobject.h', |
| 590 | 'unicode/urename.h', |
| 591 | 'unicode/urep.h', |
| 592 | 'unicode/ures.h', |
| 593 | 'unicode/uscript.h', |
| 594 | 'unicode/uset.h', |
| 595 | 'unicode/usetiter.h', |
| 596 | 'unicode/ushape.h', |
| 597 | 'unicode/usprep.h', |
| 598 | 'unicode/ustring.h', |
| 599 | 'unicode/ustringtrie.h', |
| 600 | 'unicode/utext.h', |
| 601 | 'unicode/utf16.h', |
| 602 | 'unicode/utf32.h', |
| 603 | 'unicode/utf8.h', |
| 604 | 'unicode/utf.h', |
| 605 | 'unicode/utf_old.h', |
| 606 | 'unicode/utrace.h', |
| 607 | 'unicode/utypes.h', |
| 608 | 'unicode/uvernum.h', |
| 609 | 'unicode/uversion.h', |
| 610 | ], |
| 611 | }, |
| 612 | 'includes': [ |
| 613 | '../../build/shim_headers.gypi', |
| 614 | ], |
| 615 | 'toolsets': ['target'], |
| 616 | }, |
| 617 | ], # targets |
| 618 | }], |
| 619 | ], # conditions |
| 620 | } |