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