analog/v2-analog-rev1/CMakeLists.txt

91 lines
2.1 KiB
CMake

cmake_minimum_required(VERSION 3.16)
if(${CMAKE_CURRENT_BINARY_DIR} MATCHES "build-lc")
set(PICO_BOARD pico)
else()
set(PICO_BOARD pico_w)
endif()
set(PICO_TARGET_LINKER_SCRIPT memmap_ota.ld)
# Pull in SDK (must be before project)
include(cmake/pico_sdk_import.cmake)
project(v2-analog)
set(CMAKE_C_STANDARD 11)
pico_sdk_init()
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DPICO_USE_MALLOC_MUTEX=1")
add_executable(v2-analog-${PICO_BOARD})
pico_generate_pio_header(v2-analog-${PICO_BOARD}
${CMAKE_CURRENT_SOURCE_DIR}/vga/vga.pio)
pico_generate_pio_header(v2-analog-${PICO_BOARD}
${CMAKE_CURRENT_SOURCE_DIR}/common/abus.pio)
target_sources(v2-analog-${PICO_BOARD} PUBLIC
common/ota.o
common/buffers.c
common/flash.c
common/abus.c
common/config.c
common/main.c
common/usb_descriptors.c
diag/businterface.c
diag/diag.c
fs/businterface.c
fs/fs.c
vga/vgamain.c
vga/businterface.c
vga/vgabuf.c
vga/render.c
vga/render_hires.c
vga/render_lores.c
vga/render_text.c
vga/render_80col.c
vga/render_dhgr.c
vga/render_dgr.c
vga/render_shr.c
vga/render_test.c
vga/terminal_rom.c
vga/character_rom.c
vga/vgaout.c
z80/z80main.c
z80/businterface.c
z80/z80buf.c
serial/businterface.c
serial/serialbuffer.c
serial/serial.c
parallel/businterface.c
parallel/parallelbuffer.c
parallel/parallel.c
)
add_subdirectory(lib/littlefs)
target_include_directories(v2-analog-${PICO_BOARD} PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
target_link_libraries(v2-analog-${PICO_BOARD} PUBLIC
pico_multicore
pico_stdlib
littlefs-lib
tinyusb_device
tinyusb_board
hardware_resets
hardware_irq
hardware_dma
hardware_pio
)
if(${PICO_BOARD} MATCHES "pico_w")
target_link_libraries(v2-analog-${PICO_BOARD} PUBLIC
pico_cyw43_arch_lwip_poll
)
endif(${PICO_BOARD} MATCHES "pico_w")
pico_enable_stdio_usb(v2-analog-${PICO_BOARD} 0)
pico_enable_stdio_uart(v2-analog-${PICO_BOARD} 0)
pico_add_extra_outputs(v2-analog-${PICO_BOARD})