xref: /aosp_15_r20/external/pigweed/pw_rpc_transport/BUILD.gn (revision 61c4878ac05f98d0ceed94b57d316916de578985)
1*61c4878aSAndroid Build Coastguard Worker# Copyright 2023 The Pigweed Authors
2*61c4878aSAndroid Build Coastguard Worker#
3*61c4878aSAndroid Build Coastguard Worker# Licensed under the Apache License, Version 2.0 (the "License"); you may not
4*61c4878aSAndroid Build Coastguard Worker# use this file except in compliance with the License. You may obtain a copy of
5*61c4878aSAndroid Build Coastguard Worker# the License at
6*61c4878aSAndroid Build Coastguard Worker#
7*61c4878aSAndroid Build Coastguard Worker#     https://www.apache.org/licenses/LICENSE-2.0
8*61c4878aSAndroid Build Coastguard Worker#
9*61c4878aSAndroid Build Coastguard Worker# Unless required by applicable law or agreed to in writing, software
10*61c4878aSAndroid Build Coastguard Worker# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
11*61c4878aSAndroid Build Coastguard Worker# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
12*61c4878aSAndroid Build Coastguard Worker# License for the specific language governing permissions and limitations under
13*61c4878aSAndroid Build Coastguard Worker# the License.
14*61c4878aSAndroid Build Coastguard Worker
15*61c4878aSAndroid Build Coastguard Workerimport("//build_overrides/pigweed.gni")
16*61c4878aSAndroid Build Coastguard Worker
17*61c4878aSAndroid Build Coastguard Workerimport("$dir_pw_build/target_types.gni")
18*61c4878aSAndroid Build Coastguard Workerimport("$dir_pw_chrono/backend.gni")
19*61c4878aSAndroid Build Coastguard Workerimport("$dir_pw_docgen/docs.gni")
20*61c4878aSAndroid Build Coastguard Workerimport("$dir_pw_protobuf_compiler/proto.gni")
21*61c4878aSAndroid Build Coastguard Workerimport("$dir_pw_sync/backend.gni")
22*61c4878aSAndroid Build Coastguard Workerimport("$dir_pw_thread/backend.gni")
23*61c4878aSAndroid Build Coastguard Workerimport("$dir_pw_unit_test/test.gni")
24*61c4878aSAndroid Build Coastguard Worker
25*61c4878aSAndroid Build Coastguard Workerconfig("public_include_path") {
26*61c4878aSAndroid Build Coastguard Worker  include_dirs = [ "public" ]
27*61c4878aSAndroid Build Coastguard Worker  visibility = [ ":*" ]
28*61c4878aSAndroid Build Coastguard Worker}
29*61c4878aSAndroid Build Coastguard Worker
30*61c4878aSAndroid Build Coastguard Workerpw_doc_group("docs") {
31*61c4878aSAndroid Build Coastguard Worker  sources = [ "docs.rst" ]
32*61c4878aSAndroid Build Coastguard Worker}
33*61c4878aSAndroid Build Coastguard Worker
34*61c4878aSAndroid Build Coastguard Workerpw_test_group("tests") {
35*61c4878aSAndroid Build Coastguard Worker  tests = [
36*61c4878aSAndroid Build Coastguard Worker    ":egress_ingress_test",
37*61c4878aSAndroid Build Coastguard Worker    ":hdlc_framing_test",
38*61c4878aSAndroid Build Coastguard Worker    ":local_rpc_egress_test",
39*61c4878aSAndroid Build Coastguard Worker    ":packet_buffer_queue_test",
40*61c4878aSAndroid Build Coastguard Worker    ":rpc_integration_test",
41*61c4878aSAndroid Build Coastguard Worker    ":simple_framing_test",
42*61c4878aSAndroid Build Coastguard Worker    ":socket_rpc_transport_test",
43*61c4878aSAndroid Build Coastguard Worker    ":stream_rpc_dispatcher_test",
44*61c4878aSAndroid Build Coastguard Worker  ]
45*61c4878aSAndroid Build Coastguard Worker}
46*61c4878aSAndroid Build Coastguard Worker
47*61c4878aSAndroid Build Coastguard Workerpw_source_set("rpc_transport") {
48*61c4878aSAndroid Build Coastguard Worker  public = [ "public/pw_rpc_transport/rpc_transport.h" ]
49*61c4878aSAndroid Build Coastguard Worker  public_configs = [ ":public_include_path" ]
50*61c4878aSAndroid Build Coastguard Worker  public_deps = [
51*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_bytes",
52*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_function",
53*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_status",
54*61c4878aSAndroid Build Coastguard Worker  ]
55*61c4878aSAndroid Build Coastguard Worker}
56*61c4878aSAndroid Build Coastguard Worker
57*61c4878aSAndroid Build Coastguard Workerpw_source_set("service_registry") {
58*61c4878aSAndroid Build Coastguard Worker  public = [ "public/pw_rpc_transport/service_registry.h" ]
59*61c4878aSAndroid Build Coastguard Worker  public_deps = [
60*61c4878aSAndroid Build Coastguard Worker    ":rpc_transport",
61*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_rpc:client_server",
62*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_span",
63*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_status",
64*61c4878aSAndroid Build Coastguard Worker  ]
65*61c4878aSAndroid Build Coastguard Worker}
66*61c4878aSAndroid Build Coastguard Worker
67*61c4878aSAndroid Build Coastguard Workerpw_source_set("test_loopback_service_registry") {
68*61c4878aSAndroid Build Coastguard Worker  public = [ "public/pw_rpc_transport/test_loopback_service_registry.h" ]
69*61c4878aSAndroid Build Coastguard Worker  public_deps = [
70*61c4878aSAndroid Build Coastguard Worker    ":egress_ingress",
71*61c4878aSAndroid Build Coastguard Worker    ":service_registry",
72*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_work_queue:pw_work_queue",
73*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_work_queue:test_thread",
74*61c4878aSAndroid Build Coastguard Worker  ]
75*61c4878aSAndroid Build Coastguard Worker}
76*61c4878aSAndroid Build Coastguard Worker
77*61c4878aSAndroid Build Coastguard Workerpw_source_set("packet_buffer_queue") {
78*61c4878aSAndroid Build Coastguard Worker  public = [ "public/pw_rpc_transport/internal/packet_buffer_queue.h" ]
79*61c4878aSAndroid Build Coastguard Worker  public_configs = [ ":public_include_path" ]
80*61c4878aSAndroid Build Coastguard Worker  public_deps = [
81*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_bytes",
82*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_containers",
83*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_result",
84*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_status",
85*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_sync:lock_annotations",
86*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_sync:mutex",
87*61c4878aSAndroid Build Coastguard Worker  ]
88*61c4878aSAndroid Build Coastguard Worker  deps = [
89*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_assert:check",
90*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_log",
91*61c4878aSAndroid Build Coastguard Worker  ]
92*61c4878aSAndroid Build Coastguard Worker  visibility = [ ":*" ]
93*61c4878aSAndroid Build Coastguard Worker}
94*61c4878aSAndroid Build Coastguard Worker
95*61c4878aSAndroid Build Coastguard Workerpw_test("packet_buffer_queue_test") {
96*61c4878aSAndroid Build Coastguard Worker  sources = [ "internal/packet_buffer_queue_test.cc" ]
97*61c4878aSAndroid Build Coastguard Worker  deps = [
98*61c4878aSAndroid Build Coastguard Worker    ":packet_buffer_queue",
99*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_bytes",
100*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_containers",
101*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_result",
102*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_status",
103*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_sync:lock_annotations",
104*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_sync:mutex",
105*61c4878aSAndroid Build Coastguard Worker  ]
106*61c4878aSAndroid Build Coastguard Worker}
107*61c4878aSAndroid Build Coastguard Worker
108*61c4878aSAndroid Build Coastguard Workerpw_source_set("local_rpc_egress") {
109*61c4878aSAndroid Build Coastguard Worker  public = [ "public/pw_rpc_transport/local_rpc_egress.h" ]
110*61c4878aSAndroid Build Coastguard Worker  sources = [ "local_rpc_egress.cc" ]
111*61c4878aSAndroid Build Coastguard Worker  public_deps = [
112*61c4878aSAndroid Build Coastguard Worker    ":packet_buffer_queue",
113*61c4878aSAndroid Build Coastguard Worker    ":rpc_transport",
114*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_bytes",
115*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_result",
116*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_rpc:client",
117*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_status",
118*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_sync:thread_notification",
119*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_thread:thread_core",
120*61c4878aSAndroid Build Coastguard Worker  ]
121*61c4878aSAndroid Build Coastguard Worker  deps = [ "$dir_pw_log" ]
122*61c4878aSAndroid Build Coastguard Worker}
123*61c4878aSAndroid Build Coastguard Worker
124*61c4878aSAndroid Build Coastguard Workerpw_test("local_rpc_egress_test") {
125*61c4878aSAndroid Build Coastguard Worker  sources = [ "local_rpc_egress_test.cc" ]
126*61c4878aSAndroid Build Coastguard Worker  enable_if = pw_thread_THREAD_BACKEND == "$dir_pw_thread_stl:thread"
127*61c4878aSAndroid Build Coastguard Worker  deps = [
128*61c4878aSAndroid Build Coastguard Worker    ":local_rpc_egress",
129*61c4878aSAndroid Build Coastguard Worker    ":rpc_transport",
130*61c4878aSAndroid Build Coastguard Worker    ":service_registry",
131*61c4878aSAndroid Build Coastguard Worker    ":test_protos.pwpb_rpc",
132*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_bytes",
133*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_chrono:system_clock",
134*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_rpc:client_server",
135*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_status",
136*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_sync:counting_semaphore",
137*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_sync:thread_notification",
138*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_thread:sleep",
139*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_thread:thread",
140*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_thread_stl:thread",
141*61c4878aSAndroid Build Coastguard Worker  ]
142*61c4878aSAndroid Build Coastguard Worker}
143*61c4878aSAndroid Build Coastguard Worker
144*61c4878aSAndroid Build Coastguard Workerpw_source_set("hdlc_framing") {
145*61c4878aSAndroid Build Coastguard Worker  public = [ "public/pw_rpc_transport/hdlc_framing.h" ]
146*61c4878aSAndroid Build Coastguard Worker  public_configs = [ ":public_include_path" ]
147*61c4878aSAndroid Build Coastguard Worker  public_deps = [
148*61c4878aSAndroid Build Coastguard Worker    ":rpc_transport",
149*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_bytes",
150*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_hdlc:decoder",
151*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_hdlc:default_addresses",
152*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_hdlc:encoder",
153*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_result",
154*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_status",
155*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_stream:pw_stream",
156*61c4878aSAndroid Build Coastguard Worker  ]
157*61c4878aSAndroid Build Coastguard Worker}
158*61c4878aSAndroid Build Coastguard Worker
159*61c4878aSAndroid Build Coastguard Workerpw_test("hdlc_framing_test") {
160*61c4878aSAndroid Build Coastguard Worker  sources = [ "hdlc_framing_test.cc" ]
161*61c4878aSAndroid Build Coastguard Worker  deps = [
162*61c4878aSAndroid Build Coastguard Worker    ":hdlc_framing",
163*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_bytes",
164*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_status",
165*61c4878aSAndroid Build Coastguard Worker  ]
166*61c4878aSAndroid Build Coastguard Worker}
167*61c4878aSAndroid Build Coastguard Worker
168*61c4878aSAndroid Build Coastguard Workerpw_source_set("simple_framing") {
169*61c4878aSAndroid Build Coastguard Worker  public = [ "public/pw_rpc_transport/simple_framing.h" ]
170*61c4878aSAndroid Build Coastguard Worker  public_configs = [ ":public_include_path" ]
171*61c4878aSAndroid Build Coastguard Worker  sources = [ "simple_framing.cc" ]
172*61c4878aSAndroid Build Coastguard Worker  public_deps = [
173*61c4878aSAndroid Build Coastguard Worker    ":rpc_transport",
174*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_assert",
175*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_bytes",
176*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_status",
177*61c4878aSAndroid Build Coastguard Worker  ]
178*61c4878aSAndroid Build Coastguard Worker  deps = [ "$dir_pw_log" ]
179*61c4878aSAndroid Build Coastguard Worker}
180*61c4878aSAndroid Build Coastguard Worker
181*61c4878aSAndroid Build Coastguard Workerpw_test("simple_framing_test") {
182*61c4878aSAndroid Build Coastguard Worker  sources = [ "simple_framing_test.cc" ]
183*61c4878aSAndroid Build Coastguard Worker  deps = [
184*61c4878aSAndroid Build Coastguard Worker    ":simple_framing",
185*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_bytes",
186*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_log",
187*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_status",
188*61c4878aSAndroid Build Coastguard Worker  ]
189*61c4878aSAndroid Build Coastguard Worker}
190*61c4878aSAndroid Build Coastguard Worker
191*61c4878aSAndroid Build Coastguard Workerpw_source_set("egress_ingress") {
192*61c4878aSAndroid Build Coastguard Worker  public = [ "public/pw_rpc_transport/egress_ingress.h" ]
193*61c4878aSAndroid Build Coastguard Worker  sources = [ "egress_ingress.cc" ]
194*61c4878aSAndroid Build Coastguard Worker  public_deps = [
195*61c4878aSAndroid Build Coastguard Worker    ":hdlc_framing",
196*61c4878aSAndroid Build Coastguard Worker    ":rpc_transport",
197*61c4878aSAndroid Build Coastguard Worker    ":simple_framing",
198*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_bytes",
199*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_metric",
200*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_rpc:client",
201*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_status",
202*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_sync:mutex",
203*61c4878aSAndroid Build Coastguard Worker  ]
204*61c4878aSAndroid Build Coastguard Worker  deps = [ "$dir_pw_log" ]
205*61c4878aSAndroid Build Coastguard Worker}
206*61c4878aSAndroid Build Coastguard Worker
207*61c4878aSAndroid Build Coastguard Workerpw_test("egress_ingress_test") {
208*61c4878aSAndroid Build Coastguard Worker  sources = [ "egress_ingress_test.cc" ]
209*61c4878aSAndroid Build Coastguard Worker  enable_if = pw_thread_THREAD_BACKEND != ""
210*61c4878aSAndroid Build Coastguard Worker  deps = [
211*61c4878aSAndroid Build Coastguard Worker    ":egress_ingress",
212*61c4878aSAndroid Build Coastguard Worker    ":service_registry",
213*61c4878aSAndroid Build Coastguard Worker    ":test_protos.pwpb_rpc",
214*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_bytes",
215*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_metric",
216*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_status",
217*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_sync:thread_notification",
218*61c4878aSAndroid Build Coastguard Worker  ]
219*61c4878aSAndroid Build Coastguard Worker}
220*61c4878aSAndroid Build Coastguard Worker
221*61c4878aSAndroid Build Coastguard Workerpw_source_set("socket_rpc_transport") {
222*61c4878aSAndroid Build Coastguard Worker  public = [ "public/pw_rpc_transport/socket_rpc_transport.h" ]
223*61c4878aSAndroid Build Coastguard Worker  sources = [ "socket_rpc_transport.cc" ]
224*61c4878aSAndroid Build Coastguard Worker  public_deps = [
225*61c4878aSAndroid Build Coastguard Worker    ":rpc_transport",
226*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_assert",
227*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_chrono:system_clock",
228*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_status",
229*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_stream:pw_stream",
230*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_stream:socket_stream",
231*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_sync:condition_variable",
232*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_sync:lock_annotations",
233*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_sync:mutex",
234*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_sync:thread_notification",
235*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_thread:sleep",
236*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_thread:thread_core",
237*61c4878aSAndroid Build Coastguard Worker  ]
238*61c4878aSAndroid Build Coastguard Worker  deps = [ "$dir_pw_log" ]
239*61c4878aSAndroid Build Coastguard Worker}
240*61c4878aSAndroid Build Coastguard Worker
241*61c4878aSAndroid Build Coastguard Workerpw_source_set("stream_rpc_frame_sender") {
242*61c4878aSAndroid Build Coastguard Worker  public = [ "public/pw_rpc_transport/stream_rpc_frame_sender.h" ]
243*61c4878aSAndroid Build Coastguard Worker  public_deps = [
244*61c4878aSAndroid Build Coastguard Worker    ":rpc_transport",
245*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_status",
246*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_stream:pw_stream",
247*61c4878aSAndroid Build Coastguard Worker  ]
248*61c4878aSAndroid Build Coastguard Worker}
249*61c4878aSAndroid Build Coastguard Worker
250*61c4878aSAndroid Build Coastguard Workerpw_source_set("stream_rpc_dispatcher") {
251*61c4878aSAndroid Build Coastguard Worker  public = [ "public/pw_rpc_transport/stream_rpc_dispatcher.h" ]
252*61c4878aSAndroid Build Coastguard Worker  public_deps = [
253*61c4878aSAndroid Build Coastguard Worker    ":egress_ingress",
254*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_status",
255*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_stream:pw_stream",
256*61c4878aSAndroid Build Coastguard Worker  ]
257*61c4878aSAndroid Build Coastguard Worker}
258*61c4878aSAndroid Build Coastguard Worker
259*61c4878aSAndroid Build Coastguard Workerpw_test("socket_rpc_transport_test") {
260*61c4878aSAndroid Build Coastguard Worker  sources = [ "socket_rpc_transport_test.cc" ]
261*61c4878aSAndroid Build Coastguard Worker  enable_if = pw_thread_THREAD_BACKEND == "$dir_pw_thread_stl:thread" &&
262*61c4878aSAndroid Build Coastguard Worker              host_os != "win" && pw_sync_CONDITION_VARIABLE_BACKEND != ""
263*61c4878aSAndroid Build Coastguard Worker  deps = [
264*61c4878aSAndroid Build Coastguard Worker    ":socket_rpc_transport",
265*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_bytes",
266*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_log",
267*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_status",
268*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_sync:thread_notification",
269*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_thread:sleep",
270*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_thread:thread",
271*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_thread_stl:thread",
272*61c4878aSAndroid Build Coastguard Worker  ]
273*61c4878aSAndroid Build Coastguard Worker}
274*61c4878aSAndroid Build Coastguard Worker
275*61c4878aSAndroid Build Coastguard Workerpw_test("stream_rpc_dispatcher_test") {
276*61c4878aSAndroid Build Coastguard Worker  sources = [ "stream_rpc_dispatcher_test.cc" ]
277*61c4878aSAndroid Build Coastguard Worker  enable_if = pw_thread_THREAD_BACKEND == "$dir_pw_thread_stl:thread"
278*61c4878aSAndroid Build Coastguard Worker  deps = [
279*61c4878aSAndroid Build Coastguard Worker    ":stream_rpc_dispatcher",
280*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_bytes",
281*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_log",
282*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_status",
283*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_sync:mutex",
284*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_sync:thread_notification",
285*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_thread:thread",
286*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_thread_stl:thread",
287*61c4878aSAndroid Build Coastguard Worker  ]
288*61c4878aSAndroid Build Coastguard Worker}
289*61c4878aSAndroid Build Coastguard Worker
290*61c4878aSAndroid Build Coastguard Workerpw_test("rpc_integration_test") {
291*61c4878aSAndroid Build Coastguard Worker  sources = [ "rpc_integration_test.cc" ]
292*61c4878aSAndroid Build Coastguard Worker  enable_if = pw_thread_THREAD_BACKEND == "$dir_pw_thread_stl:thread" &&
293*61c4878aSAndroid Build Coastguard Worker              host_os != "win" && pw_sync_CONDITION_VARIABLE_BACKEND != ""
294*61c4878aSAndroid Build Coastguard Worker  deps = [
295*61c4878aSAndroid Build Coastguard Worker    ":egress_ingress",
296*61c4878aSAndroid Build Coastguard Worker    ":local_rpc_egress",
297*61c4878aSAndroid Build Coastguard Worker    ":service_registry",
298*61c4878aSAndroid Build Coastguard Worker    ":socket_rpc_transport",
299*61c4878aSAndroid Build Coastguard Worker    ":test_protos.pwpb_rpc",
300*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_chrono:system_clock",
301*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_log",
302*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_rpc:client_server",
303*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_rpc:synchronous_client_api",
304*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_string",
305*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_thread:thread",
306*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_thread_stl:thread",
307*61c4878aSAndroid Build Coastguard Worker  ]
308*61c4878aSAndroid Build Coastguard Worker}
309*61c4878aSAndroid Build Coastguard Worker
310*61c4878aSAndroid Build Coastguard Workerpw_proto_library("test_protos") {
311*61c4878aSAndroid Build Coastguard Worker  sources = [ "internal/test.proto" ]
312*61c4878aSAndroid Build Coastguard Worker  inputs = [ "internal/test.pwpb_options" ]
313*61c4878aSAndroid Build Coastguard Worker  prefix = "pw_rpc_transport"
314*61c4878aSAndroid Build Coastguard Worker}
315