31 lines
2.1 KiB
CMake
31 lines
2.1 KiB
CMake
set(WIN32 TRUE)
|
|
if (WIN32)
|
|
set(TOOl_CHAIN_SUFFIX ".exe")
|
|
else()
|
|
set(TOOl_CHAIN_SUFFIX "")
|
|
endif()
|
|
# set(AS "$ENV{TOOl_CHAIN_DIR}\\bin\\arm-none-eabi-as${TOOl_CHAIN_SUFFIX}")
|
|
# set(AR "$ENV{TOOl_CHAIN_DIR}\\bin\\arm-none-eabi-ar${TOOl_CHAIN_SUFFIX}")
|
|
# set(OBJCOPY "$ENV{TOOl_CHAIN_DIR}\\bin\\arm-none-eabi-objcopy${TOOl_CHAIN_SUFFIX}")
|
|
# set(OBJDUMP "$ENV{TOOl_CHAIN_DIR}\\bin\\arm-none-eabi-objdump${TOOl_CHAIN_SUFFIX}")
|
|
# set(OBJSIZE "$ENV{TOOl_CHAIN_DIR}\\bin\\arm-none-eabi-size${TOOl_CHAIN_SUFFIX}")
|
|
# 设置交叉编译器所在路径
|
|
set(AS "C:/software/explab/tools/llvm/bin/llvm-as${TOOl_CHAIN_SUFFIX}")
|
|
set(AR "C:/software/explab/tools/llvm/bin/llvm-ar${TOOl_CHAIN_SUFFIX}")
|
|
set(OBJCOPY "C:/software/explab/tools/llvm/bin/llvm-objcopy${TOOl_CHAIN_SUFFIX}")
|
|
set(OBJDUMP "C:/software/explab/tools/llvm/bin/llvm-objdump${TOOl_CHAIN_SUFFIX}")
|
|
set(OBJSIZE "C:/software/explab/tools/llvm/bin/llvm-size${TOOl_CHAIN_SUFFIX}")
|
|
#设置编译器标志,适当修改
|
|
# CFLAGS
|
|
set(CMAKE_C_FLAGS "--target=armv7em-none-eabi -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 "--target=armv7em-none-eabi -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 "--target=armv7em-none-eabi -g -mthumb -mcpu=$ENV{MCPU} -x assembler-with-cpp" CACHE INTERNAL "asm compiler flags")
|
|
# LDFLAGS
|
|
set (CMAKE_EXE_LINKER_FLAGS "--target=armv7em-none-eabi -g -Wl,--gc-sections -mthumb -mcpu=$ENV{MCPU} -mabi=aapcs " CACHE INTERNAL "executable linker flags")
|
|
set (CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -T ${ldscript}")
|
|
set(CMAKE_SYSROOT "C:/software/explab/tools/llvm/lib/clang-runtimes/armv7em_hard_fpv5_d16")
|
|
include_directories(${CMAKE_SYSROOT}/include)
|
|
link_directories(${CMAKE_SYSROOT}/lib) |