1if (TARGET tinyusb_device_unmarked)
2    pico_add_library(pico_stdio_usb)
3
4    target_include_directories(pico_stdio_usb_headers SYSTEM INTERFACE ${CMAKE_CURRENT_LIST_DIR}/include)
5
6    target_sources(pico_stdio_usb INTERFACE
7        ${CMAKE_CURRENT_LIST_DIR}/reset_interface.c
8        ${CMAKE_CURRENT_LIST_DIR}/stdio_usb.c
9        ${CMAKE_CURRENT_LIST_DIR}/stdio_usb_descriptors.c
10    )
11
12    pico_mirrored_target_link_libraries(pico_stdio_usb INTERFACE
13        pico_stdio
14        pico_time
15        pico_unique_id
16        pico_usb_reset_interface
17    )
18    target_link_libraries(pico_stdio_usb INTERFACE
19        tinyusb_device_unmarked
20    )
21    # PICO_CMAKE_CONFIG: PICO_STDIO_USB_CONNECT_WAIT_TIMEOUT_MS, Maximum number of milliseconds to wait during initialization for a CDC connection from the host (negative means indefinite) during initialization, type=int, default=0, group=pico_stdio_usb
22    if (PICO_STDIO_USB_CONNECT_WAIT_TIMEOUT_MS)
23        target_compile_definitions(pico_stdio_usb INTERFACE
24            PICO_STDIO_USB_CONNECT_WAIT_TIMEOUT_MS=${PICO_STDIO_USB_CONNECT_WAIT_TIMEOUT_MS}
25        )
26    endif()
27endif()
28