SConscript 2.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. import rtconfig
  2. Import('RTT_ROOT')
  3. from building import *
  4. # get current directory
  5. cwd = GetCurrentDir()
  6. # The set of source files associated with this SConscript file.
  7. src = Split("""
  8. CMSIS/CM3/DeviceSupport/ST/STM32F10x/system_stm32f10x.c
  9. STM32F10x_StdPeriph_Driver/src/stm32f10x_crc.c
  10. STM32F10x_StdPeriph_Driver/src/stm32f10x_rcc.c
  11. STM32F10x_StdPeriph_Driver/src/stm32f10x_wwdg.c
  12. STM32F10x_StdPeriph_Driver/src/stm32f10x_pwr.c
  13. STM32F10x_StdPeriph_Driver/src/stm32f10x_exti.c
  14. STM32F10x_StdPeriph_Driver/src/stm32f10x_bkp.c
  15. STM32F10x_StdPeriph_Driver/src/stm32f10x_i2c.c
  16. STM32F10x_StdPeriph_Driver/src/stm32f10x_adc.c
  17. STM32F10x_StdPeriph_Driver/src/stm32f10x_dac.c
  18. STM32F10x_StdPeriph_Driver/src/stm32f10x_rtc.c
  19. STM32F10x_StdPeriph_Driver/src/stm32f10x_fsmc.c
  20. STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c
  21. STM32F10x_StdPeriph_Driver/src/stm32f10x_iwdg.c
  22. STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c
  23. STM32F10x_StdPeriph_Driver/src/stm32f10x_flash.c
  24. STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c
  25. STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c
  26. STM32F10x_StdPeriph_Driver/src/stm32f10x_usart.c
  27. STM32F10x_StdPeriph_Driver/src/stm32f10x_dbgmcu.c
  28. STM32F10x_StdPeriph_Driver/src/stm32f10x_dma.c
  29. STM32F10x_StdPeriph_Driver/src/stm32f10x_can.c
  30. STM32F10x_StdPeriph_Driver/src/stm32f10x_cec.c
  31. STM32F10x_StdPeriph_Driver/src/misc.c
  32. """)
  33. # starupt scripts for each STM32 kind
  34. startup_scripts = {}
  35. startup_scripts['STM32F10X_CL'] = 'startup_stm32f10x_cl.s'
  36. startup_scripts['STM32F10X_HD'] = 'startup_stm32f10x_hd.s'
  37. startup_scripts['STM32F10X_HD_VL'] = 'startup_stm32f10x_hd_vl.s'
  38. startup_scripts['STM32F10X_LD'] = 'startup_stm32f10x_ld.s'
  39. startup_scripts['STM32F10X_LD_VL'] = 'startup_stm32f10x_ld_vl.s'
  40. startup_scripts['STM32F10X_MD'] = 'startup_stm32f10x_md.s'
  41. startup_scripts['STM32F10X_MD_VL'] = 'startup_stm32f10x_md_vl.s'
  42. startup_scripts['STM32F10X_XL'] = 'startup_stm32f10x_xl.s'
  43. # add for startup script
  44. if rtconfig.CROSS_TOOL == 'gcc':
  45. src = src + ['CMSIS/CM3/DeviceSupport/ST/STM32F10x/startup/gcc_ride7/' + startup_scripts[rtconfig.STM32_TYPE]]
  46. elif rtconfig.CROSS_TOOL == 'keil':
  47. src = src + ['CMSIS/CM3/DeviceSupport/ST/STM32F10x/startup/arm/' + startup_scripts[rtconfig.STM32_TYPE]]
  48. elif rtconfig.CROSS_TOOL == 'iar':
  49. src = src + ['CMSIS/CM3/DeviceSupport/ST/STM32F10x/startup/iar/' + startup_scripts[rtconfig.STM32_TYPE]]
  50. path = [cwd + '/STM32F10x_StdPeriph_Driver/inc',
  51. cwd + '/CMSIS/CM3/DeviceSupport/ST/STM32F10x']
  52. if GetDepend(['RT_USING_BSP_CMSIS']):
  53. path += [cwd + '/CMSIS/CM3/CoreSupport']
  54. src += [cwd + '/CMSIS/CM3/CoreSupport/core_cm3.c']
  55. elif GetDepend(['RT_USING_RTT_CMSIS']):
  56. path += [RTT_ROOT + '/components/CMSIS/Include']
  57. CPPDEFINES = ['USE_STDPERIPH_DRIVER', rtconfig.STM32_TYPE]
  58. group = DefineGroup('STM32_StdPeriph', src, depend = [''], CPPPATH = path, CPPDEFINES = CPPDEFINES)
  59. Return('group')