| // Copyright 2023 The Pigweed Authors |
| // |
| // Licensed under the Apache License, Version 2.0 (the "License"); you may not |
| // use this file except in compliance with the License. You may obtain a copy of |
| // the License at |
| // |
| // https://www.apache.org/licenses/LICENSE-2.0 |
| // |
| // Unless required by applicable law or agreed to in writing, software |
| // distributed under the License is distributed on an "AS IS" BASIS, WITHOUT |
| // WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the |
| // License for the specific language governing permissions and limitations under |
| // the License. |
| |
| package { |
| default_applicable_licenses: ["external_pigweed_license"], |
| } |
| |
| cc_library_static { |
| name: "pw_transfer_core", |
| cpp_std: "c++20", |
| vendor_available: true, |
| host_supported: true, |
| defaults: [ |
| "pw_android_common_backends", |
| "pw_rpc_raw_defaults", |
| "pw_rpc_defaults", |
| ], |
| srcs: [ |
| "chunk.cc", |
| "client_context.cc", |
| "context.cc", |
| "rate_estimate.cc", |
| "server_context.cc", |
| "transfer_thread.cc", |
| ], |
| export_include_dirs: [ |
| "public", |
| ], |
| header_libs: [ |
| "pw_assert", |
| "pw_chrono", |
| "pw_log", |
| "pw_sync", |
| "pw_transfer_raw_rpc", |
| "pw_transfer_pwpb", |
| ], |
| export_header_lib_headers: [ |
| "pw_transfer_raw_rpc", |
| "pw_transfer_pwpb", |
| ], |
| static_libs: [ |
| "pw_containers", |
| "pw_preprocessor", |
| "pw_protobuf", |
| "pw_result", |
| "pw_span", |
| "pw_status", |
| "pw_stream", |
| "pw_thread", |
| "pw_varint", |
| ], |
| whole_static_libs: [ |
| "pw_log_rate_limited", |
| "pw_sync.binary_semaphore_thread_notification", |
| ], |
| } |
| |
| cc_library_static { |
| name: "pw_transfer", |
| vendor_available: true, |
| host_supported: true, |
| defaults: [ |
| "pw_android_common_backends", |
| ], |
| srcs: [ |
| "transfer.cc", |
| ], |
| export_include_dirs: [ |
| "public", |
| ], |
| static_libs: [ |
| "pw_bytes", |
| "pw_result", |
| "pw_status", |
| "pw_stream", |
| "pw_transfer_core", |
| ], |
| } |
| |
| cc_library_static { |
| name: "pw_transfer_client", |
| vendor_available: true, |
| host_supported: true, |
| defaults: [ |
| "pw_android_common_backends", |
| ], |
| srcs: [ |
| "client.cc", |
| ], |
| export_include_dirs: [ |
| "public", |
| ], |
| static_libs: [ |
| "pw_function", |
| "pw_stream", |
| "pw_transfer_core", |
| ], |
| } |
| |
| genrule { |
| name: "pw_transfer_proto_with_prefix", |
| defaults: ["pw_rpc_add_prefix_to_proto"], |
| srcs: ["transfer.proto"], |
| out: ["pw_transfer/transfer.proto"], |
| } |
| |
| genrule { |
| name: "pw_transfer_raw_rpc_header", |
| defaults: ["pw_rpc_generate_raw_rpc_header_with_prefix"], |
| srcs: [":pw_transfer_proto_with_prefix"], |
| out: ["pw_transfer/transfer.raw_rpc.pb.h"], |
| } |
| |
| genrule { |
| name: "pw_transfer_pwpb_rpc_header", |
| defaults: ["pw_rpc_generate_pwpb_rpc_header_with_prefix"], |
| srcs: [":pw_transfer_proto_with_prefix"], |
| out: ["pw_transfer/transfer.rpc.pwpb.h"], |
| } |
| |
| genrule { |
| name: "pw_transfer_pwpb_proto_header", |
| defaults: ["pw_rpc_generate_pwpb_proto_with_prefix"], |
| srcs: [":pw_transfer_proto_with_prefix"], |
| out: ["pw_transfer/transfer.pwpb.h"], |
| } |
| |
| cc_library_headers { |
| name: "pw_transfer_pwpb", |
| cpp_std: "c++20", |
| vendor_available: true, |
| host_supported: true, |
| generated_headers: [ |
| "pw_transfer_pwpb_proto_header", |
| "pw_transfer_pwpb_rpc_header", |
| ], |
| export_generated_headers: [ |
| "pw_transfer_pwpb_proto_header", |
| "pw_transfer_pwpb_rpc_header", |
| ], |
| } |
| |
| cc_library_headers { |
| name: "pw_transfer_raw_rpc", |
| cpp_std: "c++20", |
| vendor_available: true, |
| host_supported: true, |
| generated_headers: [ |
| "pw_transfer_raw_rpc_header", |
| ], |
| export_generated_headers: [ |
| "pw_transfer_raw_rpc_header", |
| ], |
| } |