1*61c4878aSAndroid Build Coastguard Worker# Copyright 2022 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_system/backend.cmake) 17*61c4878aSAndroid Build Coastguard Workerinclude($ENV{PW_ROOT}/pw_protobuf_compiler/proto.cmake) 18*61c4878aSAndroid Build Coastguard Worker 19*61c4878aSAndroid Build Coastguard Worker# WARNING: Many of the dependencies in this file are missing and need to be 20*61c4878aSAndroid Build Coastguard Worker# added/updated. This is provided as a starting point, but currently does not 21*61c4878aSAndroid Build Coastguard Worker# work. 22*61c4878aSAndroid Build Coastguard Worker 23*61c4878aSAndroid Build Coastguard Workerif("${pw_cpu_exception.entry_BACKEND}" STREQUAL "") 24*61c4878aSAndroid Build Coastguard Worker pw_add_library(pw_system.config INTERFACE 25*61c4878aSAndroid Build Coastguard Worker HEADERS 26*61c4878aSAndroid Build Coastguard Worker public/pw_system/config.h 27*61c4878aSAndroid Build Coastguard Worker PUBLIC_INCLUDES 28*61c4878aSAndroid Build Coastguard Worker public 29*61c4878aSAndroid Build Coastguard Worker PUBLIC_DEFINES 30*61c4878aSAndroid Build Coastguard Worker PW_SYSTEM_ENABLE_CRASH_HANDLER=0 31*61c4878aSAndroid Build Coastguard Worker ) 32*61c4878aSAndroid Build Coastguard Workerelse() 33*61c4878aSAndroid Build Coastguard Worker pw_add_library(pw_system.config INTERFACE 34*61c4878aSAndroid Build Coastguard Worker HEADERS 35*61c4878aSAndroid Build Coastguard Worker public/pw_system/config.h 36*61c4878aSAndroid Build Coastguard Worker PUBLIC_INCLUDES 37*61c4878aSAndroid Build Coastguard Worker public 38*61c4878aSAndroid Build Coastguard Worker ) 39*61c4878aSAndroid Build Coastguard Workerendif() 40*61c4878aSAndroid Build Coastguard Worker 41*61c4878aSAndroid Build Coastguard Workerpw_add_library(pw_system.log STATIC 42*61c4878aSAndroid Build Coastguard Worker PUBLIC_DEPS 43*61c4878aSAndroid Build Coastguard Worker pw_log_rpc.log_service 44*61c4878aSAndroid Build Coastguard Worker pw_log_rpc.rpc_log_drain_thread 45*61c4878aSAndroid Build Coastguard Worker pw_multisink 46*61c4878aSAndroid Build Coastguard Worker PRIVATE_DEPS 47*61c4878aSAndroid Build Coastguard Worker pw_system.config 48*61c4878aSAndroid Build Coastguard Worker pw_system.rpc_server 49*61c4878aSAndroid Build Coastguard Worker pw_log_rpc.rpc_log_drain 50*61c4878aSAndroid Build Coastguard Worker pw_sync.lock_annotations 51*61c4878aSAndroid Build Coastguard Worker pw_sync.mutex 52*61c4878aSAndroid Build Coastguard Worker HEADERS 53*61c4878aSAndroid Build Coastguard Worker public/pw_system/log.h 54*61c4878aSAndroid Build Coastguard Worker PUBLIC_INCLUDES 55*61c4878aSAndroid Build Coastguard Worker public 56*61c4878aSAndroid Build Coastguard Worker SOURCES 57*61c4878aSAndroid Build Coastguard Worker log.cc 58*61c4878aSAndroid Build Coastguard Worker) 59*61c4878aSAndroid Build Coastguard Worker 60*61c4878aSAndroid Build Coastguard Workerpw_add_library(pw_system.log_backend STATIC 61*61c4878aSAndroid Build Coastguard Worker PRIVATE_DEPS 62*61c4878aSAndroid Build Coastguard Worker pw_system.config 63*61c4878aSAndroid Build Coastguard Worker pw_system.log 64*61c4878aSAndroid Build Coastguard Worker pw_bytes 65*61c4878aSAndroid Build Coastguard Worker pw_chrono.system_clock 66*61c4878aSAndroid Build Coastguard Worker pw_log.facade 67*61c4878aSAndroid Build Coastguard Worker pw_log.proto_utils 68*61c4878aSAndroid Build Coastguard Worker pw_log_string.handler.facade 69*61c4878aSAndroid Build Coastguard Worker pw_log_tokenized.handler 70*61c4878aSAndroid Build Coastguard Worker pw_log_tokenized.metadata 71*61c4878aSAndroid Build Coastguard Worker pw_multisink 72*61c4878aSAndroid Build Coastguard Worker pw_result 73*61c4878aSAndroid Build Coastguard Worker pw_sync.interrupt_spin_lock 74*61c4878aSAndroid Build Coastguard Worker pw_sync.lock_annotations 75*61c4878aSAndroid Build Coastguard Worker pw_tokenizer 76*61c4878aSAndroid Build Coastguard Worker SOURCES 77*61c4878aSAndroid Build Coastguard Worker log_backend.cc 78*61c4878aSAndroid Build Coastguard Worker) 79*61c4878aSAndroid Build Coastguard Worker 80*61c4878aSAndroid Build Coastguard Workerpw_add_facade(pw_system.rpc_server INTERFACE 81*61c4878aSAndroid Build Coastguard Worker BACKEND 82*61c4878aSAndroid Build Coastguard Worker pw_system.rpc_server_BACKEND 83*61c4878aSAndroid Build Coastguard Worker HEADERS 84*61c4878aSAndroid Build Coastguard Worker public/pw_system/rpc_server.h 85*61c4878aSAndroid Build Coastguard Worker PUBLIC_INCLUDES 86*61c4878aSAndroid Build Coastguard Worker public 87*61c4878aSAndroid Build Coastguard Worker PUBLIC_DEPS 88*61c4878aSAndroid Build Coastguard Worker pw_rpc.server 89*61c4878aSAndroid Build Coastguard Worker pw_system.config 90*61c4878aSAndroid Build Coastguard Worker pw_thread.thread_core 91*61c4878aSAndroid Build Coastguard Worker) 92*61c4878aSAndroid Build Coastguard Worker 93*61c4878aSAndroid Build Coastguard Workerpw_add_library(pw_system.hdlc_rpc_server STATIC 94*61c4878aSAndroid Build Coastguard Worker PRIVATE_DEPS 95*61c4878aSAndroid Build Coastguard Worker pw_assert 96*61c4878aSAndroid Build Coastguard Worker pw_hdlc.default_addresses 97*61c4878aSAndroid Build Coastguard Worker pw_hdlc.rpc_channel_output 98*61c4878aSAndroid Build Coastguard Worker pw_sync.mutex 99*61c4878aSAndroid Build Coastguard Worker pw_system.config 100*61c4878aSAndroid Build Coastguard Worker pw_system.io 101*61c4878aSAndroid Build Coastguard Worker pw_system.rpc_server.facade 102*61c4878aSAndroid Build Coastguard Worker pw_system.sys_io_target_io 103*61c4878aSAndroid Build Coastguard Worker pw_thread.thread_core 104*61c4878aSAndroid Build Coastguard Worker pw_trace 105*61c4878aSAndroid Build Coastguard Worker pw_log 106*61c4878aSAndroid Build Coastguard Worker SOURCES 107*61c4878aSAndroid Build Coastguard Worker hdlc_rpc_server.cc 108*61c4878aSAndroid Build Coastguard Worker) 109*61c4878aSAndroid Build Coastguard Worker 110*61c4878aSAndroid Build Coastguard Workerpw_add_library(pw_system.thread_snapshot_service STATIC 111*61c4878aSAndroid Build Coastguard Worker HEADERS 112*61c4878aSAndroid Build Coastguard Worker public/pw_system/thread_snapshot_service.h 113*61c4878aSAndroid Build Coastguard Worker PUBLIC_INCLUDES 114*61c4878aSAndroid Build Coastguard Worker public 115*61c4878aSAndroid Build Coastguard Worker PUBLIC_DEPS 116*61c4878aSAndroid Build Coastguard Worker pw_thread.thread_snapshot_service 117*61c4878aSAndroid Build Coastguard Worker SOURCES 118*61c4878aSAndroid Build Coastguard Worker thread_snapshot_service.cc 119*61c4878aSAndroid Build Coastguard Worker) 120*61c4878aSAndroid Build Coastguard Worker 121*61c4878aSAndroid Build Coastguard Workerpw_add_library(pw_system.transfer_handlers STATIC 122*61c4878aSAndroid Build Coastguard Worker HEADERS 123*61c4878aSAndroid Build Coastguard Worker public/pw_system/transfer_handlers.h 124*61c4878aSAndroid Build Coastguard Worker PUBLIC_INCLUDES 125*61c4878aSAndroid Build Coastguard Worker public 126*61c4878aSAndroid Build Coastguard Worker PUBLIC_DEPS 127*61c4878aSAndroid Build Coastguard Worker pw_persistent_ram 128*61c4878aSAndroid Build Coastguard Worker pw_trace_tokenized.config 129*61c4878aSAndroid Build Coastguard Worker pw_transfer 130*61c4878aSAndroid Build Coastguard Worker pw_transfer.proto.pwpb 131*61c4878aSAndroid Build Coastguard Worker SOURCES 132*61c4878aSAndroid Build Coastguard Worker transfer_handlers.cc 133*61c4878aSAndroid Build Coastguard Worker) 134*61c4878aSAndroid Build Coastguard Worker 135*61c4878aSAndroid Build Coastguard Workerpw_add_library(pw_system.file_manager STATIC 136*61c4878aSAndroid Build Coastguard Worker HEADERS 137*61c4878aSAndroid Build Coastguard Worker public/pw_system/file_manager.h 138*61c4878aSAndroid Build Coastguard Worker PUBLIC_INCLUDES 139*61c4878aSAndroid Build Coastguard Worker public 140*61c4878aSAndroid Build Coastguard Worker PUBLIC_DEPS 141*61c4878aSAndroid Build Coastguard Worker pw_system.config 142*61c4878aSAndroid Build Coastguard Worker pw_system.transfer_handlers 143*61c4878aSAndroid Build Coastguard Worker pw_persistent_ram.flat_file_system_entry 144*61c4878aSAndroid Build Coastguard Worker PRIVATE_DEPS 145*61c4878aSAndroid Build Coastguard Worker pw_system.trace_service 146*61c4878aSAndroid Build Coastguard Worker SOURCES 147*61c4878aSAndroid Build Coastguard Worker file_manager.cc 148*61c4878aSAndroid Build Coastguard Worker) 149*61c4878aSAndroid Build Coastguard Worker 150*61c4878aSAndroid Build Coastguard Workerpw_add_library(pw_system.transfer_service STATIC 151*61c4878aSAndroid Build Coastguard Worker HEADERS 152*61c4878aSAndroid Build Coastguard Worker public/pw_system/transfer_service.h 153*61c4878aSAndroid Build Coastguard Worker PUBLIC_INCLUDES 154*61c4878aSAndroid Build Coastguard Worker public 155*61c4878aSAndroid Build Coastguard Worker PUBLIC_DEPS 156*61c4878aSAndroid Build Coastguard Worker pw_transfer 157*61c4878aSAndroid Build Coastguard Worker PRIVATE_DEPS 158*61c4878aSAndroid Build Coastguard Worker pw_system.file_manager 159*61c4878aSAndroid Build Coastguard Worker SOURCES 160*61c4878aSAndroid Build Coastguard Worker transfer_service.cc 161*61c4878aSAndroid Build Coastguard Worker) 162*61c4878aSAndroid Build Coastguard Worker 163*61c4878aSAndroid Build Coastguard Workerpw_add_library(pw_system.file_service STATIC 164*61c4878aSAndroid Build Coastguard Worker HEADERS 165*61c4878aSAndroid Build Coastguard Worker public/pw_system/file_service.h 166*61c4878aSAndroid Build Coastguard Worker PUBLIC_INCLUDES 167*61c4878aSAndroid Build Coastguard Worker public 168*61c4878aSAndroid Build Coastguard Worker PRIVATE_DEPS 169*61c4878aSAndroid Build Coastguard Worker pw_system.file_manager 170*61c4878aSAndroid Build Coastguard Worker SOURCES 171*61c4878aSAndroid Build Coastguard Worker file_service.cc 172*61c4878aSAndroid Build Coastguard Worker) 173*61c4878aSAndroid Build Coastguard Worker 174*61c4878aSAndroid Build Coastguard Workerpw_add_library(pw_system.trace_service STATIC 175*61c4878aSAndroid Build Coastguard Worker HEADERS 176*61c4878aSAndroid Build Coastguard Worker public/pw_system/trace_service.h 177*61c4878aSAndroid Build Coastguard Worker PUBLIC_INCLUDES 178*61c4878aSAndroid Build Coastguard Worker public 179*61c4878aSAndroid Build Coastguard Worker PUBLIC_DEPS 180*61c4878aSAndroid Build Coastguard Worker pw_system.transfer_handlers 181*61c4878aSAndroid Build Coastguard Worker PRIVATE_DEPS 182*61c4878aSAndroid Build Coastguard Worker pw_persistent_ram 183*61c4878aSAndroid Build Coastguard Worker pw_trace_tokenized.trace_service_pwpb 184*61c4878aSAndroid Build Coastguard Worker SOURCES 185*61c4878aSAndroid Build Coastguard Worker trace_service.cc 186*61c4878aSAndroid Build Coastguard Worker) 187*61c4878aSAndroid Build Coastguard Worker 188*61c4878aSAndroid Build Coastguard Workerpw_add_facade(pw_system.io INTERFACE 189*61c4878aSAndroid Build Coastguard Worker BACKEND 190*61c4878aSAndroid Build Coastguard Worker pw_system.io_BACKEND 191*61c4878aSAndroid Build Coastguard Worker HEADERS 192*61c4878aSAndroid Build Coastguard Worker public/pw_system/io.h 193*61c4878aSAndroid Build Coastguard Worker PUBLIC_INCLUDES 194*61c4878aSAndroid Build Coastguard Worker public 195*61c4878aSAndroid Build Coastguard Worker PUBLIC_DEPS 196*61c4878aSAndroid Build Coastguard Worker pw_stream 197*61c4878aSAndroid Build Coastguard Worker) 198*61c4878aSAndroid Build Coastguard Worker 199*61c4878aSAndroid Build Coastguard Workerpw_add_facade(pw_system.device_handler INTERFACE 200*61c4878aSAndroid Build Coastguard Worker BACKEND 201*61c4878aSAndroid Build Coastguard Worker pw_system.device_handler_BACKEND 202*61c4878aSAndroid Build Coastguard Worker HEADERS 203*61c4878aSAndroid Build Coastguard Worker public/pw_system/device_handler.h 204*61c4878aSAndroid Build Coastguard Worker PUBLIC_INCLUDES 205*61c4878aSAndroid Build Coastguard Worker public 206*61c4878aSAndroid Build Coastguard Worker PUBLIC_DEPS 207*61c4878aSAndroid Build Coastguard Worker pw_snapshot.snapshot_proto.pwpb 208*61c4878aSAndroid Build Coastguard Worker) 209*61c4878aSAndroid Build Coastguard Worker 210*61c4878aSAndroid Build Coastguard Workerpw_add_library(pw_system.unknown_device_handler STATIC 211*61c4878aSAndroid Build Coastguard Worker SOURCES 212*61c4878aSAndroid Build Coastguard Worker unknown_device_handler.cc 213*61c4878aSAndroid Build Coastguard Worker PRIVATE_DEPS 214*61c4878aSAndroid Build Coastguard Worker pw_system.device_handler.facade 215*61c4878aSAndroid Build Coastguard Worker) 216*61c4878aSAndroid Build Coastguard Worker 217*61c4878aSAndroid Build Coastguard Workerpw_proto_library(pw_system.device_service_proto 218*61c4878aSAndroid Build Coastguard Worker SOURCES 219*61c4878aSAndroid Build Coastguard Worker pw_system_protos/device_service.proto 220*61c4878aSAndroid Build Coastguard Worker INPUTS 221*61c4878aSAndroid Build Coastguard Worker pw_system_protos/device_service.options 222*61c4878aSAndroid Build Coastguard Worker) 223*61c4878aSAndroid Build Coastguard Worker 224*61c4878aSAndroid Build Coastguard Workerpw_add_library(pw_system.device_service_pwpb STATIC 225*61c4878aSAndroid Build Coastguard Worker HEADERS 226*61c4878aSAndroid Build Coastguard Worker public/pw_system/device_service_pwpb.h 227*61c4878aSAndroid Build Coastguard Worker PUBLIC_INCLUDES 228*61c4878aSAndroid Build Coastguard Worker public 229*61c4878aSAndroid Build Coastguard Worker SOURCES 230*61c4878aSAndroid Build Coastguard Worker device_service_pwpb.cc 231*61c4878aSAndroid Build Coastguard Worker PUBLIC_DEPS 232*61c4878aSAndroid Build Coastguard Worker pw_system.device_service_proto.pwpb_rpc 233*61c4878aSAndroid Build Coastguard Worker PRIVATE_DEPS 234*61c4878aSAndroid Build Coastguard Worker pw_system.device_handler 235*61c4878aSAndroid Build Coastguard Worker) 236*61c4878aSAndroid Build Coastguard Worker 237*61c4878aSAndroid Build Coastguard Workerpw_add_library(pw_system.device_service STATIC 238*61c4878aSAndroid Build Coastguard Worker HEADERS 239*61c4878aSAndroid Build Coastguard Worker public/pw_system/device_service.h 240*61c4878aSAndroid Build Coastguard Worker PUBLIC_INCLUDES 241*61c4878aSAndroid Build Coastguard Worker public 242*61c4878aSAndroid Build Coastguard Worker SOURCES 243*61c4878aSAndroid Build Coastguard Worker device_service.cc 244*61c4878aSAndroid Build Coastguard Worker PRIVATE_DEPS 245*61c4878aSAndroid Build Coastguard Worker pw_system.device_service_pwpb 246*61c4878aSAndroid Build Coastguard Worker) 247*61c4878aSAndroid Build Coastguard Worker 248*61c4878aSAndroid Build Coastguard Workerpw_add_library(pw_system.init STATIC 249*61c4878aSAndroid Build Coastguard Worker HEADERS 250*61c4878aSAndroid Build Coastguard Worker public/pw_system/init.h 251*61c4878aSAndroid Build Coastguard Worker PUBLIC_INCLUDES 252*61c4878aSAndroid Build Coastguard Worker public 253*61c4878aSAndroid Build Coastguard Worker SOURCES 254*61c4878aSAndroid Build Coastguard Worker init.cc 255*61c4878aSAndroid Build Coastguard Worker PRIVATE_DEPS 256*61c4878aSAndroid Build Coastguard Worker pw_system.device_service 257*61c4878aSAndroid Build Coastguard Worker pw_system.file_manager 258*61c4878aSAndroid Build Coastguard Worker pw_system.file_service 259*61c4878aSAndroid Build Coastguard Worker pw_system.log 260*61c4878aSAndroid Build Coastguard Worker pw_system.rpc_server 261*61c4878aSAndroid Build Coastguard Worker pw_system.target_hooks.facade 262*61c4878aSAndroid Build Coastguard Worker pw_system.thread_snapshot_service 263*61c4878aSAndroid Build Coastguard Worker pw_system.trace_service 264*61c4878aSAndroid Build Coastguard Worker pw_system.transfer_service 265*61c4878aSAndroid Build Coastguard Worker pw_system.work_queue 266*61c4878aSAndroid Build Coastguard Worker pw_metric.global 267*61c4878aSAndroid Build Coastguard Worker pw_metric.metric_service_pwpb 268*61c4878aSAndroid Build Coastguard Worker pw_rpc.pwpb.echo_service 269*61c4878aSAndroid Build Coastguard Worker pw_thread.thread 270*61c4878aSAndroid Build Coastguard Worker pw_trace 271*61c4878aSAndroid Build Coastguard Worker) 272*61c4878aSAndroid Build Coastguard Worker 273*61c4878aSAndroid Build Coastguard Workerpw_add_library(pw_system.work_queue STATIC 274*61c4878aSAndroid Build Coastguard Worker HEADERS 275*61c4878aSAndroid Build Coastguard Worker public/pw_system/work_queue.h 276*61c4878aSAndroid Build Coastguard Worker PUBLIC_INCLUDES 277*61c4878aSAndroid Build Coastguard Worker public 278*61c4878aSAndroid Build Coastguard Worker SOURCES 279*61c4878aSAndroid Build Coastguard Worker work_queue.cc 280*61c4878aSAndroid Build Coastguard Worker PUBLIC_DEPS 281*61c4878aSAndroid Build Coastguard Worker pw_work_queue 282*61c4878aSAndroid Build Coastguard Worker PRIVATE_DEPS 283*61c4878aSAndroid Build Coastguard Worker pw_system.config 284*61c4878aSAndroid Build Coastguard Worker) 285*61c4878aSAndroid Build Coastguard Worker 286*61c4878aSAndroid Build Coastguard Workerpw_add_library(pw_system.sys_io_target_io STATIC 287*61c4878aSAndroid Build Coastguard Worker PRIVATE_DEPS 288*61c4878aSAndroid Build Coastguard Worker pw_system.io.facade 289*61c4878aSAndroid Build Coastguard Worker pw_stream 290*61c4878aSAndroid Build Coastguard Worker pw_stream.sys_io_stream 291*61c4878aSAndroid Build Coastguard Worker SOURCES 292*61c4878aSAndroid Build Coastguard Worker sys_io_target_io.cc 293*61c4878aSAndroid Build Coastguard Worker) 294*61c4878aSAndroid Build Coastguard Worker 295*61c4878aSAndroid Build Coastguard Workerpw_add_library(pw_system.socket_target_io STATIC 296*61c4878aSAndroid Build Coastguard Worker SOURCES 297*61c4878aSAndroid Build Coastguard Worker socket_target_io.cc 298*61c4878aSAndroid Build Coastguard Worker PRIVATE_DEPS 299*61c4878aSAndroid Build Coastguard Worker pw_assert 300*61c4878aSAndroid Build Coastguard Worker pw_stream 301*61c4878aSAndroid Build Coastguard Worker pw_stream.socket_stream 302*61c4878aSAndroid Build Coastguard Worker pw_system.config 303*61c4878aSAndroid Build Coastguard Worker pw_system.io.facade 304*61c4878aSAndroid Build Coastguard Worker) 305*61c4878aSAndroid Build Coastguard Worker 306*61c4878aSAndroid Build Coastguard Workerpw_add_facade(pw_system.target_hooks INTERFACE 307*61c4878aSAndroid Build Coastguard Worker BACKEND 308*61c4878aSAndroid Build Coastguard Worker pw_system.target_hooks_BACKEND 309*61c4878aSAndroid Build Coastguard Worker HEADERS 310*61c4878aSAndroid Build Coastguard Worker public/pw_system/target_hooks.h 311*61c4878aSAndroid Build Coastguard Worker PUBLIC_INCLUDES 312*61c4878aSAndroid Build Coastguard Worker public 313*61c4878aSAndroid Build Coastguard Worker PUBLIC_DEPS 314*61c4878aSAndroid Build Coastguard Worker pw_thread.thread 315*61c4878aSAndroid Build Coastguard Worker) 316*61c4878aSAndroid Build Coastguard Worker 317*61c4878aSAndroid Build Coastguard Workerpw_add_library(pw_system.stl_target_hooks STATIC 318*61c4878aSAndroid Build Coastguard Worker PRIVATE_DEPS 319*61c4878aSAndroid Build Coastguard Worker pw_system.config 320*61c4878aSAndroid Build Coastguard Worker pw_thread.sleep 321*61c4878aSAndroid Build Coastguard Worker pw_thread.thread 322*61c4878aSAndroid Build Coastguard Worker pw_thread_stl.thread 323*61c4878aSAndroid Build Coastguard Worker SOURCES 324*61c4878aSAndroid Build Coastguard Worker stl_target_hooks.cc 325*61c4878aSAndroid Build Coastguard Worker) 326*61c4878aSAndroid Build Coastguard Worker 327*61c4878aSAndroid Build Coastguard Workerpw_add_library(pw_system.freertos_target_hooks STATIC 328*61c4878aSAndroid Build Coastguard Worker SOURCES 329*61c4878aSAndroid Build Coastguard Worker freertos_target_hooks.cc 330*61c4878aSAndroid Build Coastguard Worker PRIVATE_DEPS 331*61c4878aSAndroid Build Coastguard Worker pw_system.config 332*61c4878aSAndroid Build Coastguard Worker pw_thread.thread 333*61c4878aSAndroid Build Coastguard Worker pw_thread_freertos.thread 334*61c4878aSAndroid Build Coastguard Worker # TODO: b/234876414 - This should depend on FreeRTOS but our third parties 335*61c4878aSAndroid Build Coastguard Worker # currently do not have CMake support. 336*61c4878aSAndroid Build Coastguard Worker) 337*61c4878aSAndroid Build Coastguard Worker 338*61c4878aSAndroid Build Coastguard Workerpw_add_library(pw_system.zephyr_target_hooks STATIC 339*61c4878aSAndroid Build Coastguard Worker SOURCES 340*61c4878aSAndroid Build Coastguard Worker zephyr_target_hooks.cc 341*61c4878aSAndroid Build Coastguard Worker PRIVATE_DEPS 342*61c4878aSAndroid Build Coastguard Worker pw_system.target_hooks.facade 343*61c4878aSAndroid Build Coastguard Worker pw_thread.thread 344*61c4878aSAndroid Build Coastguard Worker pw_thread_zephyr.thread 345*61c4878aSAndroid Build Coastguard Worker) 346*61c4878aSAndroid Build Coastguard Worker 347*61c4878aSAndroid Build Coastguard Workeradd_executable(pw_system.system_example EXCLUDE_FROM_ALL 348*61c4878aSAndroid Build Coastguard Worker example_user_app_init.cc 349*61c4878aSAndroid Build Coastguard Worker) 350*61c4878aSAndroid Build Coastguard Workertarget_link_libraries(pw_system.system_example 351*61c4878aSAndroid Build Coastguard Worker PRIVATE 352*61c4878aSAndroid Build Coastguard Worker pw_system.init 353*61c4878aSAndroid Build Coastguard Worker pw_system.io 354*61c4878aSAndroid Build Coastguard Worker pw_system.log 355*61c4878aSAndroid Build Coastguard Worker pw_system.rpc_server 356*61c4878aSAndroid Build Coastguard Worker pw_system.work_queue 357*61c4878aSAndroid Build Coastguard Worker pw_log 358*61c4878aSAndroid Build Coastguard Worker pw_thread.sleep 359*61c4878aSAndroid Build Coastguard Worker pw_trace 360*61c4878aSAndroid Build Coastguard Worker pw_unit_test.rpc_service 361*61c4878aSAndroid Build Coastguard Worker pw_system.target_hooks 362*61c4878aSAndroid Build Coastguard Worker targets.host_device_simulator.boot 363*61c4878aSAndroid Build Coastguard Worker) 364*61c4878aSAndroid Build Coastguard Worker 365*61c4878aSAndroid Build Coastguard Workerpw_add_library(pw_system.async STATIC 366*61c4878aSAndroid Build Coastguard Worker HEADERS 367*61c4878aSAndroid Build Coastguard Worker public/pw_system/system.h 368*61c4878aSAndroid Build Coastguard Worker PUBLIC_INCLUDES 369*61c4878aSAndroid Build Coastguard Worker public 370*61c4878aSAndroid Build Coastguard Worker SOURCES 371*61c4878aSAndroid Build Coastguard Worker pw_system_private/threads.h 372*61c4878aSAndroid Build Coastguard Worker system.cc 373*61c4878aSAndroid Build Coastguard Worker threads.cc 374*61c4878aSAndroid Build Coastguard Worker PUBLIC_DEPS 375*61c4878aSAndroid Build Coastguard Worker pw_allocator.allocator 376*61c4878aSAndroid Build Coastguard Worker pw_async2.dispatcher 377*61c4878aSAndroid Build Coastguard Worker pw_channel 378*61c4878aSAndroid Build Coastguard Worker pw_rpc.server 379*61c4878aSAndroid Build Coastguard Worker PRIVATE_DEPS 380*61c4878aSAndroid Build Coastguard Worker pw_system.async_packet_io 381*61c4878aSAndroid Build Coastguard Worker pw_system.file_manager 382*61c4878aSAndroid Build Coastguard Worker pw_system.file_service 383*61c4878aSAndroid Build Coastguard Worker pw_system.log 384*61c4878aSAndroid Build Coastguard Worker pw_system.thread_snapshot_service 385*61c4878aSAndroid Build Coastguard Worker pw_system.transfer_service 386*61c4878aSAndroid Build Coastguard Worker pw_system.work_queue 387*61c4878aSAndroid Build Coastguard Worker pw_allocator.best_fit_block_allocator 388*61c4878aSAndroid Build Coastguard Worker pw_allocator.synchronized_allocator 389*61c4878aSAndroid Build Coastguard Worker pw_async2.allocate_task 390*61c4878aSAndroid Build Coastguard Worker pw_async2.pend_func_task 391*61c4878aSAndroid Build Coastguard Worker pw_hdlc.router 392*61c4878aSAndroid Build Coastguard Worker pw_multibuf.simple_allocator 393*61c4878aSAndroid Build Coastguard Worker pw_rpc.pwpb.echo_service 394*61c4878aSAndroid Build Coastguard Worker pw_sync.interrupt_spin_lock 395*61c4878aSAndroid Build Coastguard Worker pw_thread.thread 396*61c4878aSAndroid Build Coastguard Worker) 397*61c4878aSAndroid Build Coastguard Worker 398*61c4878aSAndroid Build Coastguard Workerpw_add_library(pw_system.async_packet_io STATIC 399*61c4878aSAndroid Build Coastguard Worker HEADERS 400*61c4878aSAndroid Build Coastguard Worker public/pw_system/internal/async_packet_io.h 401*61c4878aSAndroid Build Coastguard Worker PUBLIC_INCLUDES 402*61c4878aSAndroid Build Coastguard Worker public 403*61c4878aSAndroid Build Coastguard Worker SOURCES 404*61c4878aSAndroid Build Coastguard Worker async_packet_io.cc 405*61c4878aSAndroid Build Coastguard Worker PUBLIC_DEPS 406*61c4878aSAndroid Build Coastguard Worker pw_async2.dispatcher 407*61c4878aSAndroid Build Coastguard Worker pw_channel.forwarding_channel 408*61c4878aSAndroid Build Coastguard Worker pw_containers.inline_var_len_entry_queue 409*61c4878aSAndroid Build Coastguard Worker pw_hdlc.router 410*61c4878aSAndroid Build Coastguard Worker pw_multibuf.simple_allocator 411*61c4878aSAndroid Build Coastguard Worker pw_rpc.server 412*61c4878aSAndroid Build Coastguard Worker pw_sync.lock_annotations 413*61c4878aSAndroid Build Coastguard Worker pw_sync.mutex 414*61c4878aSAndroid Build Coastguard Worker pw_sync.thread_notification 415*61c4878aSAndroid Build Coastguard Worker pw_thread.thread 416*61c4878aSAndroid Build Coastguard Worker pw_thread.thread_core 417*61c4878aSAndroid Build Coastguard Worker pw_allocator.allocator 418*61c4878aSAndroid Build Coastguard Worker pw_channel 419*61c4878aSAndroid Build Coastguard Worker pw_multibuf 420*61c4878aSAndroid Build Coastguard Worker PRIVATE_DEPS 421*61c4878aSAndroid Build Coastguard Worker pw_system.config 422*61c4878aSAndroid Build Coastguard Worker pw_assert 423*61c4878aSAndroid Build Coastguard Worker pw_log 424*61c4878aSAndroid Build Coastguard Worker) 425*61c4878aSAndroid Build Coastguard Worker 426*61c4878aSAndroid Build Coastguard Workerif((NOT "${pw_async2.dispatcher_BACKEND}" STREQUAL "") AND 427*61c4878aSAndroid Build Coastguard Worker (NOT "${CMAKE_SYSTEM_NAME}" STREQUAL "Windows")) 428*61c4878aSAndroid Build Coastguard Worker # TODO: b/317922402 - Run on Windows when thread detaching is supported. 429*61c4878aSAndroid Build Coastguard Worker pw_add_test(pw_system.async_packet_io_test 430*61c4878aSAndroid Build Coastguard Worker SOURCES 431*61c4878aSAndroid Build Coastguard Worker async_packet_io_test.cc 432*61c4878aSAndroid Build Coastguard Worker PRIVATE_DEPS 433*61c4878aSAndroid Build Coastguard Worker pw_system.async_packet_io 434*61c4878aSAndroid Build Coastguard Worker pw_allocator.testing 435*61c4878aSAndroid Build Coastguard Worker pw_channel.loopback_channel 436*61c4878aSAndroid Build Coastguard Worker pw_multibuf.testing 437*61c4878aSAndroid Build Coastguard Worker GROUPS 438*61c4878aSAndroid Build Coastguard Worker modules 439*61c4878aSAndroid Build Coastguard Worker pw_system 440*61c4878aSAndroid Build Coastguard Worker ) 441*61c4878aSAndroid Build Coastguard Worker 442*61c4878aSAndroid Build Coastguard Worker pw_add_test(pw_system.system_async_test 443*61c4878aSAndroid Build Coastguard Worker SOURCES 444*61c4878aSAndroid Build Coastguard Worker system_async_test.cc 445*61c4878aSAndroid Build Coastguard Worker PRIVATE_DEPS 446*61c4878aSAndroid Build Coastguard Worker pw_system.async 447*61c4878aSAndroid Build Coastguard Worker pw_allocator.testing 448*61c4878aSAndroid Build Coastguard Worker pw_channel.loopback_channel 449*61c4878aSAndroid Build Coastguard Worker pw_multibuf.testing 450*61c4878aSAndroid Build Coastguard Worker GROUPS 451*61c4878aSAndroid Build Coastguard Worker modules 452*61c4878aSAndroid Build Coastguard Worker pw_system 453*61c4878aSAndroid Build Coastguard Worker ) 454*61c4878aSAndroid Build Coastguard Workerendif() 455*61c4878aSAndroid Build Coastguard Worker 456*61c4878aSAndroid Build Coastguard Worker 457*61c4878aSAndroid Build Coastguard Workeradd_executable(pw_system.system_async_host_example EXCLUDE_FROM_ALL 458*61c4878aSAndroid Build Coastguard Worker example_user_app_init.cc 459*61c4878aSAndroid Build Coastguard Worker) 460*61c4878aSAndroid Build Coastguard Workertarget_link_libraries(pw_system.system_async_host_example 461*61c4878aSAndroid Build Coastguard Worker PRIVATE 462*61c4878aSAndroid Build Coastguard Worker pw_system.async 463*61c4878aSAndroid Build Coastguard Worker pw_channel.epoll_channel 464*61c4878aSAndroid Build Coastguard Worker pw_multibuf.testing 465*61c4878aSAndroid Build Coastguard Worker pw_trace 466*61c4878aSAndroid Build Coastguard Worker pw_unit_test.rpc_service 467*61c4878aSAndroid Build Coastguard Worker targets.host_device_simulator.boot 468*61c4878aSAndroid Build Coastguard Worker) 469