blob: bb38baa6bdbe92717145ccb8fdf53082507438c8 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
|
Import('RTT_ROOT')
Import('rtconfig')
from building import *
src = Glob('*.c')
CPPPATH = [RTT_ROOT + '/include']
if rtconfig.CROSS_TOOL == 'keil':
# add more link flags for module and components_init.
LINKFLAGS = ''
if GetDepend('RT_USING_MODULE'):
LINKFLAGS += ' --keep *.o(RTMSymTab) '
if GetDepend('RT_USING_COMPONENTS_INIT'):
LINKFLAGS += ' --keep *.o(.rti_fn.*) '
else:
LINKFLAGS = ''
if GetDepend('RT_USING_COMPONENTS_INIT') == False:
SrcRemove(src, ['components.c'])
if GetDepend('RT_USING_MODULE') == False:
SrcRemove(src, ['module.c'])
if GetDepend('RT_USING_HEAP') == False or GetDepend('RT_USING_SMALL_MEM') == False:
SrcRemove(src, ['mem.c'])
if GetDepend('RT_USING_HEAP') == False or GetDepend('RT_USING_SLAB') == False:
SrcRemove(src, ['slab.c'])
if GetDepend('RT_USING_MEMPOOL') == False:
SrcRemove(src, ['mempool.c'])
if GetDepend('RT_USING_MEMHEAP') == False:
SrcRemove(src, ['memheap.c'])
if GetDepend('RT_USING_MEMHEAP_AS_HEAP'):
SrcRemove(src, ['mem.c'])
if GetDepend('RT_USING_DEVICE') == False:
SrcRemove(src, ['device.c'])
group = DefineGroup('Kernel', src, depend = [''], CPPPATH = CPPPATH, LINKFLAGS = LINKFLAGS)
Return('group')
|