pw_async: Add missing dispatcher facades to cmake

This adds a declaration of the `fake_dispatcher` facade to cmake as well
as `heap_dispatcher` and a `fake_dispatcher` backend implementation in
`pw_async_basic`.

Fixes: 335866562
Change-Id: I7a358379f9e49ebf3f060a6ac89f635a2ec411b7
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/204873
Commit-Queue: Eric Rahm <erahm@google.com>
Lint: Lint 🤖 <android-build-ayeaye@system.gserviceaccount.com>
Reviewed-by: Wyatt Hepler <hepler@google.com>
This commit is contained in:
Eric Rahm 2024-04-26 23:38:26 +00:00 committed by CQ Bot Account
parent ae56930fee
commit 74004ce595
3 changed files with 41 additions and 0 deletions

View File

@ -53,3 +53,27 @@ pw_add_facade(pw_async.dispatcher INTERFACE
pw_function
pw_status
)
pw_add_facade(pw_async.fake_dispatcher INTERFACE
BACKEND
pw_async.fake_dispatcher_BACKEND
HEADERS
public/pw_async/fake_dispatcher.h
PUBLIC_INCLUDES
public
PUBLIC_DEPS
pw_async.dispatcher
)
pw_add_library(pw_async.heap_dispatcher STATIC
HEADERS
public/pw_async/heap_dispatcher.h
SOURCES
heap_dispatcher.cc
PRIVATE_DEPS
pw_result
PUBLIC_DEPS
pw_async.dispatcher
pw_async.task
pw_async.types
)

View File

@ -19,3 +19,4 @@ include($ENV{PW_ROOT}/pw_build/pigweed.cmake)
# Backend for the pw_async module.
pw_add_backend_variable(pw_async.task_BACKEND)
pw_add_backend_variable(pw_async.dispatcher_BACKEND)
pw_add_backend_variable(pw_async.fake_dispatcher_BACKEND)

View File

@ -41,3 +41,19 @@ pw_add_library(pw_async_basic.dispatcher_backend STATIC
pw_sync.timed_thread_notification
pw_thread.thread_core
)
pw_add_library(pw_async_basic.fake_dispatcher_backend STATIC
HEADERS
public/pw_async_basic/fake_dispatcher.h
public_overrides/pw_async_backend/fake_dispatcher.h
SOURCES
fake_dispatcher.cc
PUBLIC_INCLUDES
public
PUBLIC_DEPS
pw_async_basic.task_backend
pw_async.fake_dispatcher.facade
pw_unit_test
PRIVATE_DEPS
pw_log
)