1*61c4878aSAndroid Build Coastguard Worker# Copyright 2024 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 Workerinclude($ENV{PW_ROOT}/pw_build/pigweed.cmake) 16*61c4878aSAndroid Build Coastguard Workerinclude($ENV{PW_ROOT}/pw_async2/backend.cmake) 17*61c4878aSAndroid Build Coastguard Worker 18*61c4878aSAndroid Build Coastguard Workerpw_add_library(pw_channel STATIC 19*61c4878aSAndroid Build Coastguard Worker HEADERS 20*61c4878aSAndroid Build Coastguard Worker public/pw_channel/channel.h 21*61c4878aSAndroid Build Coastguard Worker public/pw_channel/properties.h 22*61c4878aSAndroid Build Coastguard Worker PUBLIC_DEPS 23*61c4878aSAndroid Build Coastguard Worker pw_assert 24*61c4878aSAndroid Build Coastguard Worker pw_async2.dispatcher 25*61c4878aSAndroid Build Coastguard Worker pw_async2.poll 26*61c4878aSAndroid Build Coastguard Worker pw_bytes 27*61c4878aSAndroid Build Coastguard Worker pw_multibuf 28*61c4878aSAndroid Build Coastguard Worker pw_multibuf.allocator 29*61c4878aSAndroid Build Coastguard Worker pw_result 30*61c4878aSAndroid Build Coastguard Worker pw_span 31*61c4878aSAndroid Build Coastguard Worker pw_status 32*61c4878aSAndroid Build Coastguard Worker pw_toolchain._sibling_cast 33*61c4878aSAndroid Build Coastguard Worker PUBLIC_INCLUDES 34*61c4878aSAndroid Build Coastguard Worker public 35*61c4878aSAndroid Build Coastguard Worker SOURCES 36*61c4878aSAndroid Build Coastguard Worker public/pw_channel/internal/channel_specializations.h 37*61c4878aSAndroid Build Coastguard Worker) 38*61c4878aSAndroid Build Coastguard Worker 39*61c4878aSAndroid Build Coastguard Workerpw_add_test(pw_channel.channel_test 40*61c4878aSAndroid Build Coastguard Worker SOURCES 41*61c4878aSAndroid Build Coastguard Worker channel_test.cc 42*61c4878aSAndroid Build Coastguard Worker PRIVATE_DEPS 43*61c4878aSAndroid Build Coastguard Worker pw_channel 44*61c4878aSAndroid Build Coastguard Worker pw_allocator.testing 45*61c4878aSAndroid Build Coastguard Worker pw_compilation_testing._pigweed_only_negative_compilation 46*61c4878aSAndroid Build Coastguard Worker pw_preprocessor 47*61c4878aSAndroid Build Coastguard Worker pw_multibuf.simple_allocator 48*61c4878aSAndroid Build Coastguard Worker) 49*61c4878aSAndroid Build Coastguard Worker 50*61c4878aSAndroid Build Coastguard Workerpw_add_library(pw_channel.forwarding_channel STATIC 51*61c4878aSAndroid Build Coastguard Worker HEADERS 52*61c4878aSAndroid Build Coastguard Worker public/pw_channel/forwarding_channel.h 53*61c4878aSAndroid Build Coastguard Worker SOURCES 54*61c4878aSAndroid Build Coastguard Worker forwarding_channel.cc 55*61c4878aSAndroid Build Coastguard Worker PUBLIC_DEPS 56*61c4878aSAndroid Build Coastguard Worker pw_channel 57*61c4878aSAndroid Build Coastguard Worker pw_multibuf.allocator 58*61c4878aSAndroid Build Coastguard Worker pw_sync.mutex 59*61c4878aSAndroid Build Coastguard Worker PUBLIC_INCLUDES 60*61c4878aSAndroid Build Coastguard Worker public 61*61c4878aSAndroid Build Coastguard Worker) 62*61c4878aSAndroid Build Coastguard Worker 63*61c4878aSAndroid Build Coastguard Workerpw_add_test(pw_channel.forwarding_channel_test 64*61c4878aSAndroid Build Coastguard Worker SOURCES 65*61c4878aSAndroid Build Coastguard Worker forwarding_channel_test.cc 66*61c4878aSAndroid Build Coastguard Worker PRIVATE_DEPS 67*61c4878aSAndroid Build Coastguard Worker pw_allocator.testing 68*61c4878aSAndroid Build Coastguard Worker pw_channel.forwarding_channel 69*61c4878aSAndroid Build Coastguard Worker pw_multibuf.header_chunk_region_tracker 70*61c4878aSAndroid Build Coastguard Worker pw_multibuf.simple_allocator 71*61c4878aSAndroid Build Coastguard Worker) 72*61c4878aSAndroid Build Coastguard Worker 73*61c4878aSAndroid Build Coastguard Workerpw_add_library(pw_channel.loopback_channel STATIC 74*61c4878aSAndroid Build Coastguard Worker HEADERS 75*61c4878aSAndroid Build Coastguard Worker public/pw_channel/loopback_channel.h 76*61c4878aSAndroid Build Coastguard Worker SOURCES 77*61c4878aSAndroid Build Coastguard Worker loopback_channel.cc 78*61c4878aSAndroid Build Coastguard Worker PUBLIC_DEPS 79*61c4878aSAndroid Build Coastguard Worker pw_channel 80*61c4878aSAndroid Build Coastguard Worker pw_multibuf.allocator 81*61c4878aSAndroid Build Coastguard Worker PUBLIC_INCLUDES 82*61c4878aSAndroid Build Coastguard Worker public 83*61c4878aSAndroid Build Coastguard Worker) 84*61c4878aSAndroid Build Coastguard Worker 85*61c4878aSAndroid Build Coastguard Workerpw_add_test(pw_channel.loopback_channel_test 86*61c4878aSAndroid Build Coastguard Worker SOURCES 87*61c4878aSAndroid Build Coastguard Worker loopback_channel_test.cc 88*61c4878aSAndroid Build Coastguard Worker PRIVATE_DEPS 89*61c4878aSAndroid Build Coastguard Worker pw_channel.loopback_channel 90*61c4878aSAndroid Build Coastguard Worker pw_multibuf.testing 91*61c4878aSAndroid Build Coastguard Worker) 92*61c4878aSAndroid Build Coastguard Worker 93*61c4878aSAndroid Build Coastguard Workerpw_add_library(pw_channel.epoll_channel STATIC 94*61c4878aSAndroid Build Coastguard Worker HEADERS 95*61c4878aSAndroid Build Coastguard Worker public/pw_channel/epoll_channel.h 96*61c4878aSAndroid Build Coastguard Worker SOURCES 97*61c4878aSAndroid Build Coastguard Worker epoll_channel.cc 98*61c4878aSAndroid Build Coastguard Worker PUBLIC_DEPS 99*61c4878aSAndroid Build Coastguard Worker pw_channel 100*61c4878aSAndroid Build Coastguard Worker pw_multibuf.allocator 101*61c4878aSAndroid Build Coastguard Worker pw_sync.mutex 102*61c4878aSAndroid Build Coastguard Worker PUBLIC_INCLUDES 103*61c4878aSAndroid Build Coastguard Worker public 104*61c4878aSAndroid Build Coastguard Worker PRIVATE_DEPS 105*61c4878aSAndroid Build Coastguard Worker pw_log 106*61c4878aSAndroid Build Coastguard Worker) 107*61c4878aSAndroid Build Coastguard Worker 108*61c4878aSAndroid Build Coastguard Workerpw_add_test(pw_channel.epoll_channel_test 109*61c4878aSAndroid Build Coastguard Worker SOURCES 110*61c4878aSAndroid Build Coastguard Worker epoll_channel_test.cc 111*61c4878aSAndroid Build Coastguard Worker PRIVATE_DEPS 112*61c4878aSAndroid Build Coastguard Worker pw_channel.epoll_channel 113*61c4878aSAndroid Build Coastguard Worker pw_multibuf.testing 114*61c4878aSAndroid Build Coastguard Worker pw_thread.sleep 115*61c4878aSAndroid Build Coastguard Worker pw_thread.thread 116*61c4878aSAndroid Build Coastguard Worker) 117*61c4878aSAndroid Build Coastguard Worker 118*61c4878aSAndroid Build Coastguard Workerpw_add_library(pw_channel.stream_channel STATIC 119*61c4878aSAndroid Build Coastguard Worker HEADERS 120*61c4878aSAndroid Build Coastguard Worker public/pw_channel/stream_channel.h 121*61c4878aSAndroid Build Coastguard Worker SOURCES 122*61c4878aSAndroid Build Coastguard Worker stream_channel.cc 123*61c4878aSAndroid Build Coastguard Worker PUBLIC_DEPS 124*61c4878aSAndroid Build Coastguard Worker pw_channel 125*61c4878aSAndroid Build Coastguard Worker pw_log 126*61c4878aSAndroid Build Coastguard Worker pw_stream 127*61c4878aSAndroid Build Coastguard Worker pw_sync.interrupt_spin_lock 128*61c4878aSAndroid Build Coastguard Worker pw_sync.thread_notification 129*61c4878aSAndroid Build Coastguard Worker pw_thread.thread 130*61c4878aSAndroid Build Coastguard Worker PUBLIC_INCLUDES 131*61c4878aSAndroid Build Coastguard Worker public 132*61c4878aSAndroid Build Coastguard Worker) 133*61c4878aSAndroid Build Coastguard Worker 134*61c4878aSAndroid Build Coastguard Workerpw_add_test(pw_channel.stream_channel_test 135*61c4878aSAndroid Build Coastguard Worker SOURCES 136*61c4878aSAndroid Build Coastguard Worker stream_channel_test.cc 137*61c4878aSAndroid Build Coastguard Worker PRIVATE_DEPS 138*61c4878aSAndroid Build Coastguard Worker pw_channel.stream_channel 139*61c4878aSAndroid Build Coastguard Worker pw_async2.pend_func_task 140*61c4878aSAndroid Build Coastguard Worker pw_multibuf.testing 141*61c4878aSAndroid Build Coastguard Worker pw_stream 142*61c4878aSAndroid Build Coastguard Worker pw_stream.mpsc_stream 143*61c4878aSAndroid Build Coastguard Worker pw_thread.thread 144*61c4878aSAndroid Build Coastguard Worker pw_thread.test_thread_context 145*61c4878aSAndroid Build Coastguard Worker) 146