SConscript 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122
  1. import os
  2. from building import *
  3. objs = []
  4. cwd = GetCurrentDir()
  5. STANDALONE_DIR = cwd + '/standalone'
  6. # common source
  7. src = Glob(STANDALONE_DIR+'/common/*.c')
  8. path = [STANDALONE_DIR + '/common']
  9. # port
  10. src += Glob(STANDALONE_DIR+'/port/*.c')
  11. path += [STANDALONE_DIR + '/port'] + [STANDALONE_DIR + '/port/arch']
  12. if GetDepend(['TARGET_ARMV8_AARCH32']):
  13. src += Glob(STANDALONE_DIR+'/port/arch/armv8/aarch32/*.c') + Glob(STANDALONE_DIR+'/port/arch/armv8/aarch32/*.S')
  14. path += [STANDALONE_DIR + '/port/arch/armv8/aarch32']
  15. elif GetDepend(['TARGET_ARMV8_AARCH64']):
  16. src += Glob(STANDALONE_DIR+'/port/arch/armv8/aarch64/*.c') + Glob(STANDALONE_DIR+'/port/arch/armv8/aarch64/*.S')
  17. path += [STANDALONE_DIR + '/port/arch/armv8/aarch64']
  18. src += Glob(STANDALONE_DIR+'/port/*.c')
  19. path += [STANDALONE_DIR + '/port/*.h']
  20. # board
  21. src += Glob(STANDALONE_DIR+'/board/common/*.c') + Glob(STANDALONE_DIR+'/board/common/*.S')
  22. path += [STANDALONE_DIR + '/board/common']
  23. if GetDepend(['TARGET_F2000_4']):
  24. src += Glob(STANDALONE_DIR+'/board/ft2004/*.c')
  25. path += [STANDALONE_DIR + '/board/ft2004']
  26. if GetDepend(['TARGET_E2000Q']):
  27. src += Glob(STANDALONE_DIR+'/board/e2000/*.c')
  28. path += [STANDALONE_DIR + '/board/e2000']
  29. src += Glob(STANDALONE_DIR+'/board/e2000/q/*.c')
  30. path += [STANDALONE_DIR + '/board/e2000/q']
  31. if GetDepend(['TARGET_E2000D']):
  32. src += Glob(STANDALONE_DIR+'/board/e2000/*.c')
  33. path += [STANDALONE_DIR + '/board/e2000']
  34. src += Glob(STANDALONE_DIR+'/board/e2000/d/*.c')
  35. path += [STANDALONE_DIR + '/board/e2000/d']
  36. if GetDepend(['ARGET_E2000S']):
  37. src += Glob(STANDALONE_DIR+'/board/e2000/*.c')
  38. path += [STANDALONE_DIR + '/board/e2000']
  39. src += Glob(STANDALONE_DIR+'/board/e2000/s/*.c')
  40. path += [STANDALONE_DIR + '/board/e2000/s']
  41. if GetDepend(['TARGET_PHYTIUMPI']):
  42. src += Glob(STANDALONE_DIR+'/board/phytium-pi/*.c')
  43. path += [STANDALONE_DIR + '/board/phytium-pi']
  44. if GetDepend(['TARGET_D2000']):
  45. path += [STANDALONE_DIR + '/board/d2000']
  46. # driver
  47. ## spim
  48. if GetDepend(['BSP_USING_SPI']):
  49. src += Glob(STANDALONE_DIR+'/drivers/spi/fspim/*.c')
  50. path += [STANDALONE_DIR + '/drivers/spi/fspim']
  51. ## serial
  52. if GetDepend(['BSP_USING_UART']):
  53. src += Glob(STANDALONE_DIR+'/drivers/serial/fpl011/*.c')
  54. path += [STANDALONE_DIR + '/drivers/serial/fpl011']
  55. ## can
  56. if GetDepend(['BSP_USING_CAN']):
  57. src += Glob(STANDALONE_DIR+'/drivers/can/fcan/*.c') + Glob(STANDALONE_DIR+'/drivers/can/fcan/*.S')
  58. path += [STANDALONE_DIR + '/drivers/can/fcan/']
  59. ## qspi
  60. if GetDepend(['BSP_USING_QSPI']):
  61. src += Glob(STANDALONE_DIR+'/drivers/qspi/fqspi/*.c') + Glob(STANDALONE_DIR+'/drivers/qspi/fqspi/*.S')
  62. path += [STANDALONE_DIR + '/drivers/qspi/fqspi/']
  63. ## eth
  64. if GetDepend(['BSP_USING_ETH']):
  65. src += Glob(STANDALONE_DIR+'/drivers/eth/fxmac/*.c') + Glob(STANDALONE_DIR+'/drivers/eth/fxmac/*.S')
  66. path += [STANDALONE_DIR + '/drivers/eth/fxmac/'] + [STANDALONE_DIR + '/drivers/eth/fxmac/phy/']
  67. ## sdio
  68. if GetDepend(['BSP_USING_SDIO']):
  69. src += Glob(STANDALONE_DIR+'/drivers/mmc/fsdio/*.c') + Glob(STANDALONE_DIR+'/drivers/mmc/fsdio/*.S')
  70. path += [STANDALONE_DIR + '/drivers/mmc/fsdio/']
  71. ## gpio
  72. if GetDepend(['BSP_USING_GPIO']):
  73. src += Glob(STANDALONE_DIR+'/drivers/pin/fgpio/*.c') + Glob(STANDALONE_DIR+'/drivers/pin/fgpio/*.S')
  74. path += [STANDALONE_DIR + '/drivers/pin/fgpio/']
  75. ## iopad
  76. if GetDepend(['ENABLE_IOPAD']):
  77. src += Glob(STANDALONE_DIR+'/drivers/iopad/fiopad/*.c') + Glob(STANDALONE_DIR+'/drivers/iopad/fiopad/*.S')
  78. path += [STANDALONE_DIR + '/drivers/iopad/fiopad/']
  79. # phytium ports rt-thread drivers
  80. PORT_DRV_DIR = cwd + '/drivers'
  81. src += Glob(PORT_DRV_DIR + '/*.S')
  82. src += Glob(PORT_DRV_DIR + '/*.c')
  83. # phytium ports rt-thread examples
  84. PORT_DRV_DIR = cwd + '/examples'
  85. src += Glob(PORT_DRV_DIR + '/*.c')
  86. # sdkcomfig.h
  87. path += [cwd]
  88. # add group
  89. ASFLAGS = ''
  90. group = DefineGroup('FT_DRIVER', src, depend=[
  91. ''], CPPPATH=path, ASFLAGS = ASFLAGS)
  92. Return('group')