• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1include($ENV{PW_ROOT}/pw_build/pigweed.cmake)
2include($ENV{PW_ROOT}/pw_flatbuffers/flatbuffers.cmake)
3include(backend.cmake)
4
5pw_add_facade(chre.platform.shared.authentication INTERFACE
6  BACKEND
7    chre.platform.shared.authentication_BACKEND
8  HEADERS
9    include/chre/platform/shared/authentication.h
10  PUBLIC_INCLUDES
11    include
12)
13
14pw_add_facade(chre.platform.shared.bt_snoop_log INTERFACE
15  BACKEND
16    chre.platform.shared.bt_snoop_log_BACKEND
17  HEADERS
18    include/chre/platform/shared/bt_snoop_log.h
19  PUBLIC_INCLUDES
20    include
21)
22
23# Implements chre_api/chre/audio.h's:
24# - bool chreAudioGetSource(uint32_t handle,
25#                           struct chreAudioSource *audioSource)
26# - bool chreAudioConfigureSource(uint32_t handle, bool enable,
27#                                 uint64_t bufferDuration,
28#                                 uint64_t deliveryInterval)
29# - bool chreAudioGetStatus(uint32_t handle,
30#                           struct chreAudioSourceStatus *status)
31#
32pw_add_library(chre.platform.shared.chre_api_audio STATIC
33  SOURCES
34    chre_api_audio.cc
35  PRIVATE_DEPS
36    chre.chre_api.facade
37    chre.platform.platform_audio
38    chre.util
39    chre.util.system
40)
41# Implements chre_api/chre/ble.h's:
42# - uint32_t chreBleGetCapabilities()
43# - uint32_t chreBleGetFilterCapabilities()
44# - bool chreBleFlushAsync(const void *cookie)
45# - bool chreBleStartScanAsync(chreBleScanMode mode,
46#                              uint32_t reportDelayMs,
47#                              const struct chreBleScanFilter *filter)
48# - bool chreBleStartScanAsyncV1_9(enum chreBleScanMode mode,
49#                                  uint32_t reportDelayMs,
50#                                  const struct chreBleScanFilterV1_9 *filter,
51#                                  const void *cookie)
52# - bool chreBleStopScanAsync()
53# - bool chreBleStopScanAsyncV1_9(const void *cookie)
54# - bool chreBleReadRssiAsync(uint16_t connectionHandle,
55#                             const void *cookie)
56# - bool chreBleGetScanStatus(struct chreBleScanStatus *status)
57#
58pw_add_library(chre.platform.shared.chre_api_ble STATIC
59  SOURCES
60    chre_api_ble.cc
61  PRIVATE_DEPS
62    chre.chre_api.facade
63    chre.core
64    chre.util
65    chre.util.system
66)
67
68# Implements chre_api/chre/event.h's:
69# - bool chreSendEvent(uint16_t eventType, void *eventData,
70#                      chreEventCompleteFunction *freeCallback,
71#                      uint32_t targetInstanceId)
72# - bool chreSendMessageToHost(void *message, uint32_t messageSize,
73#                              uint32_t messageType,
74#                              chreMessageFreeFunction *freeCallback)
75# - bool chreSendMessageToHostEndpoint(
76#       void *message, size_t messageSize, uint32_t messageType,
77#       uint16_t hostEndpoint, chreMessageFreeFunction *freeCallback)
78# - bool chreSendMessageWithPermissions(
79#       void *message, size_t messageSize, uint32_t messageType,
80#       uint16_t hostEndpoint, uint32_t messagePermissions,
81#       chreMessageFreeFunction *freeCallback)
82# - bool chreSendReliableMessageAsync(
83#       void *message, size_t messageSize, uint32_t messageType,
84#       uint16_t hostEndpoint, uint32_t messagePermissions,
85#       chreMessageFreeFunction *freeCallback, const void *cookie)
86# - bool chreGetNanoappInfoByAppId(uint64_t appId, struct chreNanoappInfo *info)
87# - bool chreGetNanoappInfoByInstanceId(uint32_t instanceId,
88#                                       struct chreNanoappInfo *info)
89# - void chreConfigureNanoappInfoEvents(bool enable)
90# - void chreConfigureHostSleepStateEvents(bool enable)
91# - bool chreIsHostAwake()
92# - void chreConfigureDebugDumpEvent(bool enable)
93# - bool chreConfigureHostEndpointNotifications(uint16_t hostEndpointId,
94#                                               bool enable)
95# - bool chrePublishRpcServices(struct chreNanoappRpcService *services,
96#                               size_t numServices)
97# - bool chreGetHostEndpointInfo(uint16_t hostEndpointId,
98#                                struct chreHostEndpointInfo *info)
99#
100pw_add_library(chre.platform.shared.chre_api_core STATIC
101  SOURCES
102    chre_api_core.cc
103  PRIVATE_DEPS
104    chre.chre_api.facade
105    chre.core
106    chre.platform.log
107    chre.util
108    chre.util.system
109)
110
111# Implements chre_api/chre/gnss.h's:
112# - uint32_t chreGnssGetCapabilities()
113# - bool chreGnssLocationSessionStartAsync(
114#       uint32_t minIntervalMs, uint32_t minTimeToNextFixMs,
115#       const void *cookie)
116# - bool chreGnssLocationSessionStopAsync(const void *cookie)
117# - bool chreGnssMeasurementSessionStartAsync(
118#        uint32_t minIntervalMs, const void *cookie)
119# - bool chreGnssMeasurementSessionStopAsync(const void *cookie)
120# - bool chreGnssConfigurePassiveLocationListener(bool enable)
121#
122pw_add_library(chre.platform.shared.chre_api_gnss STATIC
123  SOURCES
124    chre_api_gnss.cc
125  PRIVATE_DEPS
126    chre.chre_api.facade
127    chre.core
128    chre.util
129    chre.util.system
130)
131
132# Implements chre_api/chre/msg.h's:
133# - bool chreMsgGetEndpointInfo(uint64_t hubId, uint64_t endpointId,
134#                               struct chreMsgEndpointInfo *info)
135# - size_t chreMsgGetEndpointServiceCount(uint64_t hubId, uint64_t endpointId)
136# - bool chreMsgGetEndpointServices(uint64_t hubId, uint64_t endpointId,
137#                                   struct chreMsgEndpointServiceInfo *services,
138#                                   size_t *numServices)
139# - bool chreMsgConfigureEndpointNotifications(uint64_t hubId,
140#                                              uint64_t endpointId,
141#                                              bool enable)
142# - bool chreMsgGetSessionInfo(uint16_t sessionId,
143#                              struct chreMsgEndpointSessionInfo *info)
144# - bool chreMsgPublishRpcServices(struct chreMsgEndpointServiceInfo *services,
145#                                  size_t numServices)
146# - uint16_t chreMsgOpenEndpointSessionAsync(uint64_t hubId,
147#                                            uint64_t endpointId)
148# - uint16_t chreMsgOpenEndpointSessionWithServiceAsync(
149#       uint64_t hubId, uint64_t endpointId, const char *serviceDescriptor)
150# - uint16_t chreMsgOpenDefaultEndpointSessionAsync(uint64_t endpointId)
151# - uint16_t chreMsgOpenDefaultEndpointSessionWithServiceAsync(
152#       uint64_t endpointId, const char *serviceDescriptor)
153# - uint16_t chreMsgOpenServiceEndpointSessionAsync(const char *serviceDescriptor)
154# - bool chreMsgCloseEndpointSessionAsync(uint16_t sessionId)
155# - bool chreMsgSendReliableEndpointMessageAsync(
156#       void *message, size_t messageSize, uint32_t messageType,
157#       uint16_t sessionId, uint32_t messagePermissions,
158#       chreMessageFreeFunction *freeCallback, const void *cookie)
159pw_add_library(chre.platform.shared.chre_api_msg STATIC
160  SOURCES
161    chre_api_msg.cc
162  PRIVATE_DEPS
163    chre.chre_api.facade
164    chre.core
165    chre.util
166    chre.util.system
167)
168
169# Implements chre_api/chre/re.h's:
170# - uint32_t chreGetCapabilities()
171# - uint32_t chreGetMessageToHostMaxSize()
172# - uint64_t chreGetAppId(void)
173# - uint32_t chreGetInstanceId(void)
174# - uint64_t chreGetTime()
175# - int64_t chreGetEstimatedHostTimeOffset()
176# - uint32_t chreTimerSet(uint64_t duration, const void *cookie, bool oneShot)
177# - bool chreTimerCancel(uint32_t timerId)
178# - void chreAbort(uint32_t abortCode)
179# - void* chreHeapAlloc(uint32_t bytes)
180# - void chreHeapFree(void *ptr)
181# - chreDebugDumpLog(const char *formatStr, ...)
182#
183# Also provides:
184# - void platform_chreDebugDumpVaLog(const char *formatStr, va_list args)
185#
186# Does not provide:
187# - void chreLog(enum chreLogLevel level, const char *formatStr, ...)
188pw_add_library(chre.platform.shared.chre_api_re STATIC
189  HEADERS
190    include/chre/platform/shared/debug_dump.h
191  PUBLIC_INCLUDES
192    include
193  SOURCES
194    chre_api_re.cc
195  PRIVATE_DEPS
196    chre.chre_api.facade
197    chre.core
198    chre.platform.fatal_error
199    chre.util
200)
201
202# Implements chre_api/chre/sensor.h's:
203# - bool chreSensorFindDefault(uint8_t sensorType, uint32_t *handle)
204# - bool chreSensorFind(uint8_t sensorType, uint8_t sensorIndex,
205#                       uint32_t *handle)
206# - bool chreGetSensorInfo(uint32_t sensorHandle, struct chreSensorInfo *info)
207# - bool chreGetSensorSamplingStatus(uint32_t sensorHandle,
208#                                    struct chreSensorSamplingStatus *status)
209# - bool chreSensorConfigure(uint32_t sensorHandle,
210#                            enum chreSensorConfigureMode mode,
211#                            uint64_t interval, uint64_t latency)
212# - bool chreSensorConfigureBiasEvents(uint32_t sensorHandle, bool enable)
213# - bool chreSensorGetThreeAxisBias(uint32_t sensorHandle,
214#                                   struct chreSensorThreeAxisData *bias)
215# - bool chreSensorFlushAsync(uint32_t sensorHandle, const void *cookie)
216#
217pw_add_library(chre.platform.shared.chre_api_sensor STATIC
218  SOURCES
219    chre_api_sensor.cc
220  PRIVATE_DEPS
221    chre.chre_api.facade
222    chre.core
223    chre.util
224)
225
226# Implements chre_api/chre/user_settings.h's:
227# - int8_t chreUserSettingGetState(uint8_t setting)
228# - void chreUserSettingConfigureEvents(uint8_t setting, bool enable)
229#
230pw_add_library(chre.platform.shared.chre_api_user_settings STATIC
231  SOURCES
232    chre_api_user_settings.cc
233  PRIVATE_DEPS
234    chre.chre_api.facade
235    chre.core
236    chre.util
237)
238
239# Implements chre_api/chre/version.h's:
240# - uint32_t chreGetApiVersion(void)
241# - uint32_t chreGetVersion(void)
242# - uint64_t chreGetPlatformId(void)
243#
244pw_add_library(chre.platform.shared.chre_api_version STATIC
245  SOURCES
246    chre_api_version.cc
247  PRIVATE_DEPS
248    chre.chre_api.facade
249    chre.core
250    chre.util
251)
252
253# Implements chre_api/chre/wifi.h's:
254# - uint32_t chreWifiGetCapabilities()
255# - bool chreWifiNanGetCapabilities(
256#       struct chreWifiNanCapabilities *capabilities)
257# - bool chreWifiConfigureScanMonitorAsync(bool enable, const void *cookie)
258# - bool chreWifiRequestScanAsync(const struct chreWifiScanParams *params,
259#                                 const void *cookie)
260# - bool chreWifiRequestRangingAsync(
261#       const struct chreWifiRangingParams *params, const void *cookie)
262# - bool chreWifiNanSubscribe(struct chreWifiNanSubscribeConfig *config,
263#                             const void *cookie)
264# - bool chreWifiNanSubscribeCancel(uint32_t subscriptionId)
265# - bool chreWifiNanRequestRangingAsync(
266#       const struct chreWifiNanRangingParams *params, const void *cookie)
267#
268pw_add_library(chre.platform.shared.chre_api_wifi STATIC
269  SOURCES
270    chre_api_wifi.cc
271  PRIVATE_DEPS
272    chre.chre_api.facade
273    chre.core
274    chre.util
275    chre.util.system
276)
277
278# Implements chre_api/chre/wwan.h's:
279# - uint32_t chreWwanGetCapabilities()
280# - bool chreWwanGetCellInfoAsync(const void *cookie)
281#
282pw_add_library(chre.platform.shared.chre_api_wwan STATIC
283  SOURCES
284    chre_api_wwan.cc
285  PRIVATE_DEPS
286    chre.chre_api.facade
287    chre.core
288    chre.util
289    chre.util.system
290)
291
292pw_add_library(chre.platform.shared.dlfcn STATIC
293  HEADERS
294    include/chre/platform/shared/libc/dlfcn.h
295  PUBLIC_INCLUDES
296    include/chre/platform/shared/libc
297  SOURCES
298    dlfcn.cc
299  PRIVATE_DEPS
300    chre.platform.assert
301    chre.platform.log
302    chre.platform.shared.nanoapp_loader
303    chre.util
304)
305
306pw_flatbuffer_library(chre.platform.shared.idl.host_messages_generated
307  SOURCES
308    idl/host_messages.fbs
309  FLATC_FLAGS
310    --scoped-enums
311    --cpp-ptr-type chre::UniquePtr
312  DEPS
313    chre_third_party.flatbuffers
314  PREFIX
315    chre/platform/shared/fbs
316  STRIP_PREFIX
317    idl
318)
319
320pw_add_library(chre.platform.shared.host_protocol_chre STATIC
321  HEADERS
322    include/chre/platform/shared/host_protocol_chre.h
323  PUBLIC_INCLUDES
324    include
325  PUBLIC_DEPS
326    chre.core
327    chre.platform.shared.idl.host_messages_generated.cpp
328    chre.platform.shared.host_protocol_common
329    chre.util
330    chre.util.flatbuffers
331    chre.util.system
332    chre.chre_api
333    chre_third_party.flatbuffers
334  SOURCES
335    host_protocol_chre.cc
336    host_link.cc
337  PRIVATE_DEPS
338    chre.core
339    chre.platform.log
340    chre.platform.shared.nanoapp_load_manager
341)
342
343pw_add_library(chre.platform.shared.host_protocol_common STATIC
344  HEADERS
345    include/chre/platform/shared/host_protocol_common.h
346  PUBLIC_INCLUDES
347    include
348  PUBLIC_DEPS
349    chre.util.system
350    chre_third_party.flatbuffers
351  SOURCES
352    host_protocol_common.cc
353  PRIVATE_DEPS
354    chre.platform.shared.idl.host_messages_generated.cpp
355)
356
357pw_add_library(chre.platform.shared.loader_util INTERFACE
358  HEADERS
359    include/chre/platform/shared/loader_util.h
360  PUBLIC_INCLUDES
361    include
362  PUBLIC_DEPS
363    chre.variant.config
364)
365
366pw_add_library(chre.platform.shared.log_buffer STATIC
367  HEADERS
368    include/chre/platform/shared/log_buffer.h
369  PUBLIC_INCLUDES
370    include
371  PUBLIC_DEPS
372    chre.core
373    chre.platform.mutex
374    chre.platform.shared.bt_snoop_log
375    chre.platform.shared.idl.host_messages_generated.cpp
376  SOURCES
377    log_buffer.cc
378  PRIVATE_DEPS
379    chre.platform.assert
380    chre.util
381)
382
383# This requires the backend to provide an implementation for:
384# - void LogBufferManager::preSecondaryBufferUse() const
385pw_add_facade(chre.platform.shared.log_buffer_manager STATIC
386  BACKEND
387    chre.platform.shared.log_buffer_manager_BACKEND
388  HEADERS
389    include/chre/platform/shared/log_buffer_manager.h
390  PUBLIC_INCLUDES
391    include
392  PUBLIC_DEPS
393    chre.chre_api
394    chre.platform.assert
395    chre.platform.condition_variable
396    chre.platform.mutex
397    chre.platform.shared.bt_snoop_log.facade
398    chre.platform.shared.idl.host_messages_generated.cpp
399    chre.platform.shared.log_buffer
400    chre.util
401  SOURCES
402    log_buffer_manager.cc
403  PRIVATE_DEPS
404    chre.core
405    chre.platform.log
406    chre.util
407    pw_log_tokenized.config
408    pw_tokenizer
409)
410
411pw_add_facade(chre.platform.shared.memory INTERFACE
412  BACKEND
413    chre.platform.shared.memory_BACKEND
414  HEADERS
415    include/chre/platform/shared/memory.h
416  PUBLIC_INCLUDES
417    include
418)
419
420# Partial backend for chre.platform.memory_manger which implements:
421# 1) void *MemoryManager::nanoappAlloc(Nanoapp *app, uint32_t bytes)
422# 2) void MemoryManager::nanoappFree(Nanoapp *app, void *ptr)
423# 3) uint32_t MemoryManager::nanoappFreeAll(Nanoapp *app)
424# 4) void MemoryManager::logStateToBuffer(DebugDumpWrapper &debugDump) const
425pw_add_library(chre.platform.shared.memory_manager STATIC
426  SOURCES
427    memory_manager.cc
428  PRIVATE_DEPS
429    chre.platform.assert
430    chre.platform.memory_manager.facade
431    chre.util.system
432)
433
434pw_add_library(chre.platform.shared.nanoapp_dso_util STATIC
435  HEADERS
436    include/chre/platform/shared/nanoapp_dso_util.h
437  PUBLIC_INCLUDES
438    include
439  PUBLIC_DEPS
440    chre.platform.shared.nanoapp_support_lib_dso
441  SOURCES
442    nanoapp/nanoapp_dso_util.cc
443  PRIVATE_DEPS
444    chre.platform.log
445)
446
447# This is itself a facade for:
448# 1) bool NanoappLoader::relocateTable(DynamicHeader *dyn, int tag)
449# 2) bool NanoappLoader::resolveGot()
450# 3) if CHREX_SYMBOL_EXTENSIONS is set, providing
451#    `const ExportedData chre::kVendorExportedData[]` via
452#    `chre/extensions/platform/symbol_list.h`.
453pw_add_facade(chre.platform.shared.nanoapp_loader STATIC
454  BACKEND
455    chre.platform.shared.nanoapp_loader_BACKEND
456  HEADERS
457    include/chre/platform/shared/nanoapp_loader.h
458  PUBLIC_INCLUDES
459    include
460  PUBLIC_DEPS
461    chre.util
462    chre.platform.shared.loader_util
463  SOURCES
464    nanoapp_loader.cc
465  PRIVATE_DEPS
466    chre.chre_api
467    chre.platform.assert
468    chre.platform.fatal_error
469    chre.platform.shared.chre_api_re
470    chre.platform.shared.chre_api_msg
471    chre.platform.shared.dlfcn
472    chre.platform.shared.memory
473    chre.platform.shared.nanoapp_tokenized_log
474    chre.platform.shared.platform_cache_management
475    chre.variant.config
476)
477
478pw_add_library(chre.platform.shared.nanoapp_load_manager STATIC
479  HEADERS
480    include/chre/platform/shared/nanoapp_load_manager.h
481  PUBLIC_INCLUDES
482    include
483  PUBLIC_DEPS
484    chre.core
485    chre.util
486  SOURCES
487    nanoapp_load_manager.cc
488)
489
490# Note that this does NOT actually implement, which are only required for
491# nanoapp builds:
492# - const struct chreNslNanoappInfo *getChreNslDsoNanoappInfo()
493# - bool chreNslDsoGetApi(uint32_t apiId, void **apiHandle)
494pw_add_library(chre.platform.shared.nanoapp_support_lib_dso INTERFACE
495  HEADERS
496    include/chre/platform/shared/nanoapp_support_lib_dso.h
497  PUBLIC_INCLUDES
498    include
499  PUBLIC_DEPS
500    chre.chre_api
501)
502
503pw_add_library(chre.platform.shared.nanoapp_tokenized_log STATIC
504  HEADERS
505    nanoapp/include/chre/platform/shared/nanoapp/tokenized_log.h
506  PUBLIC_INCLUDES
507    nanoapp/include
508  PUBLIC_DEPS
509    chre.chre_api
510  SOURCES
511    tokenized_log.cc
512  PRIVATE_DEPS
513    chre.core
514    chre.platform.log
515    chre.platform.shared.log_buffer_manager
516    pw_log_tokenized.config
517    pw_tokenizer
518)
519
520pw_add_library(chre.platform.shared.pal_audio_stub STATIC
521  SOURCES
522    pal_audio_stub.cc
523  PRIVATE_DEPS
524    chre.pal.audio.facade
525)
526
527pw_add_library(chre.platform.shared.pal_ble_stub STATIC
528  SOURCES
529    pal_ble_stub.cc
530  PRIVATE_DEPS
531    chre.pal.ble.facade
532)
533
534pw_add_library(chre.platform.shared.pal_gnss_stub STATIC
535  SOURCES
536    pal_gnss_stub.cc
537  PRIVATE_DEPS
538    chre.pal.gnss.facade
539)
540
541pw_add_library(chre.platform.shared.pal_sensor_stub STATIC
542  SOURCES
543    pal_sensor_stub.cc
544  PRIVATE_DEPS
545    chre.pal.sensor.facade
546)
547
548pw_add_facade(chre.platform.shared.pal_system_api STATIC
549  BACKEND
550    chre.platform.shared.pal_system_api_BACKEND
551  HEADERS
552    include/chre/platform/shared/pal_system_api.h
553  PUBLIC_INCLUDES
554    include
555  PUBLIC_DEPS
556    chre.pal.system
557  SOURCES
558    pal_system_api.cc
559  PRIVATE_DEPS
560   chre.platform.log
561   chre.platform.memory
562   chre.platform.system_time
563)
564
565pw_add_library(chre.platform.shared.pal_wifi_stub STATIC
566  SOURCES
567    pal_wifi_stub.cc
568  PRIVATE_DEPS
569    chre.pal.wifi.facade
570)
571
572pw_add_library(chre.platform.shared.pal_wwan_stub STATIC
573  SOURCES
574    pal_wwan_stub.cc
575  PRIVATE_DEPS
576    chre.pal.wwan.facade
577)
578
579pw_add_library(chre.platform.shared.platform_ble_pal STATIC
580  HEADERS
581    public_platform_ble_pal/chre/target_platform/platform_ble_base.h
582  PUBLIC_INCLUDES
583    public_platform_ble_pal
584  PUBLIC_DEPS
585    chre.pal.ble
586    chre.platform.shared.platform_pal
587  SOURCES
588    platform_ble.cc
589  PRIVATE_DEPS
590    chre.chre_api
591    chre.core
592    chre.platform.log
593    chre.platform.platform_ble.facade
594    chre.platform.shared.bt_snoop_log
595    chre.platform.shared.pal_system_api
596    chre.variant.config
597)
598
599pw_add_facade(chre.platform.shared.platform_cache_management INTERFACE
600  BACKEND
601    chre.platform.shared.platform_cache_management_BACKEND
602  HEADERS
603    include/chre/platform/shared/platform_cache_management.h
604  PUBLIC_INCLUDES
605    include
606)
607
608# The optional CHPP and ASH integration is not supported.
609pw_add_library(chre.platform.shared.platform_debug_dump_manager STATIC
610  HEADERS
611    public_platform_debug_dump_manager/chre/target_platform/platform_debug_dump_manager_base.h
612  PUBLIC_INCLUDES
613    public_platform_debug_dump_manager
614  PUBLIC_DEPS
615    chre.variant.config
616  SOURCES
617    platform_debug_dump_manager.cc
618  PRIVATE_DEPS
619    chre.core
620    chre.platform.host_link
621    chre.platform.log
622    chre.platform.platform_debug_dump_manager.facade
623    chre.util
624)
625
626pw_add_library(chre.platform.shared.platform_gnss_pal STATIC
627  HEADERS
628    public_platform_gnss_pal/chre/target_platform/platform_gnss_base.h
629  PUBLIC_INCLUDES
630    public_platform_gnss_pal
631  PUBLIC_DEPS
632    chre.pal.gnss
633    chre.platform.shared.platform_pal
634  SOURCES
635    platform_gnss.cc
636  PRIVATE_DEPS
637    chre.core
638    chre.platform.log
639    chre.platform.platform_gnss.facade
640    chre.platform.shared.pal_system_api
641    chre.variant.config
642)
643
644pw_add_facade(chre.platform.shared.platform_pal INTERFACE
645  BACKEND
646    chre.platform.shared.platform_pal_BACKEND
647  HEADERS
648    include/chre/platform/shared/platform_pal.h
649  PUBLIC_INCLUDES
650    include
651)
652
653pw_add_library(chre.platform.shared.platform_wifi_pal STATIC
654  HEADERS
655    public_platform_wifi_pal/chre/target_platform/platform_wifi_base.h
656  PUBLIC_INCLUDES
657    public_platform_wifi_pal
658  PUBLIC_DEPS
659    chre.pal.wifi
660    chre.platform.shared.platform_pal
661  SOURCES
662    platform_wifi.cc
663  PRIVATE_DEPS
664    chre.core
665    chre.platform.log
666    chre.platform.platform_wifi.facade
667    chre.platform.shared.pal_system_api
668    chre.util.system
669    chre.variant.config
670)
671
672pw_add_library(chre.platform.shared.platform_wwan_pal STATIC
673  HEADERS
674    public_platform_wwan_pal/chre/target_platform/platform_wwan_base.h
675  PUBLIC_INCLUDES
676    public_platform_wwan_pal
677  PUBLIC_DEPS
678    chre.pal.wwan
679    chre.platform.shared.platform_pal
680  SOURCES
681    platform_wwan.cc
682  PRIVATE_DEPS
683    chre.core
684    chre.platform.log
685    chre.platform.platform_wwan.facade
686    chre.platform.shared.pal_system_api
687    chre.variant.config
688)
689