From 143e983739333ce4b30320d26bce8594bd24b5f3 Mon Sep 17 00:00:00 2001 From: Derek Mauro Date: Tue, 10 Oct 2023 13:29:16 -0700 Subject: Bazel: Support layering_check and parse_headers The layering_check feature ensures that rules that include a header explicitly depend on a rule that exports that header. Compiler support is required, and currently only Clang 16+ supports diagnoses layering_check failures. The parse_headers feature ensures headers are self-contained by compiling them with -fsyntax-only on supported compilers. PiperOrigin-RevId: 572350144 Change-Id: I37297f761566d686d9dd58d318979d688b7e36d1 --- absl/base/BUILD.bazel | 31 ++++++++++++++++++++++++++++++- 1 file changed, 30 insertions(+), 1 deletion(-) (limited to 'absl/base') diff --git a/absl/base/BUILD.bazel b/absl/base/BUILD.bazel index a1418553..eeec68a2 100644 --- a/absl/base/BUILD.bazel +++ b/absl/base/BUILD.bazel @@ -21,7 +21,13 @@ load( "ABSL_TEST_COPTS", ) -package(default_visibility = ["//visibility:public"]) +package( + default_visibility = ["//visibility:public"], + features = [ + "layering_check", + "parse_headers", + ], +) licenses(["notice"]) @@ -301,6 +307,7 @@ cc_test( ":atomic_hook", ":atomic_hook_test_helper", ":core_headers", + "@com_google_googletest//:gtest", "@com_google_googletest//:gtest_main", ], ) @@ -316,6 +323,7 @@ cc_test( deps = [ ":base", ":core_headers", + "@com_google_googletest//:gtest", "@com_google_googletest//:gtest_main", ], ) @@ -343,6 +351,7 @@ cc_test( deps = [ ":config", ":throw_delegate", + "@com_google_googletest//:gtest", "@com_google_googletest//:gtest_main", ], ) @@ -356,6 +365,7 @@ cc_test( deps = [ ":errno_saver", ":strerror", + "@com_google_googletest//:gtest", "@com_google_googletest//:gtest_main", ], ) @@ -410,6 +420,7 @@ cc_test( deps = [ ":exception_safety_testing", "//absl/memory", + "@com_google_googletest//:gtest", "@com_google_googletest//:gtest_main", ], ) @@ -427,6 +438,7 @@ cc_test( linkopts = ABSL_DEFAULT_LINKOPTS, deps = [ ":base_internal", + "@com_google_googletest//:gtest", "@com_google_googletest//:gtest_main", ], ) @@ -441,6 +453,7 @@ cc_test( ":base_internal", "//absl/memory", "//absl/strings", + "@com_google_googletest//:gtest", "@com_google_googletest//:gtest_main", ], ) @@ -479,6 +492,7 @@ cc_test( ":config", ":core_headers", "//absl/synchronization", + "@com_google_googletest//:gtest", "@com_google_googletest//:gtest_main", ], ) @@ -536,6 +550,7 @@ cc_test( deps = [ ":config", ":endian", + "@com_google_googletest//:gtest", "@com_google_googletest//:gtest_main", ], ) @@ -548,6 +563,7 @@ cc_test( deps = [ ":config", "//absl/synchronization:thread_pool", + "@com_google_googletest//:gtest", "@com_google_googletest//:gtest_main", ], ) @@ -561,6 +577,7 @@ cc_test( ":base", ":core_headers", "//absl/synchronization", + "@com_google_googletest//:gtest", "@com_google_googletest//:gtest_main", ], ) @@ -571,6 +588,7 @@ cc_test( deps = [ ":core_headers", ":nullability", + "@com_google_googletest//:gtest", "@com_google_googletest//:gtest_main", ], ) @@ -583,6 +601,7 @@ cc_test( deps = [ ":raw_logging_internal", "//absl/strings", + "@com_google_googletest//:gtest", "@com_google_googletest//:gtest_main", ], ) @@ -596,6 +615,7 @@ cc_test( deps = [ ":base", "//absl/synchronization", + "@com_google_googletest//:gtest", "@com_google_googletest//:gtest_main", ], ) @@ -629,6 +649,7 @@ cc_test( ":base", ":core_headers", "//absl/synchronization", + "@com_google_googletest//:gtest", "@com_google_googletest//:gtest_main", ], ) @@ -644,6 +665,7 @@ cc_test( ":base", "//absl/synchronization", "@com_github_google_benchmark//:benchmark_main", + "@com_google_googletest//:gtest", ], ) @@ -670,6 +692,7 @@ cc_test( linkopts = ABSL_DEFAULT_LINKOPTS, deps = [ ":scoped_set_env", + "@com_google_googletest//:gtest", "@com_google_googletest//:gtest_main", ], ) @@ -685,6 +708,7 @@ cc_test( "//absl/flags:flag_internal", "//absl/flags:marshalling", "//absl/strings", + "@com_google_googletest//:gtest", "@com_google_googletest//:gtest_main", ], ) @@ -714,6 +738,7 @@ cc_test( deps = [ ":strerror", "//absl/strings", + "@com_google_googletest//:gtest", "@com_google_googletest//:gtest_main", ], ) @@ -753,6 +778,7 @@ cc_test( linkopts = ABSL_DEFAULT_LINKOPTS, deps = [ ":fast_type_id", + "@com_google_googletest//:gtest", "@com_google_googletest//:gtest_main", ], ) @@ -780,6 +806,7 @@ cc_test( linkopts = ABSL_DEFAULT_LINKOPTS, deps = [ ":prefetch", + "@com_google_googletest//:gtest", "@com_google_googletest//:gtest_main", ], ) @@ -794,6 +821,7 @@ cc_test( deps = [ ":core_headers", "//absl/strings", + "@com_google_googletest//:gtest", "@com_google_googletest//:gtest_main", ], ) @@ -807,6 +835,7 @@ cc_test( deps = [ ":core_headers", "//absl/types:optional", + "@com_google_googletest//:gtest", "@com_google_googletest//:gtest_main", ], ) -- cgit v1.2.3