44 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			44 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
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')
 |