1*14675a02SAndroid Build Coastguard Worker# Copyright 2022 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 Worker# Aggregation Protocol Package 16*14675a02SAndroid Build Coastguard Worker 17*14675a02SAndroid Build Coastguard Workerload("@org_tensorflow//tensorflow/core/platform:build_config.bzl", "tf_proto_library") 18*14675a02SAndroid Build Coastguard Workerload("//fcp:config.bzl", "FCP_COPTS") 19*14675a02SAndroid Build Coastguard Workerload("@com_github_grpc_grpc//bazel:python_rules.bzl", "py_proto_library") 20*14675a02SAndroid Build Coastguard Worker 21*14675a02SAndroid Build Coastguard Workerpackage( 22*14675a02SAndroid Build Coastguard Worker default_visibility = ["//fcp/aggregation:internal"], 23*14675a02SAndroid Build Coastguard Worker licenses = ["notice"], # Apache 2.0 24*14675a02SAndroid Build Coastguard Worker) 25*14675a02SAndroid Build Coastguard Worker 26*14675a02SAndroid Build Coastguard Workerproto_library( 27*14675a02SAndroid Build Coastguard Worker name = "proto", 28*14675a02SAndroid Build Coastguard Worker srcs = ["aggregation_protocol_messages.proto"], 29*14675a02SAndroid Build Coastguard Worker deps = [ 30*14675a02SAndroid Build Coastguard Worker "//fcp/secagg/shared:proto", 31*14675a02SAndroid Build Coastguard Worker ], 32*14675a02SAndroid Build Coastguard Worker) 33*14675a02SAndroid Build Coastguard Worker 34*14675a02SAndroid Build Coastguard Workercc_proto_library( 35*14675a02SAndroid Build Coastguard Worker name = "cc_proto", 36*14675a02SAndroid Build Coastguard Worker deps = [ 37*14675a02SAndroid Build Coastguard Worker ":proto", 38*14675a02SAndroid Build Coastguard Worker ], 39*14675a02SAndroid Build Coastguard Worker) 40*14675a02SAndroid Build Coastguard Worker 41*14675a02SAndroid Build Coastguard Workerpy_proto_library( 42*14675a02SAndroid Build Coastguard Worker name = "py_pb2", 43*14675a02SAndroid Build Coastguard Worker deps = [ 44*14675a02SAndroid Build Coastguard Worker ":proto", 45*14675a02SAndroid Build Coastguard Worker ], 46*14675a02SAndroid Build Coastguard Worker) 47*14675a02SAndroid Build Coastguard Worker 48*14675a02SAndroid Build Coastguard Worker# Using tf_proto_library to get dependencies to TF protos built correctly. 49*14675a02SAndroid Build Coastguard Workertf_proto_library( 50*14675a02SAndroid Build Coastguard Worker name = "configuration_proto", 51*14675a02SAndroid Build Coastguard Worker srcs = ["configuration.proto"], 52*14675a02SAndroid Build Coastguard Worker protodeps = [ 53*14675a02SAndroid Build Coastguard Worker "@org_tensorflow//tensorflow/core:protos_all", 54*14675a02SAndroid Build Coastguard Worker ], 55*14675a02SAndroid Build Coastguard Worker) 56*14675a02SAndroid Build Coastguard Worker 57*14675a02SAndroid Build Coastguard Worker# Allowing to refer to the cc library generated by the rule above in usual way: 58*14675a02SAndroid Build Coastguard Workeralias( 59*14675a02SAndroid Build Coastguard Worker name = "configuration_cc_proto", 60*14675a02SAndroid Build Coastguard Worker actual = "configuration_proto_cc", 61*14675a02SAndroid Build Coastguard Worker) 62*14675a02SAndroid Build Coastguard Worker 63*14675a02SAndroid Build Coastguard Workeralias( 64*14675a02SAndroid Build Coastguard Worker name = "configuration_py_pb2", 65*14675a02SAndroid Build Coastguard Worker actual = "configuration_proto_py", 66*14675a02SAndroid Build Coastguard Worker) 67*14675a02SAndroid Build Coastguard Worker 68*14675a02SAndroid Build Coastguard Workercc_library( 69*14675a02SAndroid Build Coastguard Worker name = "aggregation_protocol", 70*14675a02SAndroid Build Coastguard Worker hdrs = [ 71*14675a02SAndroid Build Coastguard Worker "aggregation_protocol.h", 72*14675a02SAndroid Build Coastguard Worker ], 73*14675a02SAndroid Build Coastguard Worker copts = FCP_COPTS, 74*14675a02SAndroid Build Coastguard Worker deps = [ 75*14675a02SAndroid Build Coastguard Worker ":cc_proto", 76*14675a02SAndroid Build Coastguard Worker "@com_google_absl//absl/status", 77*14675a02SAndroid Build Coastguard Worker "@com_google_absl//absl/strings:cord", 78*14675a02SAndroid Build Coastguard Worker ], 79*14675a02SAndroid Build Coastguard Worker) 80*14675a02SAndroid Build Coastguard Worker 81*14675a02SAndroid Build Coastguard Workercc_library( 82*14675a02SAndroid Build Coastguard Worker name = "resource_resolver", 83*14675a02SAndroid Build Coastguard Worker hdrs = [ 84*14675a02SAndroid Build Coastguard Worker "resource_resolver.h", 85*14675a02SAndroid Build Coastguard Worker ], 86*14675a02SAndroid Build Coastguard Worker copts = FCP_COPTS, 87*14675a02SAndroid Build Coastguard Worker deps = [ 88*14675a02SAndroid Build Coastguard Worker "@com_google_absl//absl/status:statusor", 89*14675a02SAndroid Build Coastguard Worker "@com_google_absl//absl/strings:cord", 90*14675a02SAndroid Build Coastguard Worker ], 91*14675a02SAndroid Build Coastguard Worker) 92*14675a02SAndroid Build Coastguard Worker 93*14675a02SAndroid Build Coastguard Workercc_library( 94*14675a02SAndroid Build Coastguard Worker name = "checkpoint_builder", 95*14675a02SAndroid Build Coastguard Worker hdrs = [ 96*14675a02SAndroid Build Coastguard Worker "checkpoint_builder.h", 97*14675a02SAndroid Build Coastguard Worker ], 98*14675a02SAndroid Build Coastguard Worker copts = FCP_COPTS, 99*14675a02SAndroid Build Coastguard Worker deps = [ 100*14675a02SAndroid Build Coastguard Worker "//fcp/aggregation/core:tensor", 101*14675a02SAndroid Build Coastguard Worker "@com_google_absl//absl/status", 102*14675a02SAndroid Build Coastguard Worker "@com_google_absl//absl/status:statusor", 103*14675a02SAndroid Build Coastguard Worker "@com_google_absl//absl/strings:cord", 104*14675a02SAndroid Build Coastguard Worker ], 105*14675a02SAndroid Build Coastguard Worker) 106*14675a02SAndroid Build Coastguard Worker 107*14675a02SAndroid Build Coastguard Workercc_library( 108*14675a02SAndroid Build Coastguard Worker name = "checkpoint_parser", 109*14675a02SAndroid Build Coastguard Worker hdrs = [ 110*14675a02SAndroid Build Coastguard Worker "checkpoint_parser.h", 111*14675a02SAndroid Build Coastguard Worker ], 112*14675a02SAndroid Build Coastguard Worker copts = FCP_COPTS, 113*14675a02SAndroid Build Coastguard Worker deps = [ 114*14675a02SAndroid Build Coastguard Worker "//fcp/aggregation/core:tensor", 115*14675a02SAndroid Build Coastguard Worker "@com_google_absl//absl/status:statusor", 116*14675a02SAndroid Build Coastguard Worker "@com_google_absl//absl/strings:cord", 117*14675a02SAndroid Build Coastguard Worker ], 118*14675a02SAndroid Build Coastguard Worker) 119