39 lines
1.0 KiB
CMake
Executable File
39 lines
1.0 KiB
CMake
Executable File
cmake_minimum_required(VERSION 3.23)
|
|
#project(sdcard_example C ASM)
|
|
set(CMAKE_C_COMPILER_WORKS 1)
|
|
set(CMAKE_CXX_COMPILER_WORKS 1)
|
|
project(led LANGUAGES C CXX ASM)
|
|
set(EXAMPLE_NAME "CAM_LED")
|
|
set(CMAKE_EXPORT_COMPILE_COMMANDS on) # for clangd
|
|
SET(CMAKE_C_STANDARD 17)
|
|
SET(CMAKE_CXX_STANDARD 17)
|
|
|
|
### set includes and library
|
|
set(Stm32U5Lib_DIR ../../../)
|
|
find_package(Stm32U5Lib REQUIRED)
|
|
|
|
add_definitions(-DSTM32U575xx)
|
|
include_directories(./)
|
|
include_directories(../)
|
|
add_compile_options(-g
|
|
# -Ofast
|
|
)
|
|
|
|
file(GLOB_RECURSE SOURCES
|
|
./*.c
|
|
./*.cpp
|
|
../custom_prephrals.cpp
|
|
)
|
|
|
|
add_executable(${EXAMPLE_NAME}.elf ${SOURCES} ${LINKER_SCRIPT} ${LIB_SOURCES} )
|
|
|
|
set(HEX_FILE ${EXAMPLE_NAME}.hex)
|
|
set(BIN_FILE ${EXAMPLE_NAME}.bin)
|
|
|
|
add_custom_command(TARGET ${EXAMPLE_NAME}.elf POST_BUILD
|
|
COMMAND ${CMAKE_OBJCOPY} -Oihex $<TARGET_FILE:${EXAMPLE_NAME}.elf> ${HEX_FILE}
|
|
COMMAND ${CMAKE_OBJCOPY} -Obinary $<TARGET_FILE:${EXAMPLE_NAME}.elf> ${BIN_FILE}
|
|
COMMENT "Building ${HEX_FILE}
|
|
Building ${BIN_FILE}")
|
|
|