84 lines
3.1 KiB
Python
84 lines
3.1 KiB
Python
from building import *
|
|
|
|
cwd = GetCurrentDir()
|
|
|
|
objs = []
|
|
|
|
# add the general drivers.
|
|
src = Split('''
|
|
board.c
|
|
''')
|
|
|
|
# add gpio code
|
|
if GetDepend('RT_USING_PIN'):
|
|
src += ['drv_gpio.c']
|
|
|
|
# add serial driver code
|
|
if GetDepend('BSP_USING_UART0') or GetDepend('BSP_USING_UART1') or GetDepend('BSP_USING_UART2') or GetDepend('BSP_USING_UART3') or \
|
|
GetDepend('BSP_USING_UART4') or GetDepend('BSP_USING_UART5') or \
|
|
GetDepend('BSP_USING_USART0') or GetDepend('BSP_USING_USART1') or GetDepend('BSP_USING_USART2') or GetDepend('BSP_USING_USART3') or \
|
|
GetDepend('BSP_USING_USART4') or GetDepend('BSP_USING_USART5') or \
|
|
GetDepend('RT_USING_SERIAL'):
|
|
src += ['drv_uart.c']
|
|
|
|
# add spi driver code
|
|
if GetDepend('BSP_USING_SPI0') or GetDepend('BSP_USING_SPI1'):
|
|
src += ['drv_spi.c']
|
|
|
|
# add i2c driver code
|
|
if GetDepend('BSP_USING_I2C0') or GetDepend('BSP_USING_I2C1'):
|
|
src += ['drv_i2c.c']
|
|
|
|
# add can driver code
|
|
if GetDepend('BSP_USING_CAN') or GetDepend('BSP_USING_CAN0') or GetDepend('RT_USING_CAN'):
|
|
src += ['drv_can.c']
|
|
|
|
|
|
# add adc driver code
|
|
if GetDepend(['BSP_USING_ADC0']) or GetDepend('BSP_USING_ADC'):
|
|
src += ['drv_adc.c']
|
|
|
|
# add rtc driver code
|
|
if GetDepend(['BSP_USING_RTC']):
|
|
src += ['drv_rtc.c']
|
|
|
|
# add spi flash driver code
|
|
if GetDepend('BSP_USING_SPI_FLASH'):
|
|
src += ['drv_spiflash.c']
|
|
|
|
# add hwtimer driver code
|
|
if GetDepend('BSP_USING_AD16C4T0_HWTIMER') or GetDepend('BSP_USING_AD16C4T1_HWTIMER') or \
|
|
GetDepend('BSP_USING_GP32C4T0_HWTIMER') or GetDepend('BSP_USING_GP32C4T1_HWTIMER') or \
|
|
GetDepend('BSP_USING_GP16C4T0_HWTIMER') or GetDepend('BSP_USING_GP16C4T1_HWTIMER') or GetDepend('BSP_USING_GP16C4T2_HWTIMER') or \
|
|
GetDepend('BSP_USING_GP16C2T0_HWTIMER') or GetDepend('BSP_USING_GP16C2T1_HWTIMER') or \
|
|
GetDepend('BSP_USING_GP16C4T0_HWTIMER') or GetDepend('BSP_USING_GP16C4T1_HWTIMER') or \
|
|
GetDepend('BSP_USING_BS16T0_HWTIMER') or GetDepend('BSP_USING_BS16T1_HWTIMERIMER') or \
|
|
GetDepend('BSP_USING_BS16T2_HWTIMER') or GetDepend('BSP_USING_BS16T3_HWTIMER'):
|
|
src += ['drv_hwtimer.c']
|
|
|
|
# add pwm driver code
|
|
if GetDepend('BSP_USING_AD16C4T0_PWM') or GetDepend('BSP_USING_AD16C4T1_PWM') or \
|
|
GetDepend('BSP_USING_GP16C4T0_PWM') or GetDepend('BSP_USING_GP16C4T1_PWM') or GetDepend('BSP_USING_GP16C4T2_PWM') or \
|
|
GetDepend('BSP_USING_GP16C2T0__PWM') or GetDepend('BSP_USING_GP16C2T1_PWM') or \
|
|
GetDepend('BSP_USING_GP32C4T0_PWM') or GetDepend('BSP_USING_GP32C4T1_PWM') or \
|
|
GetDepend('BSP_USING_GP16C4T0_PWM') or GetDepend('BSP_USING_GP16C4T1_PWM'):
|
|
src += ['drv_pwm.c']
|
|
|
|
# add pm driver code
|
|
if GetDepend(['BSP_USING_PM']):
|
|
src += ['drv_pm.c']
|
|
CPPPATH = [cwd]
|
|
CPPPATH = CPPPATH + [cwd + '/ES']
|
|
#__SYS_SELECT_H__ 用来规避冲突
|
|
#cdkrepo\toolchain\xtgccelfnewlib\v2.6.1\r\riscv64-unknown-elf\include\sys\select.h
|
|
#components/libc/compilers/common/include/sys/select.h
|
|
CPPDEFINES = ['__SYS_SELECT_H__','__RT_ATOMIC_H__']
|
|
CCFLAGS='-fno-exceptions'
|
|
#LINKFLAGS='-lstdc++'
|
|
LIBS=['stdc++']
|
|
group = DefineGroup('Drivers', src, depend = [''], CPPPATH = CPPPATH, CPPDEFINES = CPPDEFINES,CCFLAGS=CCFLAGS,LIBS=LIBS)
|
|
objs = objs + group
|
|
|
|
Return('objs')
|
|
|