2023-08-31 22:52:39 +08:00
|
|
|
set(CMAKE_TOOLCHAIN_PATH $ENV{TOOLCHAIN} CACHE STRING " " FORCE)
|
2022-12-09 23:22:35 +08:00
|
|
|
set(CROSS_COMPILE ${CMAKE_TOOLCHAIN_PATH}arm-none-eabi- CACHE PATH "" FORCE)
|
2023-08-31 22:52:39 +08:00
|
|
|
set(GCC_LIB_PATH $ENV{TOOLCHAIN_LIB})
|
2022-12-09 23:22:35 +08:00
|
|
|
|
|
|
|
|
set(CMAKE_INSTALL_PATH "${CMAKE_BINARY_DIR}deploy" CACHE PATH "" FORCE)
|
|
|
|
|
set(CMAKE_C_COMPILER "${CROSS_COMPILE}gcc" CACHE PATH "" FORCE)
|
|
|
|
|
set(CMAKE_ASM_COMPILER "${CROSS_COMPILE}gcc" CACHE PATH "" FORCE)
|
|
|
|
|
set(CMAKE_CC_COMPILER "${CROSS_COMPILE}g++" CACHE PATH "" FORCE)
|
|
|
|
|
set(CMAKE_CXX_COMPILER "${CROSS_COMPILE}g++" CACHE PATH "" FORCE)
|
|
|
|
|
set(CMAKE_CPP_COMPILER "${CROSS_COMPILE}cpp" CACHE PATH "" FORCE)
|
|
|
|
|
set(CMAKE_LINKER "${CROSS_COMPILE}ld" CACHE PATH "" FORCE)
|
|
|
|
|
set(CMAKE_STRIP "${CROSS_COMPILE}strip" CACHE PATH "" FORCE)
|
|
|
|
|
set(CMAKE_OBJCOPY "${CROSS_COMPILE}objcopy" CACHE PATH "" FORCE)
|
|
|
|
|
set(CMAKE_OBJDUMP "${CROSS_COMPILE}objdump" CACHE PATH "" FORCE)
|
2023-08-20 20:52:23 +08:00
|
|
|
set(CMAKE_READELF "${CROSS_COMPILE}readelf" CACHE PATH "" FORCE)
|
2023-08-23 00:42:36 +08:00
|
|
|
set(CMAKE_SIZE "${CROSS_COMPILE}size" CACHE PATH "" FORCE)
|
2022-12-09 23:22:35 +08:00
|
|
|
set(CMAKE_NM "${CROSS_COMPILE}nm" CACHE PATH "" FORCE)
|
|
|
|
|
set(CMAKE_AR "${CROSS_COMPILE}ar" CACHE PATH "" FORCE)
|
|
|
|
|
set(CMAKE_SIZE "${CROSS_COMPILE}size" CACHE PATH "" FORCE)
|
2024-01-18 00:48:16 +08:00
|
|
|
set(PROJECT_BINARY_DIR ${CMAKE_SOURCE_DIR}/build)
|
2022-12-09 23:22:35 +08:00
|
|
|
|
2024-01-18 00:48:16 +08:00
|
|
|
set(BOARD $ENV{BOARD})
|
2024-03-01 14:39:52 +08:00
|
|
|
include(mkrtos_cmake/top.cmake)
|
2024-01-18 00:48:16 +08:00
|
|
|
set(ARCH ${CONFIG_ARCH} CACHE STRING "" FORCE)
|
2024-01-27 15:40:05 +08:00
|
|
|
message(=======${ARCH})
|
|
|
|
|
message(=======${CONFIG_CPU_TYPE})
|
2024-01-18 00:48:16 +08:00
|
|
|
|
2024-01-27 15:40:05 +08:00
|
|
|
# -mfloat-abi=soft -u _printf_float -lc -lrdimon
|
2024-02-24 14:30:37 +08:00
|
|
|
#-mfpu=fpv5-sp-d16
|
2024-02-29 11:16:23 +08:00
|
|
|
set(CMAKE_C_FLAGS "-mcpu=${CONFIG_ARCH} -O0 -g3 -mfloat-abi=${CONFIG_FLOAT_TYPE} -mthumb -mno-thumb-interwork -D=MKRTOS \
|
2024-02-24 14:30:37 +08:00
|
|
|
-std=gnu11 -ffunction-sections -fdata-sections -fno-builtin -u _printf_float \
|
2023-09-11 00:49:51 +08:00
|
|
|
-nostartfiles -nodefaultlibs -nostdlib -nostdinc -Xlinker \
|
2023-12-23 22:28:42 +08:00
|
|
|
-fno-stack-protector -Wl,--gc-sections \
|
|
|
|
|
-include ${CMAKE_SOURCE_DIR}/build/autoconf.h \
|
2023-08-20 20:52:23 +08:00
|
|
|
" CACHE STRING "" FORCE)
|
2023-09-26 23:40:54 +08:00
|
|
|
|
2024-02-24 14:30:37 +08:00
|
|
|
set(CMAKE_CXX_FLAGS "-mcpu=${CONFIG_ARCH} -O2 -g3 -mfloat-abi=${CONFIG_FLOAT_TYPE} -mthumb -mno-thumb-interwork -D=MKRTOS -std=c++11 \
|
2023-08-29 16:16:25 +08:00
|
|
|
-fmessage-length=0 -Xlinker --print-map -Wall -W -fno-stack-protector -g \
|
2024-01-27 15:40:05 +08:00
|
|
|
-u _printf_float \
|
2023-11-12 00:25:47 +08:00
|
|
|
-ffunction-sections -fdata-sections -fno-builtin -nostartfiles -nodefaultlibs -nostdlib -nostdinc -Xlinker \
|
2023-12-05 00:01:26 +08:00
|
|
|
-include ${CMAKE_SOURCE_DIR}/build/autoconf.h \
|
2023-08-20 20:52:23 +08:00
|
|
|
" CACHE STRING "" FORCE)
|
2022-12-09 23:22:35 +08:00
|
|
|
|
2024-02-24 14:30:37 +08:00
|
|
|
set(CMAKE_ASM_FLAGS "-mcpu=${CONFIG_ARCH} -O2 -g3 -mfloat-abi=${CONFIG_FLOAT_TYPE} -mthumb -mno-thumb-interwork -D=MKRTOS \
|
2023-08-22 00:26:34 +08:00
|
|
|
-u _printf_float -std=gnu11 -ffunction-sections -fdata-sections -fno-builtin \
|
2023-11-12 00:25:47 +08:00
|
|
|
-nostartfiles -nodefaultlibs -nostdlib -nostdinc -Xlinker -fno-stack-protector \
|
2023-12-05 00:01:26 +08:00
|
|
|
-include ${CMAKE_SOURCE_DIR}/build/autoconf.h \
|
2023-08-20 20:52:23 +08:00
|
|
|
" CACHE STRING "" FORCE)
|
2022-12-09 23:22:35 +08:00
|
|
|
|
2024-01-18 00:48:16 +08:00
|
|
|
|
2023-09-26 23:40:54 +08:00
|
|
|
|
2022-12-09 23:22:35 +08:00
|
|
|
set(CMAKE_C_LINK_EXECUTABLE "${CMAKE_LINKER} <OBJECTS> <CMAKE_C_LINK_FLAGS> <LINK_FLAGS> --start-group <LINK_LIBRARIES> --end-group -o <TARGET>" CACHE INTERNAL " " FORCE)
|
|
|
|
|
set(CMAKE_CXX_LINK_EXECUTABLE "${CMAKE_LINKER} <OBJECTS> <CMAKE_C_LINK_FLAGS> <LINK_FLAGS> --start-group <LINK_LIBRARIES> --end-group -o <TARGET>" CACHE INTERNAL " " FORCE)
|
|
|
|
|
|
2023-12-23 22:28:42 +08:00
|
|
|
|
2023-08-20 20:52:23 +08:00
|
|
|
|