xref: /aosp_15_r20/external/cronet/third_party/icu/config.gni (revision 6777b5387eb2ff775bb5750e3f5d96f37fb7352b)
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
3# found in the LICENSE file.
4
5# This points to the ICU version of this file in ICU, but can point to
6# downstream-specific file when included as //third_party dependency.
7
8if (defined(is_fuchsia_tree) && is_fuchsia_tree) {
9  # This file is supposed to exist only in the Fuchsia build tree.
10  import("//build/icu.gni")
11} else {
12  declare_args() {
13    # Tells icu to load an external data file rather than rely on the icudata
14    # being linked directly into the binary.
15    icu_use_data_file = true
16
17    # If true, then this creates a stub data file. This should be disabled if
18    # a custom data file will be used instead, in order to avoid conflicting
19    # symbols.
20    icu_use_stub_data = true
21
22    # If true, compile icu into a standalone static library. Currently this is
23    # only useful on Chrome OS.
24    icu_disable_thin_archive = false
25
26    # If set to nonempty, this is the label of the directory to be used to pull
27    # the ICU data files content.  The setting has effect only when building
28    # inside the Fuchsia source tree.
29    icu_fuchsia_override_data_dir = ""
30
31    # If set, the ":icudata" target will copy the ICU data to $root_build_dir.
32    icu_copy_icudata_to_root_build_dir = true
33
34    # Fuchsia sometimes requires extra compilation flags for ICU to adapt it to
35    # its current toolchain. Since it takes a while for ICU to roll through
36    # Fuchsia, it can take a long time from an ICU commit to a fix rolling into
37    # Fuchsia. This flag allows us to define the flag ahead of time in
38    # //build/icu.gni, and remove the rollout issues.
39    icu_fuchsia_extra_compile_flags = []
40
41    # Similar to above, except it allows adding an entire `config` target.
42    icu_fuchsia_extra_configs = []
43
44    # Similar to above, except it allows removing an entire `config` target, if
45    # it exists.
46    icu_fuchsia_remove_configs = []
47  }
48
49  # Set to true if icu is being built from the Fuchsia tree.
50  icu_is_in_fuchsia = defined(is_fuchsia_tree) && is_fuchsia_tree
51}
52