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 Workerinclude($ENV{PW_ROOT}/pw_build/pigweed.cmake) 16*61c4878aSAndroid Build Coastguard Workerinclude($ENV{PW_ROOT}/pw_async/backend.cmake) 17*61c4878aSAndroid Build Coastguard Worker 18*61c4878aSAndroid Build Coastguard Workerpw_add_library(pw_async.types INTERFACE 19*61c4878aSAndroid Build Coastguard Worker HEADERS 20*61c4878aSAndroid Build Coastguard Worker public/pw_async/context.h 21*61c4878aSAndroid Build Coastguard Worker public/pw_async/task_function.h 22*61c4878aSAndroid Build Coastguard Worker PUBLIC_INCLUDES 23*61c4878aSAndroid Build Coastguard Worker public 24*61c4878aSAndroid Build Coastguard Worker PUBLIC_DEPS 25*61c4878aSAndroid Build Coastguard Worker pw_function 26*61c4878aSAndroid Build Coastguard Worker pw_status 27*61c4878aSAndroid Build Coastguard Worker) 28*61c4878aSAndroid Build Coastguard Worker 29*61c4878aSAndroid Build Coastguard Workerpw_add_facade(pw_async.task INTERFACE 30*61c4878aSAndroid Build Coastguard Worker BACKEND 31*61c4878aSAndroid Build Coastguard Worker pw_async.task_BACKEND 32*61c4878aSAndroid Build Coastguard Worker HEADERS 33*61c4878aSAndroid Build Coastguard Worker public/pw_async/task.h 34*61c4878aSAndroid Build Coastguard Worker PUBLIC_INCLUDES 35*61c4878aSAndroid Build Coastguard Worker public 36*61c4878aSAndroid Build Coastguard Worker PUBLIC_DEPS 37*61c4878aSAndroid Build Coastguard Worker pw_async.types 38*61c4878aSAndroid Build Coastguard Worker pw_function 39*61c4878aSAndroid Build Coastguard Worker pw_status 40*61c4878aSAndroid Build Coastguard Worker) 41*61c4878aSAndroid Build Coastguard Worker 42*61c4878aSAndroid Build Coastguard Workerpw_add_facade(pw_async.dispatcher INTERFACE 43*61c4878aSAndroid Build Coastguard Worker BACKEND 44*61c4878aSAndroid Build Coastguard Worker pw_async.dispatcher_BACKEND 45*61c4878aSAndroid Build Coastguard Worker HEADERS 46*61c4878aSAndroid Build Coastguard Worker public/pw_async/dispatcher.h 47*61c4878aSAndroid Build Coastguard Worker public/pw_async/function_dispatcher.h 48*61c4878aSAndroid Build Coastguard Worker PUBLIC_INCLUDES 49*61c4878aSAndroid Build Coastguard Worker public 50*61c4878aSAndroid Build Coastguard Worker PUBLIC_DEPS 51*61c4878aSAndroid Build Coastguard Worker pw_async.types 52*61c4878aSAndroid Build Coastguard Worker pw_chrono.system_clock 53*61c4878aSAndroid Build Coastguard Worker pw_function 54*61c4878aSAndroid Build Coastguard Worker pw_status 55*61c4878aSAndroid Build Coastguard Worker) 56*61c4878aSAndroid Build Coastguard Worker 57*61c4878aSAndroid Build Coastguard Workerpw_add_facade(pw_async.fake_dispatcher INTERFACE 58*61c4878aSAndroid Build Coastguard Worker BACKEND 59*61c4878aSAndroid Build Coastguard Worker pw_async.fake_dispatcher_BACKEND 60*61c4878aSAndroid Build Coastguard Worker HEADERS 61*61c4878aSAndroid Build Coastguard Worker public/pw_async/fake_dispatcher.h 62*61c4878aSAndroid Build Coastguard Worker PUBLIC_INCLUDES 63*61c4878aSAndroid Build Coastguard Worker public 64*61c4878aSAndroid Build Coastguard Worker PUBLIC_DEPS 65*61c4878aSAndroid Build Coastguard Worker pw_async.dispatcher 66*61c4878aSAndroid Build Coastguard Worker) 67*61c4878aSAndroid Build Coastguard Worker 68*61c4878aSAndroid Build Coastguard Workerpw_add_library(pw_async.heap_dispatcher STATIC 69*61c4878aSAndroid Build Coastguard Worker HEADERS 70*61c4878aSAndroid Build Coastguard Worker public/pw_async/heap_dispatcher.h 71*61c4878aSAndroid Build Coastguard Worker SOURCES 72*61c4878aSAndroid Build Coastguard Worker heap_dispatcher.cc 73*61c4878aSAndroid Build Coastguard Worker PRIVATE_DEPS 74*61c4878aSAndroid Build Coastguard Worker pw_result 75*61c4878aSAndroid Build Coastguard Worker PUBLIC_DEPS 76*61c4878aSAndroid Build Coastguard Worker pw_async.dispatcher 77*61c4878aSAndroid Build Coastguard Worker pw_async.task 78*61c4878aSAndroid Build Coastguard Worker pw_async.types 79*61c4878aSAndroid Build Coastguard Worker) 80