1from building import *
2from gcc import *
3import rtconfig
4
5cwd = GetCurrentDir()
6src = ['dev_spi_core.c', 'dev_spi.c']
7CPPPATH = [cwd, cwd + '/../include']
8LOCAL_CFLAGS = ''
9
10if GetDepend('RT_USING_SOFT_SPI'):
11    src += ['dev_spi_bit_ops.c']
12    src += ['dev_soft_spi.c']
13
14if GetDepend('RT_USING_QSPI'):
15    src += ['dev_qspi_core.c']
16
17src_device = []
18
19if GetDepend('RT_USING_SPI_WIFI'):
20    src_device += ['dev_spi_wifi_rw009.c']
21
22if GetDepend('RT_USING_ENC28J60'):
23    src_device += ['enc28j60.c']
24
25if GetDepend('RT_USING_SPI_MSD'):
26    src_device += ['dev_spi_msd.c']
27
28if GetDepend('RT_USING_SFUD'):
29    src_device += ['dev_spi_flash_sfud.c', 'sfud/src/sfud.c']
30    CPPPATH += [cwd + '/sfud/inc']
31    if GetDepend('RT_SFUD_USING_SFDP'):
32        src_device += ['sfud/src/sfud_sfdp.c']
33
34    if rtconfig.PLATFORM in GetGCCLikePLATFORM():
35        LOCAL_CFLAGS += ' -std=c99'
36    elif rtconfig.PLATFORM in ['armcc']:
37        LOCAL_CFLAGS += ' --c99'
38
39if GetDepend('RT_USING_DM'):
40    src += ['dev_spi_dm.c', 'dev_spi_bus.c']
41
42src += src_device
43
44group = DefineGroup('DeviceDrivers', src, depend = ['RT_USING_SPI'], CPPPATH = CPPPATH, LOCAL_CFLAGS = LOCAL_CFLAGS)
45
46Return('group')
47