blob: 58a85273ca9370e82ec46aa86a8ff0ebd4284701 [file]
"""Generated definition of android_grpc_library."""
load("//android:android_grpc_compile.bzl", "android_grpc_compile")
load("//internal:compile.bzl", "proto_compile_attrs")
load("@build_bazel_rules_android//android:rules.bzl", "android_library")
def android_grpc_library(name, **kwargs):
# Compile protos
name_pb = name + "_pb"
android_grpc_compile(
name = name_pb,
**{
k: v
for (k, v) in kwargs.items()
if k in ["protos" if "protos" in kwargs else "deps"] + proto_compile_attrs.keys()
} # Forward args
)
# Create android library
android_library(
name = name,
srcs = [name_pb],
deps = GRPC_DEPS + (kwargs.get("deps", []) if "protos" in kwargs else []),
exports = GRPC_DEPS + kwargs.get("exports", []),
visibility = kwargs.get("visibility"),
tags = kwargs.get("tags"),
)
GRPC_DEPS = [
"@io_grpc_grpc_java//api",
"@io_grpc_grpc_java//protobuf-lite",
"@io_grpc_grpc_java//stub",
"@io_grpc_grpc_java//stub:javax_annotation",
"@com_google_code_findbugs_jsr305//jar",
"@com_google_guava_guava//jar",
"@com_google_protobuf//:protobuf_javalite",
"@com_google_protobuf//:protobuf_java_util",
Label("//android:well_known_protos"), # Lite is missing gen_well_known_protos_java from protobuf, compile them manually
]