Move coverage script / flag to public package (#867)
Test rules that can produce coverage for transitive cc rules need to
reference this script with something like:
```bzl
"_collect_cc_coverage": attr.label(
default = "@rules_cc//cc/coverage:collect_cc_coverage",
executable = True,
cfg = config.exec(exec_group = "test"),
)
```
So it shouldn't be private.
Closes #867
COPYBARA_INTEGRATE_REVIEW=https://github.com/bazelbuild/rules_cc/pull/867 from keith:ks/move-coverage-script-flag-to-public-package 3c01cb716b13b59e569246749d031c46d0ab584b
PiperOrigin-RevId: 981202792
Change-Id: I977b04e69987c9bf022cfdf7594ea4e37d4788da
diff --git a/cc/BUILD b/cc/BUILD
index 10f735a..615b430 100644
--- a/cc/BUILD
+++ b/cc/BUILD
@@ -78,6 +78,7 @@
]) + [
"//cc/common:srcs",
"//cc/compiler:srcs",
+ "//cc/coverage:srcs",
"//cc/private:srcs",
"//cc/proto:srcs",
"//cc/runfiles:srcs",
diff --git a/cc/common/semantics.bzl b/cc/common/semantics.bzl
index fdb403c..1f61516 100644
--- a/cc/common/semantics.bzl
+++ b/cc/common/semantics.bzl
@@ -91,7 +91,7 @@
cfg = config.exec(exec_group = "test"),
),
"_collect_cc_coverage": attr.label(
- default = Label("//cc/private/coverage:collect_cc_coverage"),
+ default = Label("//cc/coverage:collect_cc_coverage"),
executable = True,
cfg = config.exec(exec_group = "test"),
),
diff --git a/cc/coverage/BUILD.bazel b/cc/coverage/BUILD.bazel
new file mode 100644
index 0000000..7a5370e
--- /dev/null
+++ b/cc/coverage/BUILD.bazel
@@ -0,0 +1,23 @@
+config_setting(
+ name = "incompatible_use_native_collect_cc_coverage_enabled",
+ flag_values = {
+ "//cc/settings:incompatible_use_native_collect_cc_coverage": "true",
+ },
+)
+
+filegroup(
+ name = "collect_cc_coverage",
+ srcs = select({
+ ":incompatible_use_native_collect_cc_coverage_enabled": ["@bazel_tools//tools/test:collect_cc_coverage"],
+ "//conditions:default": ["collect_cc_coverage.sh"],
+ }),
+ visibility = ["//visibility:public"],
+)
+
+filegroup(
+ name = "srcs",
+ srcs = glob([
+ "**",
+ ]),
+ visibility = ["//visibility:public"],
+)
diff --git a/cc/private/coverage/collect_cc_coverage.sh b/cc/coverage/collect_cc_coverage.sh
similarity index 100%
rename from cc/private/coverage/collect_cc_coverage.sh
rename to cc/coverage/collect_cc_coverage.sh
diff --git a/cc/private/BUILD b/cc/private/BUILD
index 475461f..9959fec 100644
--- a/cc/private/BUILD
+++ b/cc/private/BUILD
@@ -36,7 +36,6 @@
]) + [
"//cc/private/bazel7:BUILD",
"//cc/private/compile:srcs",
- "//cc/private/coverage:srcs",
"//cc/private/link:srcs",
"//cc/private/rules_impl:srcs",
"//cc/private/toolchain:srcs",
diff --git a/cc/private/coverage/BUILD.bazel b/cc/private/coverage/BUILD.bazel
index 7a5370e..198fd6a 100644
--- a/cc/private/coverage/BUILD.bazel
+++ b/cc/private/coverage/BUILD.bazel
@@ -1,23 +1,6 @@
-config_setting(
- name = "incompatible_use_native_collect_cc_coverage_enabled",
- flag_values = {
- "//cc/settings:incompatible_use_native_collect_cc_coverage": "true",
- },
-)
-
-filegroup(
+alias(
name = "collect_cc_coverage",
- srcs = select({
- ":incompatible_use_native_collect_cc_coverage_enabled": ["@bazel_tools//tools/test:collect_cc_coverage"],
- "//conditions:default": ["collect_cc_coverage.sh"],
- }),
- visibility = ["//visibility:public"],
-)
-
-filegroup(
- name = "srcs",
- srcs = glob([
- "**",
- ]),
+ actual = "//cc/coverage:collect_cc_coverage",
+ deprecation = "Please use //cc/coverage:collect_cc_coverage instead.",
visibility = ["//visibility:public"],
)