2023-06-16 19:49:51 +00:00
|
|
|
cmake_minimum_required(VERSION 3.15)
|
|
|
|
|
2023-06-25 12:29:36 +00:00
|
|
|
set(OPTI_FLAG s)
|
2023-07-01 20:22:27 +00:00
|
|
|
set(CMAKE_BUILD_TYPE MinSizeRelease)
|
2023-06-16 19:49:51 +00:00
|
|
|
|
2023-06-21 20:49:22 +00:00
|
|
|
set(STM32_DEFINES "-DSTM32F0 -DSTM32F030x8 -DSTM32")
|
2023-06-16 19:49:51 +00:00
|
|
|
|
|
|
|
set(TOOLCHAIN_PREFIX arm-none-eabi-)
|
|
|
|
set(CMAKE_TOOLCHAIN_FILE toolchain/arm-none-eabi-gcc.cmake)
|
|
|
|
include(${CMAKE_TOOLCHAIN_FILE})
|
|
|
|
|
|
|
|
project(uv-k5-custom-build C CXX ASM)
|
|
|
|
|
|
|
|
set(CMAKE_C_STANDARD 99)
|
|
|
|
set(CMAKE_C_STANDARD_REQUIRED ON)
|
|
|
|
set(CMAKE_C_EXTENSIONS OFF)
|
|
|
|
|
|
|
|
set(CMAKE_CXX_STANDARD 17)
|
|
|
|
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
|
|
|
set(CMAKE_CXX_EXTENSIONS ON)
|
|
|
|
|
|
|
|
set(CMAKE_TRY_COMPILE_TARGET_TYPE STATIC_LIBRARY)
|
|
|
|
|
2023-07-15 21:10:22 +00:00
|
|
|
# set(COMPILER_OPTIONS -mthumb -mcpu=cortex-m0 -mfpu=auto -mfloat-abi=soft -fno-exceptions
|
|
|
|
# -msoft-float -fdata-sections -ffunction-sections -Wall $<$<COMPILE_LANGUAGE:CXX>:-Wno-register> -Wno-unknown-pragmas
|
|
|
|
# -O${OPTI_FLAG} $<$<COMPILE_LANGUAGE:CXX>:-fno-rtti>
|
|
|
|
# )
|
|
|
|
|
2023-07-01 20:22:27 +00:00
|
|
|
set(COMPILER_OPTIONS -mthumb -mcpu=cortex-m0 -mfpu=auto -mfloat-abi=soft -fno-exceptions
|
2023-06-16 19:49:51 +00:00
|
|
|
-msoft-float -fdata-sections -ffunction-sections -Wall $<$<COMPILE_LANGUAGE:CXX>:-Wno-register> -Wno-unknown-pragmas
|
2023-07-17 17:42:15 +00:00
|
|
|
-O${OPTI_FLAG} -Wl,--gc-sections $<$<COMPILE_LANGUAGE:CXX>:-fno-rtti>
|
2023-06-16 19:49:51 +00:00
|
|
|
)
|
|
|
|
|
|
|
|
add_subdirectory(libs)
|
|
|
|
add_subdirectory(src)
|
|
|
|
|
|
|
|
message(STATUS "System Processor : ${CMAKE_SYSTEM_PROCESSOR}")
|
|
|
|
message(STATUS
|
|
|
|
"BUILD CONFIGURATION: ${CMAKE_BUILD_TYPE}\n"
|
|
|
|
"---optimization level : ${OPTI_FLAG}\n"
|
|
|
|
"---libs:\n"
|
|
|
|
"BUILD FLAGS:\n"
|
|
|
|
"[STM32_DEFINES] ${STM32_DEFINES}\n"
|
|
|
|
"[compiler options] ${COMPILER_OPTIONS}\n"
|
|
|
|
# "[c++ flags] ${CMAKE_CXX_FLAGS}\n"
|
|
|
|
# "[asm flags] ${CMAKE_ASM_FLAGS}\n"
|
|
|
|
# "[ld flags] ${CMAKE_EXE_LINKER_FLAGS}\n"
|
2023-07-02 01:10:23 +00:00
|
|
|
)
|