aboutsummaryrefslogtreecommitdiffhomepage
path: root/bazel
diff options
context:
space:
mode:
authorGravatar Craig Tiller <ctiller@google.com>2017-05-16 13:09:33 -0700
committerGravatar Craig Tiller <ctiller@google.com>2017-05-16 13:09:33 -0700
commita753371f05dd116df3f27a18eb6e08e1ed0c1b4f (patch)
tree7419dc13ad015fd2e2c36a975f9d1e317e5629b0 /bazel
parenta3eac51e1e8eb9ace390d181d328de8fce009a5b (diff)
Rework well_known_protos attr, and some other fixes
Diffstat (limited to 'bazel')
-rw-r--r--bazel/cc_grpc_library.bzl5
-rw-r--r--bazel/generate_cc.bzl8
-rw-r--r--bazel/grpc_build_system.bzl2
3 files changed, 10 insertions, 5 deletions
diff --git a/bazel/cc_grpc_library.bzl b/bazel/cc_grpc_library.bzl
index 0600bb9e30..afc5543795 100644
--- a/bazel/cc_grpc_library.bzl
+++ b/bazel/cc_grpc_library.bzl
@@ -12,9 +12,8 @@ def cc_grpc_library(name, srcs, deps, proto_only, well_known_protos, generate_mo
srcs: a single proto_library, which wraps the .proto files with services.
deps: a list of C++ proto_library (or cc_proto_library) which provides
the compiled code of any message that the services depend on.
- well_known_protos: The target from protobuf library that exports well
- known protos. Currently it will only work if the value is
- "@com_google_protobuf//:well_known_protos"
+ well_known_protos: Should this library additionally depend on well known
+ protos
use_external: When True the grpc deps are prefixed with //external. This
allows grpc to be used as a dependency in other bazel projects.
generate_mock: When true GMOCk code for client stub is generated.
diff --git a/bazel/generate_cc.bzl b/bazel/generate_cc.bzl
index d05509fc15..7fffb58218 100644
--- a/bazel/generate_cc.bzl
+++ b/bazel/generate_cc.bzl
@@ -57,7 +57,7 @@ def generate_cc_impl(ctx):
return struct(files=set(out_files))
-generate_cc = rule(
+_generate_cc = rule(
attrs = {
"srcs": attr.label_list(
mandatory = True,
@@ -90,3 +90,9 @@ generate_cc = rule(
output_to_genfiles = True,
implementation = generate_cc_impl,
)
+
+def generate_cc(well_known_protos, **kwargs):
+ if well_known_protos:
+ _generate_cc(well_known_protos="@com_google_protobuf//:well_known_protos", **kwargs)
+ else:
+ _generate_cc(**kwargs)
diff --git a/bazel/grpc_build_system.bzl b/bazel/grpc_build_system.bzl
index 0f66edbcd0..b19c85c962 100644
--- a/bazel/grpc_build_system.bzl
+++ b/bazel/grpc_build_system.bzl
@@ -67,7 +67,7 @@ def grpc_proto_plugin(name, srcs = [], deps = []):
load("//:bazel/cc_grpc_library.bzl", "cc_grpc_library")
-def grpc_proto_library(name, srcs = [], deps = [], well_known_protos = None,
+def grpc_proto_library(name, srcs = [], deps = [], well_known_protos = False,
has_services = True, use_external = False, generate_mock = False):
cc_grpc_library(
name = name,