xref: /aosp_15_r20/external/abseil-cpp/absl/flags/BUILD.bazel (revision 9356374a3709195abf420251b3e825997ff56c0f)
1*9356374aSAndroid Build Coastguard Worker#
2*9356374aSAndroid Build Coastguard Worker# Copyright 2019 The Abseil Authors.
3*9356374aSAndroid Build Coastguard Worker#
4*9356374aSAndroid Build Coastguard Worker# Licensed under the Apache License, Version 2.0 (the "License");
5*9356374aSAndroid Build Coastguard Worker# you may not use this file except in compliance with the License.
6*9356374aSAndroid Build Coastguard Worker# You may obtain a copy of the License at
7*9356374aSAndroid Build Coastguard Worker#
8*9356374aSAndroid Build Coastguard Worker#      https://www.apache.org/licenses/LICENSE-2.0
9*9356374aSAndroid Build Coastguard Worker#
10*9356374aSAndroid Build Coastguard Worker# Unless required by applicable law or agreed to in writing, software
11*9356374aSAndroid Build Coastguard Worker# distributed under the License is distributed on an "AS IS" BASIS,
12*9356374aSAndroid Build Coastguard Worker# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13*9356374aSAndroid Build Coastguard Worker# See the License for the specific language governing permissions and
14*9356374aSAndroid Build Coastguard Worker# limitations under the License.
15*9356374aSAndroid Build Coastguard Worker#
16*9356374aSAndroid Build Coastguard Worker
17*9356374aSAndroid Build Coastguard Workerload(
18*9356374aSAndroid Build Coastguard Worker    "//absl:copts/configure_copts.bzl",
19*9356374aSAndroid Build Coastguard Worker    "ABSL_DEFAULT_COPTS",
20*9356374aSAndroid Build Coastguard Worker    "ABSL_DEFAULT_LINKOPTS",
21*9356374aSAndroid Build Coastguard Worker    "ABSL_TEST_COPTS",
22*9356374aSAndroid Build Coastguard Worker)
23*9356374aSAndroid Build Coastguard Worker
24*9356374aSAndroid Build Coastguard Workerpackage(
25*9356374aSAndroid Build Coastguard Worker    default_visibility = ["//visibility:public"],
26*9356374aSAndroid Build Coastguard Worker    features = [
27*9356374aSAndroid Build Coastguard Worker        "header_modules",
28*9356374aSAndroid Build Coastguard Worker        "layering_check",
29*9356374aSAndroid Build Coastguard Worker        "parse_headers",
30*9356374aSAndroid Build Coastguard Worker    ],
31*9356374aSAndroid Build Coastguard Worker)
32*9356374aSAndroid Build Coastguard Worker
33*9356374aSAndroid Build Coastguard Workerlicenses(["notice"])
34*9356374aSAndroid Build Coastguard Worker
35*9356374aSAndroid Build Coastguard Workercc_library(
36*9356374aSAndroid Build Coastguard Worker    name = "path_util",
37*9356374aSAndroid Build Coastguard Worker    hdrs = [
38*9356374aSAndroid Build Coastguard Worker        "internal/path_util.h",
39*9356374aSAndroid Build Coastguard Worker    ],
40*9356374aSAndroid Build Coastguard Worker    copts = ABSL_DEFAULT_COPTS,
41*9356374aSAndroid Build Coastguard Worker    linkopts = ABSL_DEFAULT_LINKOPTS,
42*9356374aSAndroid Build Coastguard Worker    visibility = [
43*9356374aSAndroid Build Coastguard Worker        "//absl/flags:__pkg__",
44*9356374aSAndroid Build Coastguard Worker    ],
45*9356374aSAndroid Build Coastguard Worker    deps = [
46*9356374aSAndroid Build Coastguard Worker        "//absl/base:config",
47*9356374aSAndroid Build Coastguard Worker        "//absl/strings",
48*9356374aSAndroid Build Coastguard Worker    ],
49*9356374aSAndroid Build Coastguard Worker)
50*9356374aSAndroid Build Coastguard Worker
51*9356374aSAndroid Build Coastguard Workercc_library(
52*9356374aSAndroid Build Coastguard Worker    name = "program_name",
53*9356374aSAndroid Build Coastguard Worker    srcs = [
54*9356374aSAndroid Build Coastguard Worker        "internal/program_name.cc",
55*9356374aSAndroid Build Coastguard Worker    ],
56*9356374aSAndroid Build Coastguard Worker    hdrs = [
57*9356374aSAndroid Build Coastguard Worker        "internal/program_name.h",
58*9356374aSAndroid Build Coastguard Worker    ],
59*9356374aSAndroid Build Coastguard Worker    copts = ABSL_DEFAULT_COPTS,
60*9356374aSAndroid Build Coastguard Worker    linkopts = ABSL_DEFAULT_LINKOPTS,
61*9356374aSAndroid Build Coastguard Worker    visibility = [
62*9356374aSAndroid Build Coastguard Worker        "//absl/flags:__pkg__",
63*9356374aSAndroid Build Coastguard Worker        "//absl/log:__pkg__",
64*9356374aSAndroid Build Coastguard Worker    ],
65*9356374aSAndroid Build Coastguard Worker    deps = [
66*9356374aSAndroid Build Coastguard Worker        ":path_util",
67*9356374aSAndroid Build Coastguard Worker        "//absl/base:config",
68*9356374aSAndroid Build Coastguard Worker        "//absl/base:core_headers",
69*9356374aSAndroid Build Coastguard Worker        "//absl/strings",
70*9356374aSAndroid Build Coastguard Worker        "//absl/synchronization",
71*9356374aSAndroid Build Coastguard Worker    ],
72*9356374aSAndroid Build Coastguard Worker)
73*9356374aSAndroid Build Coastguard Worker
74*9356374aSAndroid Build Coastguard Workercc_library(
75*9356374aSAndroid Build Coastguard Worker    name = "config",
76*9356374aSAndroid Build Coastguard Worker    srcs = [
77*9356374aSAndroid Build Coastguard Worker        "usage_config.cc",
78*9356374aSAndroid Build Coastguard Worker    ],
79*9356374aSAndroid Build Coastguard Worker    hdrs = [
80*9356374aSAndroid Build Coastguard Worker        "config.h",
81*9356374aSAndroid Build Coastguard Worker        "usage_config.h",
82*9356374aSAndroid Build Coastguard Worker    ],
83*9356374aSAndroid Build Coastguard Worker    copts = ABSL_DEFAULT_COPTS,
84*9356374aSAndroid Build Coastguard Worker    linkopts = ABSL_DEFAULT_LINKOPTS,
85*9356374aSAndroid Build Coastguard Worker    deps = [
86*9356374aSAndroid Build Coastguard Worker        ":path_util",
87*9356374aSAndroid Build Coastguard Worker        ":program_name",
88*9356374aSAndroid Build Coastguard Worker        "//absl/base:config",
89*9356374aSAndroid Build Coastguard Worker        "//absl/base:core_headers",
90*9356374aSAndroid Build Coastguard Worker        "//absl/strings",
91*9356374aSAndroid Build Coastguard Worker        "//absl/synchronization",
92*9356374aSAndroid Build Coastguard Worker    ],
93*9356374aSAndroid Build Coastguard Worker)
94*9356374aSAndroid Build Coastguard Worker
95*9356374aSAndroid Build Coastguard Workercc_library(
96*9356374aSAndroid Build Coastguard Worker    name = "marshalling",
97*9356374aSAndroid Build Coastguard Worker    srcs = [
98*9356374aSAndroid Build Coastguard Worker        "marshalling.cc",
99*9356374aSAndroid Build Coastguard Worker    ],
100*9356374aSAndroid Build Coastguard Worker    hdrs = [
101*9356374aSAndroid Build Coastguard Worker        "marshalling.h",
102*9356374aSAndroid Build Coastguard Worker    ],
103*9356374aSAndroid Build Coastguard Worker    copts = ABSL_DEFAULT_COPTS,
104*9356374aSAndroid Build Coastguard Worker    linkopts = ABSL_DEFAULT_LINKOPTS,
105*9356374aSAndroid Build Coastguard Worker    deps = [
106*9356374aSAndroid Build Coastguard Worker        "//absl/base:config",
107*9356374aSAndroid Build Coastguard Worker        "//absl/base:core_headers",
108*9356374aSAndroid Build Coastguard Worker        "//absl/base:log_severity",
109*9356374aSAndroid Build Coastguard Worker        "//absl/numeric:int128",
110*9356374aSAndroid Build Coastguard Worker        "//absl/strings",
111*9356374aSAndroid Build Coastguard Worker        "//absl/strings:str_format",
112*9356374aSAndroid Build Coastguard Worker        "//absl/types:optional",
113*9356374aSAndroid Build Coastguard Worker    ],
114*9356374aSAndroid Build Coastguard Worker)
115*9356374aSAndroid Build Coastguard Worker
116*9356374aSAndroid Build Coastguard Workercc_library(
117*9356374aSAndroid Build Coastguard Worker    name = "commandlineflag_internal",
118*9356374aSAndroid Build Coastguard Worker    srcs = [
119*9356374aSAndroid Build Coastguard Worker        "internal/commandlineflag.cc",
120*9356374aSAndroid Build Coastguard Worker    ],
121*9356374aSAndroid Build Coastguard Worker    hdrs = [
122*9356374aSAndroid Build Coastguard Worker        "internal/commandlineflag.h",
123*9356374aSAndroid Build Coastguard Worker    ],
124*9356374aSAndroid Build Coastguard Worker    copts = ABSL_DEFAULT_COPTS,
125*9356374aSAndroid Build Coastguard Worker    linkopts = ABSL_DEFAULT_LINKOPTS,
126*9356374aSAndroid Build Coastguard Worker    visibility = [
127*9356374aSAndroid Build Coastguard Worker        "//visibility:private",
128*9356374aSAndroid Build Coastguard Worker    ],
129*9356374aSAndroid Build Coastguard Worker    deps = [
130*9356374aSAndroid Build Coastguard Worker        "//absl/base:config",
131*9356374aSAndroid Build Coastguard Worker        "//absl/base:fast_type_id",
132*9356374aSAndroid Build Coastguard Worker    ],
133*9356374aSAndroid Build Coastguard Worker)
134*9356374aSAndroid Build Coastguard Worker
135*9356374aSAndroid Build Coastguard Workercc_library(
136*9356374aSAndroid Build Coastguard Worker    name = "commandlineflag",
137*9356374aSAndroid Build Coastguard Worker    srcs = [
138*9356374aSAndroid Build Coastguard Worker        "commandlineflag.cc",
139*9356374aSAndroid Build Coastguard Worker    ],
140*9356374aSAndroid Build Coastguard Worker    hdrs = [
141*9356374aSAndroid Build Coastguard Worker        "commandlineflag.h",
142*9356374aSAndroid Build Coastguard Worker    ],
143*9356374aSAndroid Build Coastguard Worker    copts = ABSL_DEFAULT_COPTS,
144*9356374aSAndroid Build Coastguard Worker    linkopts = ABSL_DEFAULT_LINKOPTS,
145*9356374aSAndroid Build Coastguard Worker    deps = [
146*9356374aSAndroid Build Coastguard Worker        ":commandlineflag_internal",
147*9356374aSAndroid Build Coastguard Worker        "//absl/base:config",
148*9356374aSAndroid Build Coastguard Worker        "//absl/base:fast_type_id",
149*9356374aSAndroid Build Coastguard Worker        "//absl/strings",
150*9356374aSAndroid Build Coastguard Worker        "//absl/types:optional",
151*9356374aSAndroid Build Coastguard Worker    ],
152*9356374aSAndroid Build Coastguard Worker)
153*9356374aSAndroid Build Coastguard Worker
154*9356374aSAndroid Build Coastguard Workercc_library(
155*9356374aSAndroid Build Coastguard Worker    name = "private_handle_accessor",
156*9356374aSAndroid Build Coastguard Worker    srcs = [
157*9356374aSAndroid Build Coastguard Worker        "internal/private_handle_accessor.cc",
158*9356374aSAndroid Build Coastguard Worker    ],
159*9356374aSAndroid Build Coastguard Worker    hdrs = [
160*9356374aSAndroid Build Coastguard Worker        "internal/private_handle_accessor.h",
161*9356374aSAndroid Build Coastguard Worker    ],
162*9356374aSAndroid Build Coastguard Worker    copts = ABSL_DEFAULT_COPTS,
163*9356374aSAndroid Build Coastguard Worker    linkopts = ABSL_DEFAULT_LINKOPTS,
164*9356374aSAndroid Build Coastguard Worker    visibility = [
165*9356374aSAndroid Build Coastguard Worker        "//absl/flags:__pkg__",
166*9356374aSAndroid Build Coastguard Worker    ],
167*9356374aSAndroid Build Coastguard Worker    deps = [
168*9356374aSAndroid Build Coastguard Worker        ":commandlineflag",
169*9356374aSAndroid Build Coastguard Worker        ":commandlineflag_internal",
170*9356374aSAndroid Build Coastguard Worker        "//absl/base:config",
171*9356374aSAndroid Build Coastguard Worker        "//absl/strings",
172*9356374aSAndroid Build Coastguard Worker    ],
173*9356374aSAndroid Build Coastguard Worker)
174*9356374aSAndroid Build Coastguard Worker
175*9356374aSAndroid Build Coastguard Workercc_library(
176*9356374aSAndroid Build Coastguard Worker    name = "reflection",
177*9356374aSAndroid Build Coastguard Worker    srcs = [
178*9356374aSAndroid Build Coastguard Worker        "reflection.cc",
179*9356374aSAndroid Build Coastguard Worker    ],
180*9356374aSAndroid Build Coastguard Worker    hdrs = [
181*9356374aSAndroid Build Coastguard Worker        "internal/registry.h",
182*9356374aSAndroid Build Coastguard Worker        "reflection.h",
183*9356374aSAndroid Build Coastguard Worker    ],
184*9356374aSAndroid Build Coastguard Worker    copts = ABSL_DEFAULT_COPTS,
185*9356374aSAndroid Build Coastguard Worker    linkopts = ABSL_DEFAULT_LINKOPTS,
186*9356374aSAndroid Build Coastguard Worker    deps = [
187*9356374aSAndroid Build Coastguard Worker        ":commandlineflag",
188*9356374aSAndroid Build Coastguard Worker        ":commandlineflag_internal",
189*9356374aSAndroid Build Coastguard Worker        ":config",
190*9356374aSAndroid Build Coastguard Worker        ":private_handle_accessor",
191*9356374aSAndroid Build Coastguard Worker        "//absl/base:config",
192*9356374aSAndroid Build Coastguard Worker        "//absl/base:core_headers",
193*9356374aSAndroid Build Coastguard Worker        "//absl/base:no_destructor",
194*9356374aSAndroid Build Coastguard Worker        "//absl/container:flat_hash_map",
195*9356374aSAndroid Build Coastguard Worker        "//absl/strings",
196*9356374aSAndroid Build Coastguard Worker        "//absl/synchronization",
197*9356374aSAndroid Build Coastguard Worker    ],
198*9356374aSAndroid Build Coastguard Worker)
199*9356374aSAndroid Build Coastguard Worker
200*9356374aSAndroid Build Coastguard Workercc_library(
201*9356374aSAndroid Build Coastguard Worker    name = "flag_internal",
202*9356374aSAndroid Build Coastguard Worker    srcs = [
203*9356374aSAndroid Build Coastguard Worker        "internal/flag.cc",
204*9356374aSAndroid Build Coastguard Worker    ],
205*9356374aSAndroid Build Coastguard Worker    hdrs = [
206*9356374aSAndroid Build Coastguard Worker        "internal/flag.h",
207*9356374aSAndroid Build Coastguard Worker        "internal/sequence_lock.h",
208*9356374aSAndroid Build Coastguard Worker    ],
209*9356374aSAndroid Build Coastguard Worker    copts = ABSL_DEFAULT_COPTS,
210*9356374aSAndroid Build Coastguard Worker    linkopts = ABSL_DEFAULT_LINKOPTS,
211*9356374aSAndroid Build Coastguard Worker    visibility = ["//absl/base:__subpackages__"],
212*9356374aSAndroid Build Coastguard Worker    deps = [
213*9356374aSAndroid Build Coastguard Worker        ":commandlineflag",
214*9356374aSAndroid Build Coastguard Worker        ":commandlineflag_internal",
215*9356374aSAndroid Build Coastguard Worker        ":config",
216*9356374aSAndroid Build Coastguard Worker        ":marshalling",
217*9356374aSAndroid Build Coastguard Worker        ":reflection",
218*9356374aSAndroid Build Coastguard Worker        "//absl/base",
219*9356374aSAndroid Build Coastguard Worker        "//absl/base:config",
220*9356374aSAndroid Build Coastguard Worker        "//absl/base:core_headers",
221*9356374aSAndroid Build Coastguard Worker        "//absl/base:dynamic_annotations",
222*9356374aSAndroid Build Coastguard Worker        "//absl/memory",
223*9356374aSAndroid Build Coastguard Worker        "//absl/meta:type_traits",
224*9356374aSAndroid Build Coastguard Worker        "//absl/strings",
225*9356374aSAndroid Build Coastguard Worker        "//absl/synchronization",
226*9356374aSAndroid Build Coastguard Worker        "//absl/utility",
227*9356374aSAndroid Build Coastguard Worker    ],
228*9356374aSAndroid Build Coastguard Worker)
229*9356374aSAndroid Build Coastguard Worker
230*9356374aSAndroid Build Coastguard Workercc_library(
231*9356374aSAndroid Build Coastguard Worker    name = "flag",
232*9356374aSAndroid Build Coastguard Worker    hdrs = [
233*9356374aSAndroid Build Coastguard Worker        "declare.h",
234*9356374aSAndroid Build Coastguard Worker        "flag.h",
235*9356374aSAndroid Build Coastguard Worker    ],
236*9356374aSAndroid Build Coastguard Worker    copts = ABSL_DEFAULT_COPTS,
237*9356374aSAndroid Build Coastguard Worker    linkopts = ABSL_DEFAULT_LINKOPTS,
238*9356374aSAndroid Build Coastguard Worker    deps = [
239*9356374aSAndroid Build Coastguard Worker        ":commandlineflag",
240*9356374aSAndroid Build Coastguard Worker        ":config",
241*9356374aSAndroid Build Coastguard Worker        ":flag_internal",
242*9356374aSAndroid Build Coastguard Worker        ":reflection",
243*9356374aSAndroid Build Coastguard Worker        "//absl/base:config",
244*9356374aSAndroid Build Coastguard Worker        "//absl/base:core_headers",
245*9356374aSAndroid Build Coastguard Worker        "//absl/strings",
246*9356374aSAndroid Build Coastguard Worker    ],
247*9356374aSAndroid Build Coastguard Worker)
248*9356374aSAndroid Build Coastguard Worker
249*9356374aSAndroid Build Coastguard Workercc_library(
250*9356374aSAndroid Build Coastguard Worker    name = "usage_internal",
251*9356374aSAndroid Build Coastguard Worker    srcs = [
252*9356374aSAndroid Build Coastguard Worker        "internal/usage.cc",
253*9356374aSAndroid Build Coastguard Worker    ],
254*9356374aSAndroid Build Coastguard Worker    hdrs = [
255*9356374aSAndroid Build Coastguard Worker        "internal/usage.h",
256*9356374aSAndroid Build Coastguard Worker    ],
257*9356374aSAndroid Build Coastguard Worker    copts = ABSL_DEFAULT_COPTS,
258*9356374aSAndroid Build Coastguard Worker    linkopts = ABSL_DEFAULT_LINKOPTS,
259*9356374aSAndroid Build Coastguard Worker    visibility = [
260*9356374aSAndroid Build Coastguard Worker        "//absl/flags:__pkg__",
261*9356374aSAndroid Build Coastguard Worker    ],
262*9356374aSAndroid Build Coastguard Worker    deps = [
263*9356374aSAndroid Build Coastguard Worker        ":commandlineflag",
264*9356374aSAndroid Build Coastguard Worker        ":config",
265*9356374aSAndroid Build Coastguard Worker        ":flag",
266*9356374aSAndroid Build Coastguard Worker        ":flag_internal",
267*9356374aSAndroid Build Coastguard Worker        ":path_util",
268*9356374aSAndroid Build Coastguard Worker        ":private_handle_accessor",
269*9356374aSAndroid Build Coastguard Worker        ":program_name",
270*9356374aSAndroid Build Coastguard Worker        ":reflection",
271*9356374aSAndroid Build Coastguard Worker        "//absl/base:config",
272*9356374aSAndroid Build Coastguard Worker        "//absl/base:core_headers",
273*9356374aSAndroid Build Coastguard Worker        "//absl/strings",
274*9356374aSAndroid Build Coastguard Worker        "//absl/synchronization",
275*9356374aSAndroid Build Coastguard Worker    ],
276*9356374aSAndroid Build Coastguard Worker)
277*9356374aSAndroid Build Coastguard Worker
278*9356374aSAndroid Build Coastguard Workercc_library(
279*9356374aSAndroid Build Coastguard Worker    name = "usage",
280*9356374aSAndroid Build Coastguard Worker    srcs = [
281*9356374aSAndroid Build Coastguard Worker        "usage.cc",
282*9356374aSAndroid Build Coastguard Worker    ],
283*9356374aSAndroid Build Coastguard Worker    hdrs = [
284*9356374aSAndroid Build Coastguard Worker        "usage.h",
285*9356374aSAndroid Build Coastguard Worker    ],
286*9356374aSAndroid Build Coastguard Worker    copts = ABSL_DEFAULT_COPTS,
287*9356374aSAndroid Build Coastguard Worker    linkopts = ABSL_DEFAULT_LINKOPTS,
288*9356374aSAndroid Build Coastguard Worker    deps = [
289*9356374aSAndroid Build Coastguard Worker        ":usage_internal",
290*9356374aSAndroid Build Coastguard Worker        "//absl/base:config",
291*9356374aSAndroid Build Coastguard Worker        "//absl/base:core_headers",
292*9356374aSAndroid Build Coastguard Worker        "//absl/base:raw_logging_internal",
293*9356374aSAndroid Build Coastguard Worker        "//absl/strings",
294*9356374aSAndroid Build Coastguard Worker        "//absl/synchronization",
295*9356374aSAndroid Build Coastguard Worker    ],
296*9356374aSAndroid Build Coastguard Worker)
297*9356374aSAndroid Build Coastguard Worker
298*9356374aSAndroid Build Coastguard Workercc_library(
299*9356374aSAndroid Build Coastguard Worker    name = "parse",
300*9356374aSAndroid Build Coastguard Worker    srcs = ["parse.cc"],
301*9356374aSAndroid Build Coastguard Worker    hdrs = [
302*9356374aSAndroid Build Coastguard Worker        "internal/parse.h",
303*9356374aSAndroid Build Coastguard Worker        "parse.h",
304*9356374aSAndroid Build Coastguard Worker    ],
305*9356374aSAndroid Build Coastguard Worker    copts = ABSL_DEFAULT_COPTS,
306*9356374aSAndroid Build Coastguard Worker    linkopts = ABSL_DEFAULT_LINKOPTS,
307*9356374aSAndroid Build Coastguard Worker    deps = [
308*9356374aSAndroid Build Coastguard Worker        ":commandlineflag",
309*9356374aSAndroid Build Coastguard Worker        ":commandlineflag_internal",
310*9356374aSAndroid Build Coastguard Worker        ":config",
311*9356374aSAndroid Build Coastguard Worker        ":flag",
312*9356374aSAndroid Build Coastguard Worker        ":flag_internal",
313*9356374aSAndroid Build Coastguard Worker        ":private_handle_accessor",
314*9356374aSAndroid Build Coastguard Worker        ":program_name",
315*9356374aSAndroid Build Coastguard Worker        ":reflection",
316*9356374aSAndroid Build Coastguard Worker        ":usage",
317*9356374aSAndroid Build Coastguard Worker        ":usage_internal",
318*9356374aSAndroid Build Coastguard Worker        "//absl/algorithm:container",
319*9356374aSAndroid Build Coastguard Worker        "//absl/base:config",
320*9356374aSAndroid Build Coastguard Worker        "//absl/base:core_headers",
321*9356374aSAndroid Build Coastguard Worker        "//absl/strings",
322*9356374aSAndroid Build Coastguard Worker        "//absl/synchronization",
323*9356374aSAndroid Build Coastguard Worker    ],
324*9356374aSAndroid Build Coastguard Worker)
325*9356374aSAndroid Build Coastguard Worker
326*9356374aSAndroid Build Coastguard Worker############################################################################
327*9356374aSAndroid Build Coastguard Worker# Unit tests in alphabetical order.
328*9356374aSAndroid Build Coastguard Worker
329*9356374aSAndroid Build Coastguard Workercc_test(
330*9356374aSAndroid Build Coastguard Worker    name = "commandlineflag_test",
331*9356374aSAndroid Build Coastguard Worker    size = "small",
332*9356374aSAndroid Build Coastguard Worker    srcs = [
333*9356374aSAndroid Build Coastguard Worker        "commandlineflag_test.cc",
334*9356374aSAndroid Build Coastguard Worker    ],
335*9356374aSAndroid Build Coastguard Worker    copts = ABSL_TEST_COPTS,
336*9356374aSAndroid Build Coastguard Worker    linkopts = ABSL_DEFAULT_LINKOPTS,
337*9356374aSAndroid Build Coastguard Worker    tags = [
338*9356374aSAndroid Build Coastguard Worker        "no_test:os:android",
339*9356374aSAndroid Build Coastguard Worker        "no_test:os:ios",
340*9356374aSAndroid Build Coastguard Worker        "no_test_android",
341*9356374aSAndroid Build Coastguard Worker        "no_test_ios",
342*9356374aSAndroid Build Coastguard Worker        "no_test_wasm",
343*9356374aSAndroid Build Coastguard Worker    ],
344*9356374aSAndroid Build Coastguard Worker    deps = [
345*9356374aSAndroid Build Coastguard Worker        ":commandlineflag",
346*9356374aSAndroid Build Coastguard Worker        ":config",
347*9356374aSAndroid Build Coastguard Worker        ":flag",
348*9356374aSAndroid Build Coastguard Worker        ":private_handle_accessor",
349*9356374aSAndroid Build Coastguard Worker        ":reflection",
350*9356374aSAndroid Build Coastguard Worker        "//absl/memory",
351*9356374aSAndroid Build Coastguard Worker        "//absl/strings",
352*9356374aSAndroid Build Coastguard Worker        "@com_google_googletest//:gtest",
353*9356374aSAndroid Build Coastguard Worker        "@com_google_googletest//:gtest_main",
354*9356374aSAndroid Build Coastguard Worker    ],
355*9356374aSAndroid Build Coastguard Worker)
356*9356374aSAndroid Build Coastguard Worker
357*9356374aSAndroid Build Coastguard Workercc_test(
358*9356374aSAndroid Build Coastguard Worker    name = "config_test",
359*9356374aSAndroid Build Coastguard Worker    size = "small",
360*9356374aSAndroid Build Coastguard Worker    srcs = [
361*9356374aSAndroid Build Coastguard Worker        "config_test.cc",
362*9356374aSAndroid Build Coastguard Worker    ],
363*9356374aSAndroid Build Coastguard Worker    copts = ABSL_TEST_COPTS,
364*9356374aSAndroid Build Coastguard Worker    linkopts = ABSL_DEFAULT_LINKOPTS,
365*9356374aSAndroid Build Coastguard Worker    deps = [
366*9356374aSAndroid Build Coastguard Worker        ":config",
367*9356374aSAndroid Build Coastguard Worker        "@com_google_googletest//:gtest",
368*9356374aSAndroid Build Coastguard Worker        "@com_google_googletest//:gtest_main",
369*9356374aSAndroid Build Coastguard Worker    ],
370*9356374aSAndroid Build Coastguard Worker)
371*9356374aSAndroid Build Coastguard Worker
372*9356374aSAndroid Build Coastguard Workercc_test(
373*9356374aSAndroid Build Coastguard Worker    name = "flag_test",
374*9356374aSAndroid Build Coastguard Worker    size = "small",
375*9356374aSAndroid Build Coastguard Worker    srcs = [
376*9356374aSAndroid Build Coastguard Worker        "flag_test.cc",
377*9356374aSAndroid Build Coastguard Worker        "flag_test_defs.cc",
378*9356374aSAndroid Build Coastguard Worker    ],
379*9356374aSAndroid Build Coastguard Worker    copts = ABSL_TEST_COPTS,
380*9356374aSAndroid Build Coastguard Worker    linkopts = ABSL_DEFAULT_LINKOPTS,
381*9356374aSAndroid Build Coastguard Worker    tags = [
382*9356374aSAndroid Build Coastguard Worker        "no_test:os:android",
383*9356374aSAndroid Build Coastguard Worker        "no_test:os:ios",
384*9356374aSAndroid Build Coastguard Worker        "no_test_android",
385*9356374aSAndroid Build Coastguard Worker        "no_test_ios",
386*9356374aSAndroid Build Coastguard Worker        "no_test_wasm",
387*9356374aSAndroid Build Coastguard Worker    ],
388*9356374aSAndroid Build Coastguard Worker    deps = [
389*9356374aSAndroid Build Coastguard Worker        ":config",
390*9356374aSAndroid Build Coastguard Worker        ":flag",
391*9356374aSAndroid Build Coastguard Worker        ":flag_internal",
392*9356374aSAndroid Build Coastguard Worker        ":marshalling",
393*9356374aSAndroid Build Coastguard Worker        ":parse",
394*9356374aSAndroid Build Coastguard Worker        ":reflection",
395*9356374aSAndroid Build Coastguard Worker        "//absl/base:core_headers",
396*9356374aSAndroid Build Coastguard Worker        "//absl/base:malloc_internal",
397*9356374aSAndroid Build Coastguard Worker        "//absl/base:raw_logging_internal",
398*9356374aSAndroid Build Coastguard Worker        "//absl/numeric:int128",
399*9356374aSAndroid Build Coastguard Worker        "//absl/strings",
400*9356374aSAndroid Build Coastguard Worker        "//absl/time",
401*9356374aSAndroid Build Coastguard Worker        "//absl/types:optional",
402*9356374aSAndroid Build Coastguard Worker        "@com_google_googletest//:gtest",
403*9356374aSAndroid Build Coastguard Worker        "@com_google_googletest//:gtest_main",
404*9356374aSAndroid Build Coastguard Worker    ],
405*9356374aSAndroid Build Coastguard Worker)
406*9356374aSAndroid Build Coastguard Worker
407*9356374aSAndroid Build Coastguard Workercc_binary(
408*9356374aSAndroid Build Coastguard Worker    name = "flag_benchmark",
409*9356374aSAndroid Build Coastguard Worker    testonly = True,
410*9356374aSAndroid Build Coastguard Worker    srcs = [
411*9356374aSAndroid Build Coastguard Worker        "flag_benchmark.cc",
412*9356374aSAndroid Build Coastguard Worker    ],
413*9356374aSAndroid Build Coastguard Worker    copts = ABSL_TEST_COPTS,
414*9356374aSAndroid Build Coastguard Worker    linkopts = select({
415*9356374aSAndroid Build Coastguard Worker        "//conditions:default": [],
416*9356374aSAndroid Build Coastguard Worker    }) + ABSL_DEFAULT_LINKOPTS,
417*9356374aSAndroid Build Coastguard Worker    tags = ["benchmark"],
418*9356374aSAndroid Build Coastguard Worker    visibility = ["//visibility:private"],
419*9356374aSAndroid Build Coastguard Worker    deps = [
420*9356374aSAndroid Build Coastguard Worker        "flag_benchmark.lds",
421*9356374aSAndroid Build Coastguard Worker        ":flag",
422*9356374aSAndroid Build Coastguard Worker        ":marshalling",
423*9356374aSAndroid Build Coastguard Worker        ":parse",
424*9356374aSAndroid Build Coastguard Worker        ":reflection",
425*9356374aSAndroid Build Coastguard Worker        "//absl/strings",
426*9356374aSAndroid Build Coastguard Worker        "//absl/time",
427*9356374aSAndroid Build Coastguard Worker        "//absl/types:optional",
428*9356374aSAndroid Build Coastguard Worker        "@com_github_google_benchmark//:benchmark_main",
429*9356374aSAndroid Build Coastguard Worker    ],
430*9356374aSAndroid Build Coastguard Worker)
431*9356374aSAndroid Build Coastguard Worker
432*9356374aSAndroid Build Coastguard Workercc_test(
433*9356374aSAndroid Build Coastguard Worker    name = "marshalling_test",
434*9356374aSAndroid Build Coastguard Worker    size = "small",
435*9356374aSAndroid Build Coastguard Worker    srcs = [
436*9356374aSAndroid Build Coastguard Worker        "marshalling_test.cc",
437*9356374aSAndroid Build Coastguard Worker    ],
438*9356374aSAndroid Build Coastguard Worker    copts = ABSL_TEST_COPTS,
439*9356374aSAndroid Build Coastguard Worker    linkopts = ABSL_DEFAULT_LINKOPTS,
440*9356374aSAndroid Build Coastguard Worker    deps = [
441*9356374aSAndroid Build Coastguard Worker        ":marshalling",
442*9356374aSAndroid Build Coastguard Worker        "@com_google_googletest//:gtest",
443*9356374aSAndroid Build Coastguard Worker        "@com_google_googletest//:gtest_main",
444*9356374aSAndroid Build Coastguard Worker    ],
445*9356374aSAndroid Build Coastguard Worker)
446*9356374aSAndroid Build Coastguard Worker
447*9356374aSAndroid Build Coastguard Workercc_test(
448*9356374aSAndroid Build Coastguard Worker    name = "parse_test",
449*9356374aSAndroid Build Coastguard Worker    size = "small",
450*9356374aSAndroid Build Coastguard Worker    timeout = "moderate",
451*9356374aSAndroid Build Coastguard Worker    srcs = [
452*9356374aSAndroid Build Coastguard Worker        "parse_test.cc",
453*9356374aSAndroid Build Coastguard Worker    ],
454*9356374aSAndroid Build Coastguard Worker    copts = ABSL_TEST_COPTS,
455*9356374aSAndroid Build Coastguard Worker    linkopts = ABSL_DEFAULT_LINKOPTS,
456*9356374aSAndroid Build Coastguard Worker    tags = [
457*9356374aSAndroid Build Coastguard Worker        "no_test:os:android",
458*9356374aSAndroid Build Coastguard Worker        "no_test:os:ios",
459*9356374aSAndroid Build Coastguard Worker        "no_test_android",
460*9356374aSAndroid Build Coastguard Worker        "no_test_ios",
461*9356374aSAndroid Build Coastguard Worker        "no_test_wasm",
462*9356374aSAndroid Build Coastguard Worker    ],
463*9356374aSAndroid Build Coastguard Worker    deps = [
464*9356374aSAndroid Build Coastguard Worker        ":config",
465*9356374aSAndroid Build Coastguard Worker        ":flag",
466*9356374aSAndroid Build Coastguard Worker        ":parse",
467*9356374aSAndroid Build Coastguard Worker        ":reflection",
468*9356374aSAndroid Build Coastguard Worker        ":usage_internal",
469*9356374aSAndroid Build Coastguard Worker        "//absl/base:scoped_set_env",
470*9356374aSAndroid Build Coastguard Worker        "//absl/log",
471*9356374aSAndroid Build Coastguard Worker        "//absl/strings",
472*9356374aSAndroid Build Coastguard Worker        "//absl/types:span",
473*9356374aSAndroid Build Coastguard Worker        "@com_google_googletest//:gtest",
474*9356374aSAndroid Build Coastguard Worker        "@com_google_googletest//:gtest_main",
475*9356374aSAndroid Build Coastguard Worker    ],
476*9356374aSAndroid Build Coastguard Worker)
477*9356374aSAndroid Build Coastguard Worker
478*9356374aSAndroid Build Coastguard Workercc_test(
479*9356374aSAndroid Build Coastguard Worker    name = "path_util_test",
480*9356374aSAndroid Build Coastguard Worker    size = "small",
481*9356374aSAndroid Build Coastguard Worker    srcs = [
482*9356374aSAndroid Build Coastguard Worker        "internal/path_util_test.cc",
483*9356374aSAndroid Build Coastguard Worker    ],
484*9356374aSAndroid Build Coastguard Worker    copts = ABSL_TEST_COPTS,
485*9356374aSAndroid Build Coastguard Worker    linkopts = ABSL_DEFAULT_LINKOPTS,
486*9356374aSAndroid Build Coastguard Worker    deps = [
487*9356374aSAndroid Build Coastguard Worker        ":path_util",
488*9356374aSAndroid Build Coastguard Worker        "@com_google_googletest//:gtest",
489*9356374aSAndroid Build Coastguard Worker        "@com_google_googletest//:gtest_main",
490*9356374aSAndroid Build Coastguard Worker    ],
491*9356374aSAndroid Build Coastguard Worker)
492*9356374aSAndroid Build Coastguard Worker
493*9356374aSAndroid Build Coastguard Workercc_test(
494*9356374aSAndroid Build Coastguard Worker    name = "program_name_test",
495*9356374aSAndroid Build Coastguard Worker    size = "small",
496*9356374aSAndroid Build Coastguard Worker    srcs = [
497*9356374aSAndroid Build Coastguard Worker        "internal/program_name_test.cc",
498*9356374aSAndroid Build Coastguard Worker    ],
499*9356374aSAndroid Build Coastguard Worker    copts = ABSL_TEST_COPTS,
500*9356374aSAndroid Build Coastguard Worker    linkopts = ABSL_DEFAULT_LINKOPTS,
501*9356374aSAndroid Build Coastguard Worker    tags = ["no_test_wasm"],
502*9356374aSAndroid Build Coastguard Worker    deps = [
503*9356374aSAndroid Build Coastguard Worker        ":program_name",
504*9356374aSAndroid Build Coastguard Worker        "//absl/strings",
505*9356374aSAndroid Build Coastguard Worker        "@com_google_googletest//:gtest",
506*9356374aSAndroid Build Coastguard Worker        "@com_google_googletest//:gtest_main",
507*9356374aSAndroid Build Coastguard Worker    ],
508*9356374aSAndroid Build Coastguard Worker)
509*9356374aSAndroid Build Coastguard Worker
510*9356374aSAndroid Build Coastguard Workercc_test(
511*9356374aSAndroid Build Coastguard Worker    name = "reflection_test",
512*9356374aSAndroid Build Coastguard Worker    size = "small",
513*9356374aSAndroid Build Coastguard Worker    srcs = [
514*9356374aSAndroid Build Coastguard Worker        "reflection_test.cc",
515*9356374aSAndroid Build Coastguard Worker    ],
516*9356374aSAndroid Build Coastguard Worker    copts = ABSL_TEST_COPTS,
517*9356374aSAndroid Build Coastguard Worker    linkopts = ABSL_DEFAULT_LINKOPTS,
518*9356374aSAndroid Build Coastguard Worker    tags = [
519*9356374aSAndroid Build Coastguard Worker        "no_test:os:android",
520*9356374aSAndroid Build Coastguard Worker        "no_test:os:ios",
521*9356374aSAndroid Build Coastguard Worker        "no_test_android",
522*9356374aSAndroid Build Coastguard Worker        "no_test_ios",
523*9356374aSAndroid Build Coastguard Worker        "no_test_wasm",
524*9356374aSAndroid Build Coastguard Worker    ],
525*9356374aSAndroid Build Coastguard Worker    deps = [
526*9356374aSAndroid Build Coastguard Worker        ":config",
527*9356374aSAndroid Build Coastguard Worker        ":flag",
528*9356374aSAndroid Build Coastguard Worker        ":reflection",
529*9356374aSAndroid Build Coastguard Worker        "//absl/memory",
530*9356374aSAndroid Build Coastguard Worker        "//absl/strings",
531*9356374aSAndroid Build Coastguard Worker        "@com_google_googletest//:gtest",
532*9356374aSAndroid Build Coastguard Worker        "@com_google_googletest//:gtest_main",
533*9356374aSAndroid Build Coastguard Worker    ],
534*9356374aSAndroid Build Coastguard Worker)
535*9356374aSAndroid Build Coastguard Worker
536*9356374aSAndroid Build Coastguard Workercc_test(
537*9356374aSAndroid Build Coastguard Worker    name = "sequence_lock_test",
538*9356374aSAndroid Build Coastguard Worker    size = "small",
539*9356374aSAndroid Build Coastguard Worker    timeout = "moderate",
540*9356374aSAndroid Build Coastguard Worker    srcs = [
541*9356374aSAndroid Build Coastguard Worker        "internal/sequence_lock_test.cc",
542*9356374aSAndroid Build Coastguard Worker    ],
543*9356374aSAndroid Build Coastguard Worker    copts = ABSL_TEST_COPTS,
544*9356374aSAndroid Build Coastguard Worker    linkopts = ABSL_DEFAULT_LINKOPTS,
545*9356374aSAndroid Build Coastguard Worker    shard_count = 31,
546*9356374aSAndroid Build Coastguard Worker    tags = ["no_test_wasm"],
547*9356374aSAndroid Build Coastguard Worker    deps = [
548*9356374aSAndroid Build Coastguard Worker        ":flag_internal",
549*9356374aSAndroid Build Coastguard Worker        "//absl/base",
550*9356374aSAndroid Build Coastguard Worker        "//absl/container:fixed_array",
551*9356374aSAndroid Build Coastguard Worker        "//absl/time",
552*9356374aSAndroid Build Coastguard Worker        "@com_google_googletest//:gtest",
553*9356374aSAndroid Build Coastguard Worker        "@com_google_googletest//:gtest_main",
554*9356374aSAndroid Build Coastguard Worker    ],
555*9356374aSAndroid Build Coastguard Worker)
556*9356374aSAndroid Build Coastguard Worker
557*9356374aSAndroid Build Coastguard Workercc_test(
558*9356374aSAndroid Build Coastguard Worker    name = "usage_config_test",
559*9356374aSAndroid Build Coastguard Worker    size = "small",
560*9356374aSAndroid Build Coastguard Worker    srcs = [
561*9356374aSAndroid Build Coastguard Worker        "usage_config_test.cc",
562*9356374aSAndroid Build Coastguard Worker    ],
563*9356374aSAndroid Build Coastguard Worker    copts = ABSL_TEST_COPTS,
564*9356374aSAndroid Build Coastguard Worker    linkopts = ABSL_DEFAULT_LINKOPTS,
565*9356374aSAndroid Build Coastguard Worker    deps = [
566*9356374aSAndroid Build Coastguard Worker        ":config",
567*9356374aSAndroid Build Coastguard Worker        ":path_util",
568*9356374aSAndroid Build Coastguard Worker        ":program_name",
569*9356374aSAndroid Build Coastguard Worker        "//absl/strings",
570*9356374aSAndroid Build Coastguard Worker        "@com_google_googletest//:gtest",
571*9356374aSAndroid Build Coastguard Worker        "@com_google_googletest//:gtest_main",
572*9356374aSAndroid Build Coastguard Worker    ],
573*9356374aSAndroid Build Coastguard Worker)
574*9356374aSAndroid Build Coastguard Worker
575*9356374aSAndroid Build Coastguard Workercc_test(
576*9356374aSAndroid Build Coastguard Worker    name = "usage_test",
577*9356374aSAndroid Build Coastguard Worker    size = "small",
578*9356374aSAndroid Build Coastguard Worker    srcs = [
579*9356374aSAndroid Build Coastguard Worker        "internal/usage_test.cc",
580*9356374aSAndroid Build Coastguard Worker    ],
581*9356374aSAndroid Build Coastguard Worker    copts = ABSL_TEST_COPTS,
582*9356374aSAndroid Build Coastguard Worker    linkopts = ABSL_DEFAULT_LINKOPTS,
583*9356374aSAndroid Build Coastguard Worker    tags = [
584*9356374aSAndroid Build Coastguard Worker        "no_test:os:android",
585*9356374aSAndroid Build Coastguard Worker        "no_test:os:ios",
586*9356374aSAndroid Build Coastguard Worker        "no_test_android",
587*9356374aSAndroid Build Coastguard Worker        "no_test_ios",
588*9356374aSAndroid Build Coastguard Worker        "no_test_wasm",
589*9356374aSAndroid Build Coastguard Worker    ],
590*9356374aSAndroid Build Coastguard Worker    deps = [
591*9356374aSAndroid Build Coastguard Worker        ":config",
592*9356374aSAndroid Build Coastguard Worker        ":flag",
593*9356374aSAndroid Build Coastguard Worker        ":parse",
594*9356374aSAndroid Build Coastguard Worker        ":path_util",
595*9356374aSAndroid Build Coastguard Worker        ":program_name",
596*9356374aSAndroid Build Coastguard Worker        ":reflection",
597*9356374aSAndroid Build Coastguard Worker        ":usage",
598*9356374aSAndroid Build Coastguard Worker        ":usage_internal",
599*9356374aSAndroid Build Coastguard Worker        "//absl/strings",
600*9356374aSAndroid Build Coastguard Worker        "@com_google_googletest//:gtest",
601*9356374aSAndroid Build Coastguard Worker    ],
602*9356374aSAndroid Build Coastguard Worker)
603