SConscript 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  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/CoreSupport/core_cm3.c
  9. CMSIS/CM3/DeviceSupport/ST/STM32F10x/system_stm32f10x.c
  10. STM32F10x_StdPeriph_Driver/src/stm32f10x_crc.c
  11. STM32F10x_StdPeriph_Driver/src/stm32f10x_rcc.c
  12. STM32F10x_StdPeriph_Driver/src/stm32f10x_wwdg.c
  13. STM32F10x_StdPeriph_Driver/src/stm32f10x_pwr.c
  14. STM32F10x_StdPeriph_Driver/src/stm32f10x_exti.c
  15. STM32F10x_StdPeriph_Driver/src/stm32f10x_bkp.c
  16. STM32F10x_StdPeriph_Driver/src/stm32f10x_i2c.c
  17. STM32F10x_StdPeriph_Driver/src/stm32f10x_adc.c
  18. STM32F10x_StdPeriph_Driver/src/stm32f10x_dac.c
  19. STM32F10x_StdPeriph_Driver/src/stm32f10x_rtc.c
  20. STM32F10x_StdPeriph_Driver/src/stm32f10x_fsmc.c
  21. STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c
  22. STM32F10x_StdPeriph_Driver/src/stm32f10x_iwdg.c
  23. STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c
  24. STM32F10x_StdPeriph_Driver/src/stm32f10x_flash.c
  25. STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c
  26. STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c
  27. STM32F10x_StdPeriph_Driver/src/stm32f10x_usart.c
  28. STM32F10x_StdPeriph_Driver/src/stm32f10x_dbgmcu.c
  29. STM32F10x_StdPeriph_Driver/src/stm32f10x_dma.c
  30. STM32F10x_StdPeriph_Driver/src/stm32f10x_can.c
  31. STM32F10x_StdPeriph_Driver/src/stm32f10x_cec.c
  32. STM32F10x_StdPeriph_Driver/src/misc.c
  33. """)
  34. # starupt scripts for each STM32 kind
  35. startup_scripts = {}
  36. startup_scripts['STM32F10X_CL'] = 'startup_stm32f10x_cl.s'
  37. startup_scripts['STM32F10X_HD'] = 'startup_stm32f10x_hd.s'
  38. startup_scripts['STM32F10X_HD_VL'] = 'startup_stm32f10x_hd_vl.s'
  39. startup_scripts['STM32F10X_LD'] = 'startup_stm32f10x_ld.s'
  40. startup_scripts['STM32F10X_LD_VL'] = 'startup_stm32f10x_ld_vl.s'
  41. startup_scripts['STM32F10X_MD'] = 'startup_stm32f10x_md.s'
  42. startup_scripts['STM32F10X_MD_VL'] = 'startup_stm32f10x_md_vl.s'
  43. startup_scripts['STM32F10X_XL'] = 'startup_stm32f10x_xl.s'
  44. # add for startup script
  45. if rtconfig.CROSS_TOOL == 'gcc':
  46. src = src + ['CMSIS/CM3/DeviceSupport/ST/STM32F10x/startup/gcc_ride7/' + startup_scripts[rtconfig.STM32_TYPE]]
  47. elif rtconfig.CROSS_TOOL == 'keil':
  48. src = src + ['CMSIS/CM3/DeviceSupport/ST/STM32F10x/startup/arm/' + startup_scripts[rtconfig.STM32_TYPE]]
  49. elif rtconfig.CROSS_TOOL == 'iar':
  50. src = src + ['CMSIS/CM3/DeviceSupport/ST/STM32F10x/startup/iar/' + startup_scripts[rtconfig.STM32_TYPE]]
  51. path = [cwd + '/STM32F10x_StdPeriph_Driver/inc',
  52. cwd + '/CMSIS/CM3/CoreSupport',
  53. cwd + '/CMSIS/CM3/DeviceSupport/ST/STM32F10x']
  54. CPPDEFINES = ['USE_STDPERIPH_DRIVER', rtconfig.STM32_TYPE]
  55. group = DefineGroup('STM32_StdPeriph', src, depend = [''], CPPPATH = path, CPPDEFINES = CPPDEFINES)
  56. Return('group')