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