• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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
16load("@bazel_skylib//lib:selects.bzl", "selects")
17
18package(default_visibility = ["//visibility:public"])
19
20licenses(["notice"])
21
22config_setting(
23    name = "clang_compiler",
24    flag_values = {
25        "@bazel_tools//tools/cpp:compiler": "clang",
26    },
27    visibility = [":__subpackages__"],
28)
29
30config_setting(
31    name = "msvc_compiler",
32    flag_values = {
33        "@bazel_tools//tools/cpp:compiler": "msvc-cl",
34    },
35    visibility = [":__subpackages__"],
36)
37
38config_setting(
39    name = "clang-cl_compiler",
40    flag_values = {
41        "@bazel_tools//tools/cpp:compiler": "clang-cl",
42    },
43    visibility = [":__subpackages__"],
44)
45
46config_setting(
47    name = "osx",
48    constraint_values = [
49        "@platforms//os:osx",
50    ],
51)
52
53config_setting(
54    name = "ios",
55    constraint_values = [
56        "@platforms//os:ios",
57    ],
58)
59
60config_setting(
61    name = "ppc",
62    values = {
63        "cpu": "ppc",
64    },
65    visibility = [":__subpackages__"],
66)
67
68config_setting(
69    name = "cpu_wasm",
70    values = {
71        "cpu": "wasm",
72    },
73    visibility = [":__subpackages__"],
74)
75
76config_setting(
77    name = "cpu_wasm32",
78    values = {
79        "cpu": "wasm32",
80    },
81    visibility = [":__subpackages__"],
82)
83
84config_setting(
85    name = "platforms_wasm32",
86    constraint_values = [
87        "@platforms//cpu:wasm32",
88    ],
89    visibility = [":__subpackages__"],
90)
91
92config_setting(
93    name = "platforms_wasm64",
94    constraint_values = [
95        "@platforms//cpu:wasm64",
96    ],
97    visibility = [":__subpackages__"],
98)
99
100selects.config_setting_group(
101    name = "wasm",
102    match_any = [
103        ":cpu_wasm",
104        ":cpu_wasm32",
105        ":platforms_wasm32",
106        ":platforms_wasm64",
107    ],
108    visibility = [":__subpackages__"],
109)
110
111config_setting(
112    name = "fuchsia",
113    values = {
114        "cpu": "fuchsia",
115    },
116    visibility = [":__subpackages__"],
117)
118