xref: /aosp_15_r20/external/abseil-cpp/absl/BUILD.bazel (revision 9356374a3709195abf420251b3e825997ff56c0f)
1#
2# Copyright 2017 The Abseil Authors.
3#
4# Licensed under the Apache License, Version 2.0 (the "License");
5# you may not use this file except in compliance with the License.
6# You may obtain a copy of the License at
7#
8#      https://www.apache.org/licenses/LICENSE-2.0
9#
10# Unless required by applicable law or agreed to in writing, software
11# distributed under the License is distributed on an "AS IS" BASIS,
12# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13# See the License for the specific language governing permissions and
14# limitations under the License.
15#
16
17load("@bazel_skylib//lib:selects.bzl", "selects")
18
19package(default_visibility = ["//visibility:public"])
20
21licenses(["notice"])
22
23config_setting(
24    name = "clang_compiler",
25    flag_values = {
26        "@bazel_tools//tools/cpp:compiler": "clang",
27    },
28    visibility = [":__subpackages__"],
29)
30
31config_setting(
32    name = "gcc_compiler",
33    flag_values = {
34        "@bazel_tools//tools/cpp:compiler": "gcc",
35    },
36    visibility = [":__subpackages__"],
37)
38
39config_setting(
40    name = "mingw_unspecified_compiler",
41    flag_values = {
42        "@bazel_tools//tools/cpp:compiler": "mingw",
43    },
44    visibility = [":__subpackages__"],
45)
46
47config_setting(
48    name = "mingw-gcc_compiler",
49    flag_values = {
50        "@bazel_tools//tools/cpp:compiler": "mingw-gcc",
51    },
52    visibility = [":__subpackages__"],
53)
54
55config_setting(
56    name = "msvc_compiler",
57    flag_values = {
58        "@bazel_tools//tools/cpp:compiler": "msvc-cl",
59    },
60    visibility = [":__subpackages__"],
61)
62
63config_setting(
64    name = "clang-cl_compiler",
65    flag_values = {
66        "@bazel_tools//tools/cpp:compiler": "clang-cl",
67    },
68    visibility = [":__subpackages__"],
69)
70
71config_setting(
72    name = "osx",
73    constraint_values = [
74        "@platforms//os:osx",
75    ],
76)
77
78config_setting(
79    name = "ios",
80    constraint_values = [
81        "@platforms//os:ios",
82    ],
83)
84
85config_setting(
86    name = "ppc",
87    values = {
88        "cpu": "ppc",
89    },
90    visibility = [":__subpackages__"],
91)
92
93config_setting(
94    name = "cpu_wasm",
95    values = {
96        "cpu": "wasm",
97    },
98    visibility = [":__subpackages__"],
99)
100
101config_setting(
102    name = "cpu_wasm32",
103    values = {
104        "cpu": "wasm32",
105    },
106    visibility = [":__subpackages__"],
107)
108
109config_setting(
110    name = "platforms_wasm32",
111    constraint_values = [
112        "@platforms//cpu:wasm32",
113    ],
114    visibility = [":__subpackages__"],
115)
116
117config_setting(
118    name = "platforms_wasm64",
119    constraint_values = [
120        "@platforms//cpu:wasm64",
121    ],
122    visibility = [":__subpackages__"],
123)
124
125selects.config_setting_group(
126    name = "wasm",
127    match_any = [
128        ":cpu_wasm",
129        ":cpu_wasm32",
130        ":platforms_wasm32",
131        ":platforms_wasm64",
132    ],
133    visibility = [":__subpackages__"],
134)
135
136config_setting(
137    name = "fuchsia",
138    values = {
139        "cpu": "fuchsia",
140    },
141    visibility = [":__subpackages__"],
142)
143
144selects.config_setting_group(
145    name = "mingw_compiler",
146    match_any = [
147        ":mingw_unspecified_compiler",
148        ":mingw-gcc_compiler",
149    ],
150    visibility = [":__subpackages__"],
151)
152