1*14675a02SAndroid Build Coastguard Worker# Copyright 2019 Google LLC 2*14675a02SAndroid Build Coastguard Worker# 3*14675a02SAndroid Build Coastguard Worker# Licensed under the Apache License, Version 2.0 (the "License"); 4*14675a02SAndroid Build Coastguard Worker# you may not use this file except in compliance with the License. 5*14675a02SAndroid Build Coastguard Worker# You may obtain a copy of the License at 6*14675a02SAndroid Build Coastguard Worker# 7*14675a02SAndroid Build Coastguard Worker# http://www.apache.org/licenses/LICENSE-2.0 8*14675a02SAndroid Build Coastguard Worker# 9*14675a02SAndroid Build Coastguard Worker# Unless required by applicable law or agreed to in writing, software 10*14675a02SAndroid Build Coastguard Worker# distributed under the License is distributed on an "AS IS" BASIS, 11*14675a02SAndroid Build Coastguard Worker# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12*14675a02SAndroid Build Coastguard Worker# See the License for the specific language governing permissions and 13*14675a02SAndroid Build Coastguard Worker# limitations under the License. 14*14675a02SAndroid Build Coastguard Worker 15*14675a02SAndroid Build Coastguard Workerload("@com_github_grpc_grpc//bazel:cc_grpc_library.bzl", "cc_grpc_library") 16*14675a02SAndroid Build Coastguard Workerload("@org_tensorflow//tensorflow/core/platform:build_config.bzl", "tf_proto_library") 17*14675a02SAndroid Build Coastguard Workerload("@com_github_grpc_grpc//bazel:python_rules.bzl", "py_proto_library") 18*14675a02SAndroid Build Coastguard Worker 19*14675a02SAndroid Build Coastguard Workerdefault_visibility = [ 20*14675a02SAndroid Build Coastguard Worker "//visibility:public", 21*14675a02SAndroid Build Coastguard Worker] 22*14675a02SAndroid Build Coastguard Worker 23*14675a02SAndroid Build Coastguard Workerpackage( 24*14675a02SAndroid Build Coastguard Worker default_visibility = default_visibility, 25*14675a02SAndroid Build Coastguard Worker licenses = ["notice"], # Apache 2.0 26*14675a02SAndroid Build Coastguard Worker) 27*14675a02SAndroid Build Coastguard Worker 28*14675a02SAndroid Build Coastguard Worker# -------------------------------------------------------------------- 29*14675a02SAndroid Build Coastguard Worker# federated_api.proto 30*14675a02SAndroid Build Coastguard Worker 31*14675a02SAndroid Build Coastguard Worker# The api protos. 32*14675a02SAndroid Build Coastguard Workerproto_library( 33*14675a02SAndroid Build Coastguard Worker name = "federated_api_proto", 34*14675a02SAndroid Build Coastguard Worker srcs = ["federated_api.proto"], 35*14675a02SAndroid Build Coastguard Worker deps = [ 36*14675a02SAndroid Build Coastguard Worker "//fcp/secagg/shared:proto", 37*14675a02SAndroid Build Coastguard Worker "@com_google_googleapis//google/rpc:code_proto", 38*14675a02SAndroid Build Coastguard Worker "@com_google_protobuf//:any_proto", 39*14675a02SAndroid Build Coastguard Worker "@com_google_protobuf//:duration_proto", 40*14675a02SAndroid Build Coastguard Worker ], 41*14675a02SAndroid Build Coastguard Worker) 42*14675a02SAndroid Build Coastguard Worker 43*14675a02SAndroid Build Coastguard Workerpy_proto_library( 44*14675a02SAndroid Build Coastguard Worker name = "federated_api_py_pb2", 45*14675a02SAndroid Build Coastguard Worker deps = [":federated_api_proto"], 46*14675a02SAndroid Build Coastguard Worker) 47*14675a02SAndroid Build Coastguard Worker 48*14675a02SAndroid Build Coastguard Workerjava_proto_library( 49*14675a02SAndroid Build Coastguard Worker name = "federated_api_java_proto", 50*14675a02SAndroid Build Coastguard Worker deps = [":federated_api_proto"], 51*14675a02SAndroid Build Coastguard Worker) 52*14675a02SAndroid Build Coastguard Worker 53*14675a02SAndroid Build Coastguard Workercc_proto_library( 54*14675a02SAndroid Build Coastguard Worker name = "federated_api_cc_proto", 55*14675a02SAndroid Build Coastguard Worker deps = [":federated_api_proto"], 56*14675a02SAndroid Build Coastguard Worker) 57*14675a02SAndroid Build Coastguard Worker 58*14675a02SAndroid Build Coastguard Workercc_grpc_library( 59*14675a02SAndroid Build Coastguard Worker name = "cc_grpc", 60*14675a02SAndroid Build Coastguard Worker srcs = [":federated_api_proto"], 61*14675a02SAndroid Build Coastguard Worker generate_mocks = True, 62*14675a02SAndroid Build Coastguard Worker grpc_only = True, 63*14675a02SAndroid Build Coastguard Worker deps = [":federated_api_cc_proto"], 64*14675a02SAndroid Build Coastguard Worker) 65*14675a02SAndroid Build Coastguard Worker 66*14675a02SAndroid Build Coastguard Worker# -------------------------------------------------------------------- 67*14675a02SAndroid Build Coastguard Worker# plan.proto 68*14675a02SAndroid Build Coastguard Worker 69*14675a02SAndroid Build Coastguard Worker# Using tf_proto_library to get dependencies to TF protos built correctly. 70*14675a02SAndroid Build Coastguard Workertf_proto_library( 71*14675a02SAndroid Build Coastguard Worker name = "plan_proto", 72*14675a02SAndroid Build Coastguard Worker srcs = ["plan.proto"], 73*14675a02SAndroid Build Coastguard Worker protodeps = [ 74*14675a02SAndroid Build Coastguard Worker "@org_tensorflow//tensorflow/core:protos_all", 75*14675a02SAndroid Build Coastguard Worker ], 76*14675a02SAndroid Build Coastguard Worker visibility = default_visibility, 77*14675a02SAndroid Build Coastguard Worker) 78*14675a02SAndroid Build Coastguard Worker 79*14675a02SAndroid Build Coastguard Workeralias( 80*14675a02SAndroid Build Coastguard Worker name = "plan_py_pb2", 81*14675a02SAndroid Build Coastguard Worker actual = "plan_proto_py", 82*14675a02SAndroid Build Coastguard Worker) 83*14675a02SAndroid Build Coastguard Worker 84*14675a02SAndroid Build Coastguard Workerjava_proto_library( 85*14675a02SAndroid Build Coastguard Worker name = "plan_java_proto", 86*14675a02SAndroid Build Coastguard Worker deps = [":plan_proto"], 87*14675a02SAndroid Build Coastguard Worker) 88*14675a02SAndroid Build Coastguard Worker 89*14675a02SAndroid Build Coastguard Worker# Allowing to refer to the cc library generated by the rule above in usual way: 90*14675a02SAndroid Build Coastguard Workeralias( 91*14675a02SAndroid Build Coastguard Worker name = "plan_cc_proto", 92*14675a02SAndroid Build Coastguard Worker actual = "plan_proto_cc", 93*14675a02SAndroid Build Coastguard Worker visibility = default_visibility + [ 94*14675a02SAndroid Build Coastguard Worker ], 95*14675a02SAndroid Build Coastguard Worker) 96*14675a02SAndroid Build Coastguard Worker 97*14675a02SAndroid Build Coastguard Worker# -------------------------------------------------------------------- 98*14675a02SAndroid Build Coastguard Worker# opstats.proto 99*14675a02SAndroid Build Coastguard Worker 100*14675a02SAndroid Build Coastguard Workerproto_library( 101*14675a02SAndroid Build Coastguard Worker name = "opstats_proto", 102*14675a02SAndroid Build Coastguard Worker srcs = ["opstats.proto"], 103*14675a02SAndroid Build Coastguard Worker deps = [ 104*14675a02SAndroid Build Coastguard Worker ":federated_api_proto", 105*14675a02SAndroid Build Coastguard Worker "@com_google_protobuf//:duration_proto", 106*14675a02SAndroid Build Coastguard Worker "@com_google_protobuf//:timestamp_proto", 107*14675a02SAndroid Build Coastguard Worker ], 108*14675a02SAndroid Build Coastguard Worker) 109*14675a02SAndroid Build Coastguard Worker 110*14675a02SAndroid Build Coastguard Workercc_proto_library( 111*14675a02SAndroid Build Coastguard Worker name = "opstats_cc_proto", 112*14675a02SAndroid Build Coastguard Worker deps = [":opstats_proto"], 113*14675a02SAndroid Build Coastguard Worker) 114*14675a02SAndroid Build Coastguard Worker 115*14675a02SAndroid Build Coastguard Worker# -------------------------------------------------------------------- 116*14675a02SAndroid Build Coastguard Worker# task_eligibility_context.proto 117*14675a02SAndroid Build Coastguard Worker 118*14675a02SAndroid Build Coastguard Workerproto_library( 119*14675a02SAndroid Build Coastguard Worker name = "task_eligibility_context_proto", 120*14675a02SAndroid Build Coastguard Worker srcs = ["task_eligibility_context.proto"], 121*14675a02SAndroid Build Coastguard Worker) 122*14675a02SAndroid Build Coastguard Worker 123*14675a02SAndroid Build Coastguard Workerjava_proto_library( 124*14675a02SAndroid Build Coastguard Worker name = "task_eligibility_context_java_proto", 125*14675a02SAndroid Build Coastguard Worker deps = [":task_eligibility_context_proto"], 126*14675a02SAndroid Build Coastguard Worker) 127