SConscript 1.2 KB

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