SConscript 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126
  1. Import('RTT_ROOT')
  2. Import('rtconfig')
  3. from building import *
  4. # The set of source files associated with this SConscript file.
  5. dfs = Split("""
  6. src/dfs.c
  7. src/dfs_fs.c
  8. src/dfs_file.c
  9. src/dfs_posix.c
  10. """)
  11. # DFS-ELMFAT options
  12. elmfat = Split("""
  13. filesystems/elmfat/dfs_elm.c
  14. filesystems/elmfat/ff.c
  15. """)
  16. # DFS-ROMFS options
  17. romfs = Split("""
  18. filesystems/romfs/dfs_romfs.c
  19. filesystems/romfs/romfs.c
  20. """)
  21. # DFS-DeviceFS options
  22. devfs = Split("""
  23. filesystems/devfs/devfs.c
  24. filesystems/devfs/console.c
  25. """)
  26. # DFS-YAFFS2 options
  27. yaffs2_main = Split("""
  28. filesystems/yaffs2/direct/yaffscfg.c
  29. filesystems/yaffs2/direct/yaffs_fileem.c
  30. filesystems/yaffs2/direct/yaffsfs.c
  31. filesystems/yaffs2/direct/dfs_yaffs2.c
  32. """)
  33. yaffs2_comm = Split("""
  34. filesystems/yaffs2/yaffs_ecc.c
  35. filesystems/yaffs2/yaffs_guts.c
  36. filesystems/yaffs2/yaffs_packedtags1.c
  37. filesystems/yaffs2/yaffs_tagscompat.c
  38. filesystems/yaffs2/yaffs_packedtags2.c
  39. filesystems/yaffs2/yaffs_tagsvalidity.c
  40. filesystems/yaffs2/yaffs_nand.c
  41. filesystems/yaffs2/yaffs_checkptrw.c
  42. filesystems/yaffs2/yaffs_qsort.c
  43. """)
  44. nfs = Split('''
  45. filesystems/nfs/mount_clnt.c
  46. filesystems/nfs/mount_xdr.c
  47. filesystems/nfs/nfs_clnt.c
  48. filesystems/nfs/nfs_xdr.c
  49. filesystems/nfs/dfs_nfs.c
  50. filesystems/nfs/rpc/auth_none.c
  51. filesystems/nfs/rpc/clnt_generic.c
  52. filesystems/nfs/rpc/clnt_udp.c
  53. filesystems/nfs/rpc/rpc_prot.c
  54. filesystems/nfs/rpc/pmap.c
  55. filesystems/nfs/rpc/xdr.c
  56. filesystems/nfs/rpc/xdr_mem.c
  57. ''')
  58. uffs = Split('''
  59. filesystems/uffs/src/uffs/uffs_badblock.c
  60. filesystems/uffs/src/uffs/uffs_blockinfo.c
  61. filesystems/uffs/src/uffs/uffs_buf.c
  62. filesystems/uffs/src/uffs/uffs_debug.c
  63. filesystems/uffs/src/uffs/uffs_device.c
  64. filesystems/uffs/src/uffs/uffs_ecc.c
  65. filesystems/uffs/src/uffs/uffs_fd.c
  66. filesystems/uffs/src/uffs/uffs_find.c
  67. filesystems/uffs/src/uffs/uffs_flash.c
  68. filesystems/uffs/src/uffs/uffs_fs.c
  69. filesystems/uffs/src/uffs/uffs_init.c
  70. filesystems/uffs/src/uffs/uffs_mem.c
  71. filesystems/uffs/src/uffs/uffs_mtb.c
  72. filesystems/uffs/src/uffs/uffs_pool.c
  73. filesystems/uffs/src/uffs/uffs_public.c
  74. filesystems/uffs/src/uffs/uffs_tree.c
  75. filesystems/uffs/src/uffs/uffs_utils.c
  76. filesystems/uffs/src/uffs/uffs_version.c
  77. filesystems/uffs/dfs_uffs.c
  78. ''')
  79. others = '''
  80. filesystems/uffs/dfs_nand_if.c
  81. filesystems/uffs/uffs_ext.c
  82. filesystems/uffs/flash/k9f2g08.c
  83. filesystems/uffs/flash/nand_ids.c
  84. '''
  85. src_local = dfs
  86. # The set of source files associated with this SConscript file.
  87. path = [RTT_ROOT + '/components/dfs', RTT_ROOT + '/components/dfs/include']
  88. if GetDepend('RT_USING_DFS_YAFFS2'):
  89. src_local = src_local + yaffs2_main + yaffs2_comm
  90. path = path + [RTT_ROOT + '/components/dfs/filesystems/yaffs2', RTT_ROOT + '/components/dfs/filesystems/yaffs2/direct']
  91. if GetDepend('RT_USING_DFS_ELMFAT'):
  92. if GetDepend('RT_DFS_ELM_USE_LFN'):
  93. elmfat += ['filesystems/elmfat/option/cc936.c']
  94. src_local = src_local + elmfat
  95. if GetDepend(['RT_USING_DFS_NFS', 'RT_USING_LWIP']):
  96. src_local = src_local + nfs
  97. path = path + [RTT_ROOT + '/components/dfs/filesystems/nfs']
  98. if GetDepend('RT_USING_DFS_ROMFS'):
  99. src_local = src_local + romfs
  100. path = path + [RTT_ROOT + '/components/dfs/filesystems/romfs']
  101. if GetDepend('RT_USING_DFS_DEVFS'):
  102. src_local = src_local + devfs
  103. path = path + [RTT_ROOT + '/components/dfs/filesystems/devfs']
  104. if GetDepend('RT_USING_DFS_DEVFS'):
  105. src_local = src_local + uffs
  106. path = path + [RTT_ROOT + '/components/dfs/filesystems/uffs/src/inc', RTT_ROOT + '/components/dfs/filesystems/uffs', RTT_ROOT + '/components/dfs/filesystems/uffs/flash']
  107. group = DefineGroup('Filesystem', src_local, depend = ['RT_USING_DFS'], CPPPATH = path)
  108. Return('group')