68 lines
2 KiB
CMake
68 lines
2 KiB
CMake
# Generated Cmake Pico project file
|
|
|
|
cmake_minimum_required(VERSION 3.13)
|
|
|
|
set(CMAKE_C_STANDARD 11)
|
|
set(CMAKE_CXX_STANDARD 17)
|
|
|
|
# Initialise pico_sdk from installed location
|
|
# (note this can come from environment, CMake cache etc)
|
|
set(PICO_SDK_PATH "/home/amr/workspace/rp2040/pico-sdk")
|
|
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
|
|
set(PICO_BOARD pico_w CACHE STRING "Board type")
|
|
|
|
# Pull in Raspberry Pi Pico SDK (must be before project)
|
|
include(pico_sdk_import.cmake)
|
|
|
|
if (PICO_SDK_VERSION_STRING VERSION_LESS "1.4.0")
|
|
message(FATAL_ERROR "Raspberry Pi Pico SDK version 1.4.0 (or later) required. Your version is ${PICO_SDK_VERSION_STRING}")
|
|
endif()
|
|
# Initialise the Raspberry Pi Pico SDK
|
|
pico_sdk_init()
|
|
|
|
project(ensaht C CXX ASM)
|
|
|
|
# Add executable. Default name is the project name, version 0.1
|
|
|
|
add_executable(ensaht ensaht.c mqtt.c)
|
|
|
|
# Add the standard include files to the build
|
|
target_include_directories(ensaht PRIVATE
|
|
${CMAKE_CURRENT_LIST_DIR}
|
|
${CMAKE_CURRENT_LIST_DIR}/.. # for our common lwipopts or any other standard includes, if required
|
|
)
|
|
pico_set_program_name(ensaht "ensaht")
|
|
pico_set_program_version(ensaht "0.1")
|
|
pico_enable_stdio_usb(ensaht 1)
|
|
pico_enable_stdio_uart(ensaht 0)
|
|
# Add the standard library to the build
|
|
target_link_libraries(ensaht
|
|
hardware_i2c
|
|
hardware_gpio
|
|
hardware_divider
|
|
pico_double
|
|
pico_cyw43_arch_lwip_threadsafe_background
|
|
pico_lwip_mqtt
|
|
pico_lwip_mbedtls
|
|
pico_mbedtls
|
|
pico_stdlib)
|
|
|
|
pico_add_extra_outputs(ensaht)
|
|
|
|
add_custom_target(flash
|
|
COMMAND openocd
|
|
-f interface/cmsis-dap.cfg
|
|
-f target/rp2040.cfg
|
|
-c "adapter speed 10000"
|
|
-c "program ${CMAKE_CURRENT_BINARY_DIR}/ensaht.elf verify"
|
|
-c "reset init"
|
|
-c "exit"
|
|
DEPENDS ensaht
|
|
)
|
|
|
|
add_custom_target(debug
|
|
COMMAND arm-none-eabi-gdb -ex "target extended-remote | openocd -f interface/cmsis-dap.cfg -f target/rp2040.cfg -c 'adapter speed 10000' -c 'gdb_port pipe'" ${CMAKE_CURRENT_BINARY_DIR}/ensaht.elf
|
|
DEPENDS flash
|
|
USES_TERMINAL
|
|
VERBATIM
|
|
)
|