SConscript 3.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. from building import *
  2. cwd = GetCurrentDir()
  3. objs = []
  4. # add the general drivers.
  5. src = Split('''
  6. board.c
  7. ''')
  8. # add gpio code
  9. if GetDepend('RT_USING_PIN'):
  10. src += ['drv_gpio.c']
  11. # add serial driver code
  12. if GetDepend('BSP_USING_UART0') or GetDepend('BSP_USING_UART1') or GetDepend('BSP_USING_UART2') or GetDepend('BSP_USING_UART3') or \
  13. GetDepend('BSP_USING_UART4') or GetDepend('BSP_USING_UART5') or \
  14. GetDepend('BSP_USING_USART0') or GetDepend('BSP_USING_USART1') or GetDepend('BSP_USING_USART2') or GetDepend('BSP_USING_USART3') or \
  15. GetDepend('BSP_USING_USART4') or GetDepend('BSP_USING_USART5') or \
  16. GetDepend('RT_USING_SERIAL'):
  17. src += ['drv_uart.c']
  18. # add spi driver code
  19. if GetDepend('BSP_USING_SPI0') or GetDepend('BSP_USING_SPI1'):
  20. src += ['drv_spi.c']
  21. # add i2c driver code
  22. if GetDepend('BSP_USING_I2C0') or GetDepend('BSP_USING_I2C1'):
  23. src += ['drv_i2c.c']
  24. # add can driver code
  25. if GetDepend('BSP_USING_CAN') or GetDepend('BSP_USING_CAN0') or GetDepend('RT_USING_CAN'):
  26. src += ['drv_can.c']
  27. # add adc driver code
  28. if GetDepend(['BSP_USING_ADC0']) or GetDepend('BSP_USING_ADC'):
  29. src += ['drv_adc.c']
  30. # add rtc driver code
  31. if GetDepend(['BSP_USING_RTC']):
  32. src += ['drv_rtc.c']
  33. # add spi flash driver code
  34. if GetDepend('BSP_USING_SPI_FLASH'):
  35. src += ['drv_spiflash.c']
  36. # add hwtimer driver code
  37. if GetDepend('BSP_USING_AD16C4T0_HWTIMER') or GetDepend('BSP_USING_AD16C4T1_HWTIMER') or \
  38. GetDepend('BSP_USING_GP32C4T0_HWTIMER') or GetDepend('BSP_USING_GP32C4T1_HWTIMER') or \
  39. GetDepend('BSP_USING_GP16C4T0_HWTIMER') or GetDepend('BSP_USING_GP16C4T1_HWTIMER') or GetDepend('BSP_USING_GP16C4T2_HWTIMER') or \
  40. GetDepend('BSP_USING_GP16C2T0_HWTIMER') or GetDepend('BSP_USING_GP16C2T1_HWTIMER') or \
  41. GetDepend('BSP_USING_GP16C4T0_HWTIMER') or GetDepend('BSP_USING_GP16C4T1_HWTIMER') or \
  42. GetDepend('BSP_USING_BS16T0_HWTIMER') or GetDepend('BSP_USING_BS16T1_HWTIMERIMER') or \
  43. GetDepend('BSP_USING_BS16T2_HWTIMER') or GetDepend('BSP_USING_BS16T3_HWTIMER'):
  44. src += ['drv_hwtimer.c']
  45. # add pwm driver code
  46. if GetDepend('BSP_USING_AD16C4T0_PWM') or GetDepend('BSP_USING_AD16C4T1_PWM') or \
  47. GetDepend('BSP_USING_GP16C4T0_PWM') or GetDepend('BSP_USING_GP16C4T1_PWM') or GetDepend('BSP_USING_GP16C4T2_PWM') or \
  48. GetDepend('BSP_USING_GP16C2T0__PWM') or GetDepend('BSP_USING_GP16C2T1_PWM') or \
  49. GetDepend('BSP_USING_GP32C4T0_PWM') or GetDepend('BSP_USING_GP32C4T1_PWM') or \
  50. GetDepend('BSP_USING_GP16C4T0_PWM') or GetDepend('BSP_USING_GP16C4T1_PWM'):
  51. src += ['drv_pwm.c']
  52. # add pm driver code
  53. if GetDepend(['BSP_USING_PM']):
  54. src += ['drv_pm.c']
  55. CPPPATH = [cwd]
  56. CPPPATH = CPPPATH + [cwd + '/ES']
  57. #__SYS_SELECT_H__ 用来规避冲突
  58. #cdkrepo\toolchain\xtgccelfnewlib\v2.6.1\r\riscv64-unknown-elf\include\sys\select.h
  59. #components/libc/compilers/common/include/sys/select.h
  60. CPPDEFINES = ['__SYS_SELECT_H__']
  61. group = DefineGroup('Drivers', src, depend = [''], CPPPATH = CPPPATH, CPPDEFINES = CPPDEFINES)
  62. objs = objs + group
  63. Return('objs')