xref: /aosp_15_r20/external/pigweed/third_party/tinyusb/tinyusb.gni (revision 61c4878ac05f98d0ceed94b57d316916de578985)
1# Copyright 2022 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
15declare_args() {
16  # If compiling backends with tinyusb, this variable is set to the path to the
17  # tinyusb source code. When set, a pw_source_set for the tinyusb library is
18  # created at "$dir_pw_third_party/tinyusb".
19  pw_third_party_tinyusb_SOURCE = ""
20
21  # The pw_source_set which provides the port specific includes and sources for
22  # the mcu. This should set a public config with at least CFG_TUSB_MCU defined
23  # for the mcu port.
24  pw_third_party_tinyusb_PORT = ""
25
26  # The pw_source_set which provides the public config providing the include
27  # path to tusb_config.h and its dependencies. A tusb_config.h in the include
28  # path is required, but macros can be passed as defines in a public config.
29  # tinyusb source dependencies vary according to this config, so if for example
30  # the config file sets CFG_TUSB_OS to OPT_OS_FREERTOS a public dependency on
31  # the FreeRTOS pw_source_set is also required.
32  pw_third_party_tinyusb_CONFIG = ""
33}
34