1# Copyright 2020 The Pigweed Authors 2# 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 5# the License at 6# 7# https://www.apache.org/licenses/LICENSE-2.0 8# 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 13# the License. 14 15include($ENV{PW_ROOT}/pw_build/pigweed.cmake) 16 17pw_add_library(pw_rpc.raw.server_api STATIC 18 HEADERS 19 public/pw_rpc/raw/internal/method.h 20 public/pw_rpc/raw/internal/method_union.h 21 public/pw_rpc/raw/server_reader_writer.h 22 PUBLIC_INCLUDES 23 public 24 PUBLIC_DEPS 25 pw_rpc.server 26 pw_bytes 27 SOURCES 28 method.cc 29) 30 31pw_add_library(pw_rpc.raw.client_api INTERFACE 32 HEADERS 33 public/pw_rpc/raw/client_reader_writer.h 34 PUBLIC_INCLUDES 35 public 36 PUBLIC_DEPS 37 pw_rpc.client 38 pw_bytes 39) 40 41pw_add_library(pw_rpc.raw.fake_channel_output INTERFACE 42 HEADERS 43 public/pw_rpc/raw/fake_channel_output.h 44 PUBLIC_INCLUDES 45 public 46 PUBLIC_DEPS 47 pw_rpc.fake_channel_output 48) 49 50pw_add_library(pw_rpc.raw.test_method_context INTERFACE 51 HEADERS 52 public/pw_rpc/raw/test_method_context.h 53 PUBLIC_INCLUDES 54 public 55 PUBLIC_DEPS 56 pw_assert 57 pw_containers 58 pw_rpc.raw.fake_channel_output 59 pw_rpc.raw.server_api 60 pw_rpc.test_utils 61) 62 63pw_add_library(pw_rpc.raw.client_testing STATIC 64 HEADERS 65 public/pw_rpc/raw/client_testing.h 66 PUBLIC_INCLUDES 67 public 68 PUBLIC_DEPS 69 pw_rpc.fake_channel_output 70 SOURCES 71 client_testing.cc 72 PRIVATE_DEPS 73 pw_log 74 pw_rpc.log_config 75) 76 77pw_add_test(pw_rpc.raw.client_test 78 SOURCES 79 client_test.cc 80 PRIVATE_DEPS 81 pw_rpc.raw.client_api 82 pw_rpc.raw.client_testing 83 pw_rpc.test_utils 84 GROUPS 85 modules 86 pw_rpc.raw 87) 88 89pw_add_test(pw_rpc.raw.client_reader_writer_test 90 SOURCES 91 client_reader_writer_test.cc 92 PRIVATE_DEPS 93 pw_rpc.raw.client_api 94 pw_rpc.raw.client_testing 95 pw_rpc.test_protos.raw_rpc 96 GROUPS 97 modules 98 pw_rpc.raw 99) 100 101pw_add_test(pw_rpc.raw.method_test 102 SOURCES 103 method_test.cc 104 PRIVATE_DEPS 105 pw_containers 106 pw_protobuf 107 pw_rpc.raw.server_api 108 pw_rpc.test_protos.pwpb 109 pw_rpc.test_protos.raw_rpc 110 pw_rpc.test_utils 111 GROUPS 112 modules 113 pw_rpc.raw 114) 115 116pw_add_test(pw_rpc.raw.method_info_test 117 SOURCES 118 method_info_test.cc 119 PRIVATE_DEPS 120 pw_rpc.common 121 pw_rpc.test_protos.raw_rpc 122 pw_rpc.test_utils 123 GROUPS 124 modules 125 pw_rpc.raw 126) 127 128pw_add_test(pw_rpc.raw.method_union_test 129 SOURCES 130 method_union_test.cc 131 PRIVATE_DEPS 132 pw_protobuf 133 pw_rpc.raw.server_api 134 pw_rpc.test_protos.pwpb 135 pw_rpc.test_utils 136 GROUPS 137 modules 138 pw_rpc.raw 139) 140 141pw_add_test(pw_rpc.raw.server_reader_writer_test 142 SOURCES 143 server_reader_writer_test.cc 144 PRIVATE_DEPS 145 pw_rpc.raw.server_api 146 pw_rpc.raw.test_method_context 147 pw_rpc.test_protos.raw_rpc 148 GROUPS 149 modules 150 pw_rpc.raw 151) 152