48 lines
1.2 KiB
CMake
48 lines
1.2 KiB
CMake
cmake_minimum_required(VERSION 3.13)
|
|
|
|
option(BUILD_FOR_PICO "Build for Raspberry Pi Pico" ON)
|
|
|
|
|
|
|
|
if(BUILD_FOR_PICO)
|
|
set(PICO_BOARD pico_w CACHE STRING "Board type")
|
|
include(pico_sdk_import.cmake)
|
|
project(p-rad C CXX ASM)
|
|
|
|
set(CMAKE_CXX_STANDARD 23)
|
|
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
|
|
|
pico_sdk_init()
|
|
|
|
add_executable(p-rad
|
|
src/main.cpp
|
|
src/core/logic.cpp
|
|
src/hal/hal_pico.cpp
|
|
)
|
|
|
|
target_compile_definitions(p-rad PRIVATE PICO_BUILD)
|
|
target_include_directories(p-rad PRIVATE src)
|
|
target_link_libraries(p-rad pico_stdlib pico_cyw43_arch_lwip_threadsafe_background hardware_rtc)
|
|
|
|
pico_enable_stdio_usb(p-rad 1)
|
|
pico_enable_stdio_uart(p-rad 0)
|
|
|
|
pico_add_extra_outputs(p-rad)
|
|
else()
|
|
project(p-rad CXX)
|
|
|
|
set(CMAKE_CXX_STANDARD 23)
|
|
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
|
|
|
add_executable(p-rad
|
|
src/main.cpp
|
|
src/core/logic.cpp
|
|
src/hal/hal_linux.cpp
|
|
)
|
|
|
|
target_include_directories(p-rad PRIVATE src)
|
|
find_package(Threads REQUIRED)
|
|
find_package(SDL3 REQUIRED CONFIG)
|
|
find_package(CURL REQUIRED)
|
|
target_link_libraries(p-rad Threads::Threads SDL3::SDL3 CURL::libcurl)
|
|
endif() |