OLD | NEW |
1 # Copyright 2014 The Chromium Authors. All rights reserved. | 1 # Copyright 2014 The Chromium Authors. All rights reserved. |
2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
4 | 4 |
5 import("//third_party/icu/config.gni") | 5 import("//third_party/icu/config.gni") |
6 | 6 |
7 # Meta target that includes both icuuc and icui18n. Most targets want both. | 7 # Meta target that includes both icuuc and icui18n. Most targets want both. |
8 # You can depend on the individually if you need to. | 8 # You can depend on the individually if you need to. |
9 group("icu") { | 9 group("icu") { |
10 deps = [ | 10 deps = [ |
(...skipping 206 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
217 "source/i18n/utrans.cpp", | 217 "source/i18n/utrans.cpp", |
218 "source/i18n/vtzone.cpp", | 218 "source/i18n/vtzone.cpp", |
219 "source/i18n/vzone.cpp", | 219 "source/i18n/vzone.cpp", |
220 "source/i18n/windtfmt.cpp", | 220 "source/i18n/windtfmt.cpp", |
221 "source/i18n/winnmfmt.cpp", | 221 "source/i18n/winnmfmt.cpp", |
222 "source/i18n/wintzimpl.cpp", | 222 "source/i18n/wintzimpl.cpp", |
223 "source/i18n/zonemeta.cpp", | 223 "source/i18n/zonemeta.cpp", |
224 "source/i18n/zrule.cpp", | 224 "source/i18n/zrule.cpp", |
225 "source/i18n/ztrans.cpp", | 225 "source/i18n/ztrans.cpp", |
226 ] | 226 ] |
227 defines = [ | 227 defines = [ "U_I18N_IMPLEMENTATION" ] |
228 "U_I18N_IMPLEMENTATION", | |
229 ] | |
230 deps = [ | 228 deps = [ |
231 ":icuuc", | 229 ":icuuc", |
232 ] | 230 ] |
233 | 231 |
234 # ICU uses RTTI, replace the default "no rtti" config. | 232 # ICU uses RTTI, replace the default "no rtti" config. |
235 configs -= [ | 233 configs -= [ |
236 "//build/config/compiler:no_rtti", # ICU uses RTTI. | 234 "//build/config/compiler:no_rtti", # ICU uses RTTI. |
237 "//build/config/compiler:chromium_code", | 235 "//build/config/compiler:chromium_code", |
238 ] | 236 ] |
239 configs += [ | 237 configs += [ |
(...skipping 12 matching lines...) Expand all Loading... |
252 ] | 250 ] |
253 } | 251 } |
254 if (is_clang) { | 252 if (is_clang) { |
255 # uspoof.h has a U_NAMESPACE_USE macro. That's a bug, | 253 # uspoof.h has a U_NAMESPACE_USE macro. That's a bug, |
256 # the header should use U_NAMESPACE_BEGIN instead. | 254 # the header should use U_NAMESPACE_BEGIN instead. |
257 # http://bugs.icu-project.org/trac/ticket/9054 | 255 # http://bugs.icu-project.org/trac/ticket/9054 |
258 configs -= [ "//build/config/clang:extra_warnings" ] | 256 configs -= [ "//build/config/clang:extra_warnings" ] |
259 | 257 |
260 cflags += [ | 258 cflags += [ |
261 "-Wno-header-hygiene", | 259 "-Wno-header-hygiene", |
| 260 |
262 # Looks like a real issue, see http://crbug.com/114660 | 261 # Looks like a real issue, see http://crbug.com/114660 |
263 "-Wno-return-type-c-linkage", | 262 "-Wno-return-type-c-linkage", |
264 ] | 263 ] |
265 } | 264 } |
266 } | 265 } |
267 | 266 |
268 component("icuuc") { | 267 component("icuuc") { |
269 sources = [ | 268 sources = [ |
270 "source/common/appendable.cpp", | 269 "source/common/appendable.cpp", |
271 "source/common/bmpset.cpp", | 270 "source/common/bmpset.cpp", |
(...skipping 160 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
432 "source/common/utrie2_builder.cpp", | 431 "source/common/utrie2_builder.cpp", |
433 "source/common/utrie2.cpp", | 432 "source/common/utrie2.cpp", |
434 "source/common/utrie.cpp", | 433 "source/common/utrie.cpp", |
435 "source/common/uts46.cpp", | 434 "source/common/uts46.cpp", |
436 "source/common/utypes.c", | 435 "source/common/utypes.c", |
437 "source/common/uvector.cpp", | 436 "source/common/uvector.cpp", |
438 "source/common/uvectr32.cpp", | 437 "source/common/uvectr32.cpp", |
439 "source/common/uvectr64.cpp", | 438 "source/common/uvectr64.cpp", |
440 "source/common/wintz.c", | 439 "source/common/wintz.c", |
441 ] | 440 ] |
442 defines = [ | 441 defines = [ "U_COMMON_IMPLEMENTATION" ] |
443 "U_COMMON_IMPLEMENTATION", | |
444 ] | |
445 deps = [ | 442 deps = [ |
446 ":icudata", | 443 ":icudata", |
447 ] | 444 ] |
448 configs += [ ":icu_code" ] | 445 configs += [ ":icu_code" ] |
449 | 446 |
450 configs -= [ | 447 configs -= [ |
451 "//build/config/compiler:no_rtti", # ICU uses RTTI. | 448 "//build/config/compiler:no_rtti", # ICU uses RTTI. |
452 "//build/config/compiler:chromium_code", | 449 "//build/config/compiler:chromium_code", |
453 ] | 450 ] |
454 configs += [ | 451 configs += [ |
(...skipping 13 matching lines...) Expand all Loading... |
468 if (is_ios) { | 465 if (is_ios) { |
469 # TODO(GYP): Support mac resource bundle shown below. | 466 # TODO(GYP): Support mac resource bundle shown below. |
470 # 'link_settings': { | 467 # 'link_settings': { |
471 # 'mac_bundle_resources': [ | 468 # 'mac_bundle_resources': [ |
472 # 'source/data/in/icudtl.dat', | 469 # 'source/data/in/icudtl.dat', |
473 # ], | 470 # ], |
474 # } | 471 # } |
475 } else { | 472 } else { |
476 copy("icudata") { | 473 copy("icudata") { |
477 if (is_android) { | 474 if (is_android) { |
478 sources = [ "android/icudtl.dat" ] | 475 sources = [ |
| 476 "android/icudtl.dat", |
| 477 ] |
479 } else { | 478 } else { |
480 sources = [ "source/data/in/icudtl.dat" ] | 479 sources = [ |
| 480 "source/data/in/icudtl.dat", |
| 481 ] |
481 } | 482 } |
482 | 483 |
483 outputs = [ "$root_out_dir/icudtl.dat" ] | 484 outputs = [ "$root_out_dir/icudtl.dat" ] |
484 } | 485 } |
485 } | 486 } |
486 } else { | 487 } else { |
487 if (is_win) { | 488 if (is_win) { |
488 # On Windows the target DLL is pre-built so just use a copy rule. | 489 # On Windows the target DLL is pre-built so just use a copy rule. |
489 copy("icudata") { | 490 copy("icudata") { |
490 sources = [ "windows/icudt.dll" ] | 491 sources = [ |
| 492 "windows/icudt.dll", |
| 493 ] |
491 outputs = [ "$root_out_dir/icudt.dll" ] | 494 outputs = [ "$root_out_dir/icudt.dll" ] |
492 } | 495 } |
493 } else { | 496 } else { |
494 source_set("icudata") { | 497 source_set("icudata") { |
495 # These are hand-generated, but will do for now. | 498 # These are hand-generated, but will do for now. |
496 # | 499 # |
497 # TODO(GYP): Gyp has considerations here for QNX and for the host toolchai
n | 500 # TODO(GYP): Gyp has considerations here for QNX and for the host toolchai
n |
498 # that have not been ported over. | 501 # that have not been ported over. |
499 if (is_linux) { | 502 if (is_linux) { |
500 sources = [ "linux/icudtl_dat.S" ] | 503 sources = [ |
| 504 "linux/icudtl_dat.S", |
| 505 ] |
501 } else if (is_mac) { | 506 } else if (is_mac) { |
502 sources = [ "mac/icudtl_dat.S" ] | 507 sources = [ |
| 508 "mac/icudtl_dat.S", |
| 509 ] |
503 } else if (is_android) { | 510 } else if (is_android) { |
504 sources = [ "android/icudtl_dat.S" ] | 511 sources = [ |
| 512 "android/icudtl_dat.S", |
| 513 ] |
505 } else { | 514 } else { |
506 assert(false, "No icu data for this platform") | 515 assert(false, "No icu data for this platform") |
507 } | 516 } |
508 defines = [ "U_HIDE_DATA_SYMBOL" ] | 517 defines = [ "U_HIDE_DATA_SYMBOL" ] |
509 } | 518 } |
510 } | 519 } |
511 } | 520 } |
OLD | NEW |