910e62b5创建于 1月15日历史提交
# Copyright 2023 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

# @generated from third_party/rust/chromium_crates_io/BUILD.gn.hbs by
# tools/crates/gnrt.
# Do not edit!

import("//build/rust/cargo_crate.gni")

cargo_crate("lib") {
  crate_name = "icu_provider"
  epoch = "2"
  crate_type = "rlib"
  crate_root =
      "//third_party/rust/chromium_crates_io/vendor/icu_provider-v2/src/lib.rs"
  sources = [
    "//third_party/rust/chromium_crates_io/vendor/icu_provider-v2/src/baked.rs",
    "//third_party/rust/chromium_crates_io/vendor/icu_provider-v2/src/baked/zerotrie.rs",
    "//third_party/rust/chromium_crates_io/vendor/icu_provider-v2/src/buf.rs",
    "//third_party/rust/chromium_crates_io/vendor/icu_provider-v2/src/buf/serde.rs",
    "//third_party/rust/chromium_crates_io/vendor/icu_provider-v2/src/constructors.rs",
    "//third_party/rust/chromium_crates_io/vendor/icu_provider-v2/src/data_provider.rs",
    "//third_party/rust/chromium_crates_io/vendor/icu_provider-v2/src/dynutil.rs",
    "//third_party/rust/chromium_crates_io/vendor/icu_provider-v2/src/error.rs",
    "//third_party/rust/chromium_crates_io/vendor/icu_provider-v2/src/export/mod.rs",
    "//third_party/rust/chromium_crates_io/vendor/icu_provider-v2/src/export/payload.rs",
    "//third_party/rust/chromium_crates_io/vendor/icu_provider-v2/src/fallback.rs",
    "//third_party/rust/chromium_crates_io/vendor/icu_provider-v2/src/hello_world.rs",
    "//third_party/rust/chromium_crates_io/vendor/icu_provider-v2/src/lib.rs",
    "//third_party/rust/chromium_crates_io/vendor/icu_provider-v2/src/marker.rs",
    "//third_party/rust/chromium_crates_io/vendor/icu_provider-v2/src/request.rs",
    "//third_party/rust/chromium_crates_io/vendor/icu_provider-v2/src/response.rs",
    "//third_party/rust/chromium_crates_io/vendor/icu_provider-v2/src/serde_borrow_de_utils.rs",
    "//third_party/rust/chromium_crates_io/vendor/icu_provider-v2/src/varule_traits.rs",
  ]
  inputs = []

  build_native_rust_unit_tests = false
  edition = "2021"
  cargo_pkg_authors = "The ICU4X Project Developers"
  cargo_pkg_name = "icu_provider"
  cargo_pkg_description =
      "Trait and struct definitions for the ICU data provider"
  cargo_pkg_repository = "https://github.com/unicode-org/icu4x"
  cargo_pkg_version = "2.1.1"

  allow_unsafe = true

  deps = [
    "//third_party/rust/displaydoc/v0_2:lib",
    "//third_party/rust/icu_locale_core/v2:lib",
    "//third_party/rust/stable_deref_trait/v1:lib",
    "//third_party/rust/writeable/v0_6:lib",
    "//third_party/rust/yoke/v0_8:lib",
    "//third_party/rust/zerofrom/v0_1:lib",
    "//third_party/rust/zerotrie/v0_2:lib",
    "//third_party/rust/zerovec/v0_11:lib",
  ]
  features = [
    "alloc",
    "baked",
  ]

  #####################################################################
  # Tweaking which GN `config`s apply to this target.

  # Config changes that apply to all `//third_party/rust` crates.
  _configs_to_remove = [
    # We don't need code coverage data for any `chromium_crates_io` crates.
    "//build/config/coverage:default_coverage",

    # This is third-party code, so remove `chromium_code` config.  We are not
    # at the same time adding `//build/config/compiler:no_chromium_code`,
    # because 1) we don't want to pull how warnings are handled by that config
    # and 2) that config doesn't have any non-warnings-related stuff.
    "//build/config/compiler:chromium_code",
  ]
  _configs_to_add = []

  # Changing (if needed) which configs apply to this specific crate (based on
  # `extra_kv.configs_to_remove` and `extra_kv.configs_to_add` from
  # `gnrt_config.toml`).
  _configs_to_remove += []
  _configs_to_add += []

  # Applying config changes.
  library_configs -= _configs_to_remove
  library_configs += _configs_to_add
  executable_configs -= _configs_to_remove
  executable_configs += _configs_to_add
  proc_macro_configs -= _configs_to_remove
  proc_macro_configs += _configs_to_add
}