xref: /aosp_15_r20/external/pigweed/targets/common/freertos.gni (revision 61c4878ac05f98d0ceed94b57d316916de578985)
1# Copyright 2024 The Pigweed Authors
2#
3# Licensed under the Apache License, Version 2.0 (the "License"); you may not
4# use this file except in compliance with the License. You may obtain a copy of
5# the License at
6#
7#     https://www.apache.org/licenses/LICENSE-2.0
8#
9# Unless required by applicable law or agreed to in writing, software
10# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
11# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
12# License for the specific language governing permissions and limitations under
13# the License.
14
15import("//build_overrides/pigweed.gni")
16
17import("$dir_pw_chrono/backend.gni")
18import("$dir_pw_sync/backend.gni")
19import("$dir_pw_thread/backend.gni")
20
21pw_chrono_freertos_BACKENDS = {
22  pw_chrono_SYSTEM_CLOCK_BACKEND = "$dir_pw_chrono_freertos:system_clock"
23  pw_chrono_SYSTEM_TIMER_BACKEND = "$dir_pw_chrono_freertos:system_timer"
24}
25
26pw_sync_freertos_BACKENDS = {
27  pw_sync_BINARY_SEMAPHORE_BACKEND = "$dir_pw_sync_freertos:binary_semaphore"
28  pw_sync_THREAD_NOTIFICATION_BACKEND =
29      "$dir_pw_sync_freertos:thread_notification"
30  pw_sync_TIMED_THREAD_NOTIFICATION_BACKEND =
31      "$dir_pw_sync_freertos:timed_thread_notification"
32  pw_sync_MUTEX_BACKEND = "$dir_pw_sync_freertos:mutex"
33  pw_sync_TIMED_MUTEX_BACKEND = "$dir_pw_sync_freertos:timed_mutex"
34  pw_sync_INTERRUPT_SPIN_LOCK_BACKEND =
35      "$dir_pw_sync_freertos:interrupt_spin_lock"
36}
37
38pw_thread_freertos_BACKENDS = {
39  pw_thread_ID_BACKEND = "$dir_pw_thread_freertos:id"
40  pw_thread_SLEEP_BACKEND = "$dir_pw_thread_freertos:sleep"
41  pw_thread_THREAD_BACKEND = "$dir_pw_thread_freertos:thread"
42  pw_thread_THREAD_ITERATION_BACKEND =
43      "$dir_pw_thread_freertos:thread_iteration"
44  pw_thread_YIELD_BACKEND = "$dir_pw_thread_freertos:yield"
45}
46
47pw_targets_FREERTOS_BACKEND_GROUP = {
48  forward_variables_from(pw_chrono_freertos_BACKENDS, "*")
49  forward_variables_from(pw_sync_freertos_BACKENDS, "*")
50  forward_variables_from(pw_thread_freertos_BACKENDS, "*")
51}
52