SConscript 3.7 KB

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