diff --git a/MODULE.bazel b/MODULE.bazel index d1afa5a..123e24d 100644 --- a/MODULE.bazel +++ b/MODULE.bazel @@ -7,6 +7,7 @@ module( bazel_dep(name = "bazel_features", version = "1.19.0") bazel_dep(name = "bazel_skylib", version = "1.7.1") bazel_dep(name = "platforms", version = "0.0.10") +bazel_dep(name = "protobuf", version = "27.0", repo_name = "com_google_protobuf") cc_configure = use_extension("//cc:extensions.bzl", "cc_configure_extension") use_repo(cc_configure, "local_config_cc", "local_config_cc_toolchains") diff --git a/WORKSPACE b/WORKSPACE index 4955620..ce5112f 100644 --- a/WORKSPACE +++ b/WORKSPACE @@ -43,3 +43,10 @@ http_archive( strip_prefix = "rules_testing-0.6.0", url = "https://github.com/bazelbuild/rules_testing/releases/download/v0.6.0/rules_testing-v0.6.0.tar.gz", ) + +http_archive( + name = "com_google_protobuf", + sha256 = "da288bf1daa6c04d03a9051781caa52aceb9163586bff9aa6cfb12f69b9395aa", + strip_prefix = "protobuf-27.0", + url = "https://github.com/protocolbuffers/protobuf/releases/download/v27.0/protobuf-27.0.tar.gz", +) diff --git a/cc/defs.bzl b/cc/defs.bzl index 3448e77..4fccdcc 100644 --- a/cc/defs.bzl +++ b/cc/defs.bzl @@ -13,6 +13,7 @@ # limitations under the License. """Starlark rules for building C++ projects.""" +load("@com_google_protobuf//bazel:cc_proto_library.bzl", _cc_proto_library = "cc_proto_library") load("//cc:cc_binary.bzl", _cc_binary = "cc_binary") load("//cc:cc_import.bzl", _cc_import = "cc_import") load("//cc:cc_library.bzl", _cc_library = "cc_library") @@ -42,6 +43,13 @@ cc_shared_library = _cc_shared_library objc_library = _objc_library objc_import = _objc_import +# DEPRECATED: use rule from com_google_protobuf repository +def cc_proto_library(**kwargs): + if "deprecation" not in kwargs: + _cc_proto_library(deprecation = "Use cc_proto_library from com_google_protobuf", **kwargs) + else: + _cc_proto_library(**kwargs) + # Toolchain rules cc_toolchain = _cc_toolchain