CMakeLists.txt 948 B

1234567891011121314151617181920212223242526
  1. PROJECT(stm32-blinky)
  2. CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
  3. ENABLE_LANGUAGE(ASM)
  4. FIND_PACKAGE(CMSIS REQUIRED)
  5. FIND_PACKAGE(StdPeriphLib REQUIRED)
  6. STM32_SET_PARAMS("512K" "64K" "0x20010000")
  7. SET(CMAKE_EXE_LINKER_FLAGS "-T${CMAKE_CURRENT_BINARY_DIR}/stm32_flash.ld ${CMAKE_EXE_LINKER_FLAGS}")
  8. INCLUDE_DIRECTORIES(
  9. ${CMAKE_CURRENT_SOURCE_DIR}
  10. ${CMSIS_INCLUDE_DIR}
  11. ${StdPeriphLib_INCLUDE_DIR}
  12. )
  13. SET(PROJECT_SOURCES
  14. main.c
  15. )
  16. ADD_EXECUTABLE(${CMAKE_PROJECT_NAME}.elf ${PROJECT_SOURCES} ${CMSIS_STARTUP_SOURCE})
  17. TARGET_LINK_LIBRARIES(${CMAKE_PROJECT_NAME}.elf ${CMSIS_LIBRARIES} ${StdPeriphLib_LIBRARIES})
  18. ADD_CUSTOM_TARGET(${CMAKE_PROJECT_NAME}.hex DEPENDS ${CMAKE_PROJECT_NAME}.elf COMMAND ${CMAKE_OBJCOPY} -Oihex ${CMAKE_PROJECT_NAME}.elf ${CMAKE_PROJECT_NAME}.hex)
  19. ADD_CUSTOM_TARGET(${CMAKE_PROJECT_NAME}.bin DEPENDS ${CMAKE_PROJECT_NAME}.elf COMMAND ${CMAKE_OBJCOPY} -Obinary ${CMAKE_PROJECT_NAME}.elf ${CMAKE_PROJECT_NAME}.bin)