-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathCMakeLists.txt
76 lines (57 loc) · 1.7 KB
/
CMakeLists.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
cmake_minimum_required(VERSION 3.13)
set(CMAKE_C_STANDARD 11)
set(CMAKE_CXX_STANDARD 17)
set(PICO_BOARD yd_rp2040)
list(APPEND PICO_BOARD_HEADER_DIRS ${CMAKE_CURRENT_LIST_DIR}/src/boards)
include(pico_sdk_import.cmake)
include(scripts/functions.cmake)
include(FreeRTOS_Kernel_import.cmake)
project(pico_rvd C CXX ASM)
pico_sdk_init()
add_subdirectory(src/shell)
file(
GLOB SOURCES_SHELL_COMMANDS
src/shell_commands/*.cpp
)
add_executable(
pico_rvd
src/main.cpp
src/application/Application.cpp
src/usb/usb_descriptors.c
src/usb/usb_task.cpp
src/gdb/gdb_task.cpp
src/shell_task.cpp
${SOURCES_SHELL_COMMANDS}
src/chip_tools/PicoSWIO.cpp
src/chip_tools/RVDebug.cpp
src/chip_tools/SoftBreak.cpp
src/chip_tools/WCHFlash.cpp
src/chip_tools/GDBServer.cpp
src/chip_tools/utils.cpp
src/chip_tools/Packet2.cpp
)
pico_generate_pio_header(pico_rvd ${CMAKE_CURRENT_LIST_DIR}/src/chip_tools/singlewire.pio)
include_directories(
${CMAKE_CURRENT_SOURCE_DIR}/src/config
${CMAKE_CURRENT_SOURCE_DIR}/src/application
${CMAKE_CURRENT_SOURCE_DIR}/src/usb
${CMAKE_CURRENT_SOURCE_DIR}/src/chip_tools
)
pico_enable_stdio_usb(pico_rvd 1)
pico_enable_stdio_uart(pico_rvd 1)
target_link_libraries(
pico_rvd
shell
pico_stdlib
pico_stdio_usb
pico_bootsel_via_double_reset
hardware_flash
hardware_pio
hardware_clocks
tinyusb_device
FreeRTOS-Kernel
FreeRTOS-Kernel-Heap4
)
pico_add_extra_outputs(pico_rvd)
add_deploy_target(pico_rvd "${CMAKE_CURRENT_BINARY_DIR}/pico_rvd.uf2")
add_subdirectory(examples)