picoco/buzzer/CMakeLists.txt

74 lines
2.2 KiB
CMake

# 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)
# Pull in Raspberry Pi Pico SDK (must be before project)
include($ENV{PICO_SDK_PATH}/external/pico_sdk_import.cmake)
project(buzzer C CXX ASM)
# force picotool executable path
add_executable(picotool IMPORTED GLOBAL)
set_target_properties(picotool PROPERTIES
IMPORTED_LOCATION "$(PICOTOOL_PATH)/picotool"
)
# Initialise the Raspberry Pi Pico SDK
pico_sdk_init()
set(FREERTOS_SRC_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/../freertos)
set(FREERTOS_CONFIG_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/../config)
include(${FREERTOS_SRC_DIRECTORY}/portable/ThirdParty/GCC/RP2350_ARM_NTZ/FreeRTOS_Kernel_import.cmake)
# Include FreeRTOS directories
include_directories(
${FREERTOS_CONFIG_DIRECTORY}
${FREERTOS_SRC_DIRECTORY}/include
${FREERTOS_SRC_DIRECTORY}/portable/ThirdParty/GCC/RP2350_ARM_NTZ/non_secure
)
set(FREERTOS_SOURCES
${FREERTOS_SRC_DIRECTORY}/event_groups.c
${FREERTOS_SRC_DIRECTORY}/list.c
${FREERTOS_SRC_DIRECTORY}/queue.c
${FREERTOS_SRC_DIRECTORY}/stream_buffer.c
${FREERTOS_SRC_DIRECTORY}/tasks.c
${FREERTOS_SRC_DIRECTORY}/timers.c
${FREERTOS_SRC_DIRECTORY}/portable/MemMang/heap_3.c
)
set(FREERTOS_PORT_FILES
${FREERTOS_SRC_DIRECTORY}/portable/ThirdParty/GCC/RP2350_ARM_NTZ/non_secure/port.c
${FREERTOS_SRC_DIRECTORY}/portable/ThirdParty/GCC/RP2350_ARM_NTZ/non_secure/portasm.c
${FREERTOS_SRC_DIRECTORY}/portable/ThirdParty/GCC/RP2350_ARM_NTZ/non_secure/mpu_wrappers_v2_asm.c
)
# Add executable. Default name is the project name, version 0.1
add_executable(buzzer main.c log.c gpio.c jobs.c utils.c ${FREERTOS_SOURCES} ${FREERTOS_PORT_FILES})
add_definitions(-DPICO)
pico_set_program_name(buzzer "buzzer")
pico_set_program_version(buzzer "0.1")
# Modify the below lines to enable/disable output over UART/USB
pico_enable_stdio_uart(buzzer 0)
pico_enable_stdio_usb(buzzer 1)
# Add the standard library to the build
target_link_libraries(buzzer
pico_stdlib hardware_pwm pico_multicore hardware_exception)
# Add the standard include files to the build
target_include_directories(buzzer PRIVATE
${CMAKE_CURRENT_LIST_DIR}
)
pico_add_extra_outputs(buzzer)