github.com/johnnyeven/libtools@v0.0.0-20191126065708-61829c1adf46/third_party/icu/BUILD.bazel (about)

     1  package(
     2      default_visibility = ["//visibility:public"],
     3  )
     4  
     5  licenses(["notice"])  # Apache 2.0
     6  
     7  exports_files([
     8      "icu4c/LICENSE",
     9      "icu4j/main/shared/licenses/LICENSE",
    10  ])
    11  
    12  cc_library(
    13      name = "headers",
    14      hdrs = glob(["icu4c/source/common/unicode/*.h"]),
    15      includes = [
    16          "icu4c/source/common",
    17      ],
    18      deps = [
    19      ],
    20  )
    21  
    22  cc_library(
    23      name = "common",
    24      hdrs = glob(["icu4c/source/common/unicode/*.h"]),
    25      includes = [
    26          "icu4c/source/common",
    27      ],
    28      deps = [
    29          ":icuuc",
    30      ],
    31  )
    32  
    33  cc_library(
    34      name = "icuuc",
    35      srcs = glob(
    36          [
    37              "icu4c/source/common/*.c",
    38              "icu4c/source/common/*.cpp",
    39              "icu4c/source/stubdata/*.cpp",
    40          ],
    41      ),
    42      hdrs = glob([
    43          "icu4c/source/common/*.h",
    44      ]),
    45      copts = [
    46          "-DU_COMMON_IMPLEMENTATION",
    47          "-DU_HAVE_STD_ATOMICS",  # TODO(gunan): Remove when TF is on ICU 64+.
    48      ] + select({
    49          ":android": [
    50              "-fdata-sections",
    51              "-DGOOGLE_VENDOR_SRC_BRANCH",
    52              "-DU_HAVE_NL_LANGINFO_CODESET=0",
    53              "-Wno-deprecated-declarations",
    54          ],
    55          ":apple": [
    56              "-DGOOGLE_VENDOR_SRC_BRANCH",
    57              "-Wno-shorten-64-to-32",
    58              "-Wno-unused-variable",
    59          ],
    60          ":windows": [
    61              "/utf-8",
    62              "/DLOCALE_ALLOW_NEUTRAL_NAMES=0",
    63          ],
    64          "//conditions:default": [],
    65      }),
    66      tags = ["requires-rtti"],
    67      visibility = [
    68          "//visibility:private",
    69      ],
    70      deps = [
    71          ":headers",
    72      ],
    73  )
    74  
    75  config_setting(
    76      name = "android",
    77      values = {"crosstool_top": "//external:android/crosstool"},
    78  )
    79  
    80  config_setting(
    81      name = "apple",
    82      values = {"cpu": "darwin"},
    83  )
    84  
    85  config_setting(
    86      name = "windows",
    87      values = {"cpu": "x64_windows"},
    88  )