set(WIN32 TRUE) if (WIN32) set(TOOl_CHAIN_SUFFIX ".exe") else() set(TOOl_CHAIN_SUFFIX "") endif() set(AS "$ENV{IDE_DIR}\\tools\\arm-gcc-2020-q2-update\\bin\\arm-none-eabi-as${TOOl_CHAIN_SUFFIX}") set(AR "$ENV{IDE_DIR}\\tools\\arm-gcc-2020-q2-update\\bin\\arm-none-eabi-ar${TOOl_CHAIN_SUFFIX}") set(OBJCOPY "$ENV{IDE_DIR}\\tools\\arm-gcc-2020-q2-update\\bin\\arm-none-eabi-objcopy${TOOl_CHAIN_SUFFIX}") set(OBJDUMP "$ENV{IDE_DIR}\\tools\\arm-gcc-2020-q2-update\\bin\\arm-none-eabi-objdump${TOOl_CHAIN_SUFFIX}") set(OBJSIZE "$ENV{IDE_DIR}\\tools\\arm-gcc-2020-q2-update\\bin\\arm-none-eabi-size${TOOl_CHAIN_SUFFIX}") set(MT "$ENV{IDE_DIR}\\tools\\arm-gcc-2020-q2-update\\bin\\arm-none-eabi-gcc${TOOl_CHAIN_SUFFIX}") include_directories("$ENV{IDE_DIR}/tools/arm-gcc-2020-q2-update/arm-none-eabi/include") include_directories("$ENV{IDE_DIR}/tools/arm-gcc-2020-q2-update/lib/gcc/arm-none-eabi/9.3.1/include") #设置编译器标志,适当修改 # CFLAGS set(CMAKE_C_FLAGS "-g -mthumb -fno-builtin -mcpu=$ENV{MCPU} -Wall -std=gnu99 -ffunction-sections -fdata-sections -fomit-frame-pointer -mabi=aapcs -fno-unroll-loops -ffast-math -ftree-vectorize" CACHE INTERNAL "c compiler flags") set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -D $ENV{DEFINE_DEVICE} -D $ENV{DEFINE_DRIVER} -D $ENV{FPUSEL}") # CXXFLAGS set (CMAKE_CXX_FLAGS "-g -mthumb -fno-builtin -mcpu=$ENV{MCPU} ${FPU_FLAGS} -Wall -std=c++11 -ffunction-sections -fdata-sections -fomit-frame-pointer -mabi=aapcs -fno-unroll-loops -ffast-math -ftree-vectorize" CACHE INTERNAL "cxx compiler flags") # ASMFLAGS set (CMAKE_ASM_FLAGS "-g -mthumb -mcpu=$ENV{MCPU} -x assembler-with-cpp" CACHE INTERNAL "asm compiler flags") # LDFLAGS set (CMAKE_EXE_LINKER_FLAGS "-g -Wl,--gc-sections -mthumb -mcpu=$ENV{MCPU} -mabi=aapcs -specs=nosys.specs" CACHE INTERNAL "executable linker flags") set (CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -T ${ldscript}")