CMakeLists.txt 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. PROJECT(stm32cmsis)
  2. CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
  3. ENABLE_LANGUAGE(ASM)
  4. IF(NOT STM32_StdPeriphLib_DIR)
  5. SET(STM32_StdPeriphLib_DIR "/opt/STM32F10x_StdPeriph_Lib_V3.5.0")
  6. MESSAGE(STATUS "No STM32_StdPeriphLib_DIR specified, using default: " ${STM32_StdPeriphLib_DIR})
  7. ENDIF()
  8. INCLUDE_DIRECTORIES(
  9. ${STM32_StdPeriphLib_DIR}/Libraries/CMSIS/CM3/DeviceSupport/ST/STM32F10x/
  10. ${STM32_StdPeriphLib_DIR}/Libraries/CMSIS/CM3/CoreSupport/
  11. ${CMAKE_CURRENT_SOURCE_DIR}
  12. )
  13. SET(CMSIS_SOURCES
  14. ${STM32_StdPeriphLib_DIR}/Libraries/CMSIS/CM3/DeviceSupport/ST/STM32F10x/system_stm32f10x.c
  15. ${STM32_StdPeriphLib_DIR}/Libraries/CMSIS/CM3/CoreSupport/core_cm3.c
  16. )
  17. SET(STM32_STARTUP_CL ${STM32_StdPeriphLib_DIR}/Libraries/CMSIS/CM3/DeviceSupport/ST/STM32F10x/startup/gcc_ride7/startup_stm32f10x_cl.s)
  18. SET(STM32_STARTUP_HD ${STM32_StdPeriphLib_DIR}/Libraries/CMSIS/CM3/DeviceSupport/ST/STM32F10x/startup/gcc_ride7/startup_stm32f10x_hd.s)
  19. SET(STM32_STARTUP_HD_VL ${STM32_StdPeriphLib_DIR}/Libraries/CMSIS/CM3/DeviceSupport/ST/STM32F10x/startup/gcc_ride7/startup_stm32f10x_hd_vl.s)
  20. SET(STM32_STARTUP_LD ${STM32_StdPeriphLib_DIR}/Libraries/CMSIS/CM3/DeviceSupport/ST/STM32F10x/startup/gcc_ride7/startup_stm32f10x_ld.s)
  21. SET(STM32_STARTUP_LD_VL ${STM32_StdPeriphLib_DIR}/Libraries/CMSIS/CM3/DeviceSupport/ST/STM32F10x/startup/gcc_ride7/startup_stm32f10x_ld_vl.s)
  22. SET(STM32_STARTUP_MD ${STM32_StdPeriphLib_DIR}/Libraries/CMSIS/CM3/DeviceSupport/ST/STM32F10x/startup/gcc_ride7/startup_stm32f10x_md.s)
  23. SET(STM32_STARTUP_MD_VL ${STM32_StdPeriphLib_DIR}/Libraries/CMSIS/CM3/DeviceSupport/ST/STM32F10x/startup/gcc_ride7/startup_stm32f10x_md_vl.s)
  24. SET(STM32_STARTUP_XL ${STM32_StdPeriphLib_DIR}/Libraries/CMSIS/CM3/DeviceSupport/ST/STM32F10x/startup/gcc_ride7/startup_stm32f10x_xl.s)
  25. ADD_LIBRARY(cmsis_cl ${CMSIS_SOURCES})
  26. SET_TARGET_PROPERTIES(cmsis_cl PROPERTIES COMPILE_FLAGS "-DSTM32F10X_CL")
  27. ADD_LIBRARY(cmsis_hd ${CMSIS_SOURCES})
  28. SET_TARGET_PROPERTIES(cmsis_hd PROPERTIES COMPILE_DEFINITIONS "STM32F10X_HD")
  29. ADD_LIBRARY(cmsis_hd_vl ${CMSIS_SOURCES})
  30. SET_TARGET_PROPERTIES(cmsis_hd_vl PROPERTIES COMPILE_DEFINITIONS "STM32F10X_HD_VL")
  31. ADD_LIBRARY(cmsis_ld ${CMSIS_SOURCES})
  32. SET_TARGET_PROPERTIES(cmsis_ld PROPERTIES COMPILE_DEFINITIONS "STM32F10X_LD")
  33. ADD_LIBRARY(cmsis_ld_vl ${CMSIS_SOURCES})
  34. SET_TARGET_PROPERTIES(cmsis_ld_vl PROPERTIES COMPILE_DEFINITIONS "STM32F10X_LD_VL")
  35. ADD_LIBRARY(cmsis_md ${CMSIS_SOURCES})
  36. SET_TARGET_PROPERTIES(cmsis_md PROPERTIES COMPILE_DEFINITIONS "STM32F10X_MD")
  37. ADD_LIBRARY(cmsis_md_vl ${CMSIS_SOURCES})
  38. SET_TARGET_PROPERTIES(cmsis_md_vl PROPERTIES COMPILE_DEFINITIONS "STM32F10X_MD_VL")
  39. ADD_LIBRARY(cmsis_xl ${CMSIS_SOURCES})
  40. SET_TARGET_PROPERTIES(cmsis_xl PROPERTIES COMPILE_DEFINITIONS "STM32F10X_XL")
  41. INSTALL(TARGETS cmsis_cl cmsis_hd cmsis_hd_vl cmsis_ld cmsis_ld_vl cmsis_md cmsis_md_vl cmsis_xl
  42. RUNTIME DESTINATION bin
  43. LIBRARY DESTINATION lib
  44. ARCHIVE DESTINATION lib
  45. )
  46. INSTALL(FILES
  47. ${STM32_StdPeriphLib_DIR}/Libraries/CMSIS/CM3/DeviceSupport/ST/STM32F10x/system_stm32f10x.h
  48. ${STM32_StdPeriphLib_DIR}/Libraries/CMSIS/CM3/CoreSupport/core_cm3.h
  49. ${STM32_StdPeriphLib_DIR}/Libraries/CMSIS/CM3/DeviceSupport/ST/STM32F10x/stm32f10x.h
  50. DESTINATION
  51. include
  52. )
  53. INSTALL(FILES
  54. ${STM32_STARTUP_CL}
  55. ${STM32_STARTUP_HD}
  56. ${STM32_STARTUP_HD_VL}
  57. ${STM32_STARTUP_MD}
  58. ${STM32_STARTUP_MD_VL}
  59. ${STM32_STARTUP_LD}
  60. ${STM32_STARTUP_LD_VL}
  61. ${STM32_STARTUP_XL}
  62. ${CMAKE_CURRENT_SOURCE_DIR}/stm32_flash.ld.in
  63. DESTINATION
  64. share/cmsis/
  65. )