stm32_gcc.cmake 916 B

1234567891011121314151617181920212223
  1. if(${CMAKE_VERSION} VERSION_LESS "3.16.0")
  2. message(WARNING "Current CMake version is ${CMAKE_VERSION}. stm32-cmake requires CMake 3.16 or greater")
  3. endif()
  4. get_filename_component(STM32_CMAKE_DIR ${CMAKE_CURRENT_LIST_FILE} DIRECTORY)
  5. list(APPEND CMAKE_MODULE_PATH ${STM32_CMAKE_DIR})
  6. include(stm32/common)
  7. include(stm32/devices)
  8. set(CMAKE_TRY_COMPILE_TARGET_TYPE STATIC_LIBRARY)
  9. find_program(CMAKE_C_COMPILER NAMES ${STM32_TARGET_TRIPLET}-gcc HINTS ${TOOLCHAIN_BIN_PATH})
  10. find_program(CMAKE_CXX_COMPILER NAMES ${STM32_TARGET_TRIPLET}-g++ HINTS ${TOOLCHAIN_BIN_PATH})
  11. find_program(CMAKE_ASM_COMPILER NAMES ${STM32_TARGET_TRIPLET}-gcc HINTS ${TOOLCHAIN_BIN_PATH})
  12. set(CMAKE_EXECUTABLE_SUFFIX_C .elf)
  13. set(CMAKE_EXECUTABLE_SUFFIX_CXX .elf)
  14. set(CMAKE_EXECUTABLE_SUFFIX_ASM .elf)
  15. # This should be safe to set for a bare-metal cross-compiler
  16. set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)