1 # Copyright 2020 The Pigweed Authors
3 # Licensed under the Apache License, Version 2.0 (the "License"); you may not
4 # use this file except in compliance with the License. You may obtain a copy of
7 # https://www.apache.org/licenses/LICENSE-2.0
9 # Unless required by applicable law or agreed to in writing, software
10 # distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
11 # WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
12 # License for the specific language governing permissions and limitations under
16 "//pw_build:pigweed.bzl",
21 package(default_visibility = ["//visibility:public"])
23 licenses(["notice"]) # Apache License 2.0
28 "base_client_call.cc",
32 "public/pw_rpc/client.h",
33 "public/pw_rpc/internal/base_client_call.h",
43 "base_server_writer.cc",
44 "public/pw_rpc/internal/base_server_writer.h",
45 "public/pw_rpc/internal/call.h",
46 "public/pw_rpc/internal/hash.h",
47 "public/pw_rpc/internal/method.h",
48 "public/pw_rpc/internal/method_lookup.h",
49 "public/pw_rpc/internal/method_union.h",
50 "public/pw_rpc/internal/server.h",
55 "public/pw_rpc/server.h",
56 "public/pw_rpc/server_context.h",
57 "public/pw_rpc/service.h",
59 includes = ["public"],
70 "public/pw_rpc/internal/channel.h",
71 "public/pw_rpc/internal/config.h",
72 "public/pw_rpc/internal/method_type.h",
73 "public/pw_rpc/internal/packet.h",
76 "public/pw_rpc/channel.h",
78 includes = ["public"],
88 name = "synchronized_channel_output",
89 hdrs = ["public/pw_rpc/synchronized_channel_output.h"],
90 includes = ["public"],
98 name = "internal_test_utils",
100 "public/pw_rpc/internal/test_method.h",
101 "pw_rpc_private/internal_test_utils.h",
102 "pw_rpc_private/method_impl_tester.h",
104 visibility = ["//visibility:private"],
111 # TODO(hepler): Cannot build nanopb-dependent code in Bazel at the moment. Need
112 # to determine how best to support Nanopb builds and protobuf generation.
116 "nanopb/codegen_test.cc",
117 "nanopb/echo_service_test.cc",
118 "nanopb/method_lookup_test.cc",
119 "nanopb/nanopb_client_call.cc",
120 "nanopb/nanopb_client_call_test.cc",
121 "nanopb/nanopb_common.cc",
122 "nanopb/nanopb_method.cc",
123 "nanopb/nanopb_method_test.cc",
124 "nanopb/nanopb_method_union_test.cc",
125 "nanopb/public/pw_rpc/echo_service_nanopb.h",
126 "nanopb/public/pw_rpc/internal/nanopb_common.h",
127 "nanopb/public/pw_rpc/internal/nanopb_method.h",
128 "nanopb/public/pw_rpc/internal/nanopb_method_union.h",
129 "nanopb/public/pw_rpc/nanopb_client_call.h",
130 "nanopb/public/pw_rpc/nanopb_test_method_context.h",
131 "nanopb/pw_rpc_nanopb_private/internal_test_utils.h",
132 "nanopb/stub_generation_test.cc",
137 name = "base_server_writer_test",
139 "base_server_writer_test.cc",
142 ":internal_test_utils",
148 name = "base_client_call_test",
150 "base_client_call_test.cc",
154 ":internal_test_utils",
159 name = "client_test",
165 ":internal_test_utils",
170 name = "channel_test",
171 srcs = ["channel_test.cc"],
174 ":test_utils_test_server",
179 name = "packet_test",
189 name = "packet_proto",
191 "pw_rpc_protos/internal/packet.proto",
196 name = "server_test",
201 ":internal_test_utils",
208 name = "service_test",
213 ":internal_test_utils",