| 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 |