cmake_minimum_required(VERSION 3.10)
project(stm32test)
##head files
include_directories("/home/user/stm32/gcc-arm-none-eabi-10.3-2021.10/arm-none-eabi/include")
set(SRC_FILES src/main.c)
#cross compiler
set(CMAKE_SYSTEM_NAME Linux) #设置目标系统名字
set(CMAKE_SYSTEM_PROCESSOR arm)
set(CMAKE_C_COMPILER arm-none-eabi-gcc)
set(CMAKE_CXX_COMPILER arm-none-eabi-gcc)
#link_directories("./rtthread/lib")
#link_libraries(librtthread.a)
# 设置编译选项
add_definitions("-Os -g3 -Wall -Werror --specs=nano.specs -Wl,--gc-sections -T ./ldscripts/gcc_stm32f1x_64k.ld")
# 设置可执行程序
add_executable(${PROJECT_NAME}.elf ${SRC_FILES})
# 生成二进制文件
add_custom_target(${PROJECT_NAME}.bin ALL
COMMAND arm-none-eabi-objcopy -O binary $<TARGET_FILE:${PROJECT_NAME}.elf> ${PROJECT_NAME}.bin
COMMENT "Creating ${PROJECT_NAME}.bin"
DEPENDS ${PROJECT_NAME}.elf)