# Generated Cmake Pico project file

cmake_minimum_required(VERSION 3.13)

set(CMAKE_C_STANDARD 11)
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)

# Initialise pico_sdk from installed location
if(WIN32)
    set(USERHOME $ENV{USERPROFILE})
else()
    set(USERHOME $ENV{HOME})
endif()
set(sdkVersion 2.3.0)
set(toolchainVersion 15_2_Rel1)
set(picotoolVersion 2.3.0)
set(picoVscode ${USERHOME}/.pico-sdk/cmake/pico-vscode.cmake)
if (EXISTS ${picoVscode})
    include(${picoVscode})
endif()

set(PICO_BOARD pico2 CACHE STRING "Board type")

# Pull in Raspberry Pi Pico SDK
include(pico_sdk_import.cmake)

project(USB-Serial C CXX ASM)

# Initialise the Raspberry Pi Pico SDK
pico_sdk_init()

# Add executable
add_executable(USB-Serial
    USB-Serial.cpp
)

pico_set_program_name(USB-Serial "RP2350 USB-UART Adapter")
pico_set_program_version(USB-Serial "1.0")

# Disable stdio over UART/USB so it doesn't conflict with custom CDC
pico_enable_stdio_uart(USB-Serial 0)
pico_enable_stdio_usb(USB-Serial 0)

# Add libraries to the build
target_link_libraries(USB-Serial
    pico_stdlib
    tinyusb_device
    tinyusb_board
    hardware_uart
    hardware_irq
    pico_unique_id
    pico_bootsel_via_double_reset
)

# Add include directories
target_include_directories(USB-Serial PRIVATE
    ${CMAKE_CURRENT_LIST_DIR}
)

pico_add_extra_outputs(USB-Serial)
