From 6e18829339a5ba839ab129c64bd9333d3d8c1e5a Mon Sep 17 00:00:00 2001 From: kshyanashree <109167932+kshyanashree@users.noreply.github.com> Date: Thu, 6 Apr 2023 07:01:29 -0700 Subject: [PATCH] [6.2.0]Expose cc_proto_aspect as a toplevel symbol. (#17980) * Expose cc_proto_aspect as a toplevel symbol. PiperOrigin-RevId: 520619683 Change-Id: Ief39fdc3ea9083c22fbf12d2b4ba79482c3c16bf * Update CcRules.java * Revert change * Revert change * Revert * Update exports.bzl --------- Co-authored-by: Googler Co-authored-by: keertk --- .../com/google/devtools/build/lib/bazel/rules/CcRules.java | 1 + src/main/starlark/builtins_bzl/bazel/exports.bzl | 7 +++++-- .../starlark/builtins_bzl/common/cc/cc_proto_library.bzl | 4 ++-- .../build/lib/rules/cpp/proto/CcProtoLibraryTest.java | 2 +- 4 files changed, 9 insertions(+), 5 deletions(-) diff --git a/src/main/java/com/google/devtools/build/lib/bazel/rules/CcRules.java b/src/main/java/com/google/devtools/build/lib/bazel/rules/CcRules.java index b9a75e2aab11e9..cd749903685c85 100644 --- a/src/main/java/com/google/devtools/build/lib/bazel/rules/CcRules.java +++ b/src/main/java/com/google/devtools/build/lib/bazel/rules/CcRules.java @@ -65,6 +65,7 @@ public void init(ConfiguredRuleClassProvider.Builder builder) { GraphNodeAspect graphNodeAspect = new GraphNodeAspect(); builder.addConfigurationFragment(CppConfiguration.class); builder.addStarlarkAccessibleTopLevels("CcSharedLibraryInfo", Starlark.NONE); + builder.addStarlarkAccessibleTopLevels("cc_proto_aspect", Starlark.NONE); builder.addBuildInfoFactory(new CppBuildInfo()); builder.addNativeAspectClass(graphNodeAspect); diff --git a/src/main/starlark/builtins_bzl/bazel/exports.bzl b/src/main/starlark/builtins_bzl/bazel/exports.bzl index f4bd5dc1ff9844..ac3baeb53b9f4e 100644 --- a/src/main/starlark/builtins_bzl/bazel/exports.bzl +++ b/src/main/starlark/builtins_bzl/bazel/exports.bzl @@ -17,9 +17,12 @@ load("@_builtins//:common/java/java_library.bzl", "java_library") load("@_builtins//:common/java/java_plugin.bzl", "java_plugin") load("@_builtins//:common/java/proto/java_proto_library.bzl", "java_proto_library") -load("@_builtins//:common/cc/cc_proto_library.bzl", "cc_proto_library") +load("@_builtins//:common/cc/cc_proto_library.bzl", "cc_proto_aspect", "cc_proto_library") + +exported_toplevels = { + "cc_proto_aspect": cc_proto_aspect +} -exported_toplevels = {} exported_rules = { "java_library": java_library, "java_plugin": java_plugin, diff --git a/src/main/starlark/builtins_bzl/common/cc/cc_proto_library.bzl b/src/main/starlark/builtins_bzl/common/cc/cc_proto_library.bzl index 160a7c015580b0..52f43f866abf36 100644 --- a/src/main/starlark/builtins_bzl/common/cc/cc_proto_library.bzl +++ b/src/main/starlark/builtins_bzl/common/cc/cc_proto_library.bzl @@ -256,7 +256,7 @@ def _aspect_impl(target, ctx): providers.append(header_provider) return providers -_cc_proto_aspect = aspect( +cc_proto_aspect = aspect( implementation = _aspect_impl, attr_aspects = ["deps"], fragments = ["cpp", "proto"], @@ -290,7 +290,7 @@ cc_proto_library = rule( implementation = _impl, attrs = { "deps": attr.label_list( - aspects = [_cc_proto_aspect], + aspects = [cc_proto_aspect], allow_rules = ["proto_library"], allow_files = False, ), diff --git a/src/test/java/com/google/devtools/build/lib/rules/cpp/proto/CcProtoLibraryTest.java b/src/test/java/com/google/devtools/build/lib/rules/cpp/proto/CcProtoLibraryTest.java index c4fa13fbbf0428..271b591d538e2f 100644 --- a/src/test/java/com/google/devtools/build/lib/rules/cpp/proto/CcProtoLibraryTest.java +++ b/src/test/java/com/google/devtools/build/lib/rules/cpp/proto/CcProtoLibraryTest.java @@ -51,7 +51,7 @@ public class CcProtoLibraryTest extends BuildViewTestCase { private final StarlarkAspectClass starlarkCcProtoAspect = new StarlarkAspectClass( Label.parseAbsoluteUnchecked("@_builtins//:common/cc/cc_proto_library.bzl"), - "_cc_proto_aspect"); + "cc_proto_aspect"); @Before public void setUp() throws Exception {