SConscript 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112
  1. from building import *
  2. cwd = GetCurrentDir()
  3. path = [cwd + '/common']
  4. path += [cwd + '/core']
  5. src = []
  6. CPPDEFINES = []
  7. # USB DEVICE
  8. if GetDepend(['PKG_CHERRYUSB_DEVICE']):
  9. src += Glob('core/usbd_core.c')
  10. if GetDepend(['PKG_CHERRYUSB_DEVICE_HS']):
  11. CPPDEFINES+=['CONFIG_USB_HS']
  12. if GetDepend(['PKG_CHERRYUSB_DEVICE_CDC']):
  13. path += [cwd + '/class/cdc']
  14. src += Glob('class/cdc/usbd_cdc.c')
  15. if GetDepend(['PKG_CHERRYUSB_DEVICE_HID']):
  16. path += [cwd + '/class/hid']
  17. src += Glob('class/hid/usbd_hid.c')
  18. if GetDepend(['PKG_CHERRYUSB_DEVICE_MSC']):
  19. path += [cwd + '/class/msc']
  20. src += Glob('class/msc/usbd_msc.c')
  21. if GetDepend(['PKG_CHERRYUSB_DEVICE_AUDIO']):
  22. path += [cwd + '/class/audio']
  23. src += Glob('class/audio/usbd_audio.c')
  24. if GetDepend(['PKG_CHERRYUSB_DEVICE_VIDEO']):
  25. path += [cwd + '/class/video']
  26. src += Glob('class/video/usbd_video.c')
  27. if GetDepend(['PKG_CHERRYUSB_DEVICE_RNDIS']):
  28. path += [cwd + '/class/wireless']
  29. src += Glob('class/wireless/usbd_rndis.c')
  30. if GetDepend(['PKG_CHERRYUSB_USING_DFU']):
  31. path += [cwd + '/class/dfu']
  32. src += Glob('class/dfu/usbd_dfu.c')
  33. if GetDepend(['PKG_CHERRYUSB_USING_HUB']):
  34. path += [cwd + '/class/hub']
  35. src += Glob('class/hub/usbd_hub.c')
  36. if GetDepend(['PKG_CHERRYUSB_DEVICE_CDC_TEMPLATE']):
  37. src += Glob('demo/cdc_acm_template.c')
  38. if GetDepend(['PKG_CHERRYUSB_DEVICE_HID_MOUSE_TEMPLATE']):
  39. src += Glob('demo/hid_mouse_template.c')
  40. if GetDepend(['PKG_CHERRYUSB_DEVICE_HID_KEYBOARD_TEMPLATE']):
  41. src += Glob('demo/hid_keyboard_template.c')
  42. if GetDepend(['PKG_CHERRYUSB_DEVICE_MSC_TEMPLATE']):
  43. src += Glob('demo/msc_ram_template.c')
  44. if GetDepend(['PKG_CHERRYUSB_DEVICE_AUDIO_V1_TEMPLATE']):
  45. src += Glob('demo/audio_v1_mic_speaker_multichan_template.c')
  46. if GetDepend(['PKG_CHERRYUSB_DEVICE_AUDIO_V2_TEMPLATE']):
  47. src += Glob('demo/audio_v2_mic_speaker_multichan_template.c')
  48. if GetDepend(['PKG_CHERRYUSB_DEVICE_VIDEO_TEMPLATE']):
  49. src += Glob('demo/video_static_mjpeg_template.c')
  50. if GetDepend(['PKG_CHERRYUSB_DEVICE_FSDEV']):
  51. src += Glob('port/fsdev/usb_dc_fsdev.c')
  52. if GetDepend(['PKG_CHERRYUSB_DEVICE_DWC2']):
  53. src += Glob('port/dwc2/usb_dc_dwc2.c')
  54. if GetDepend(['PKG_CHERRYUSB_DEVICE_DWC2_PORT_FS']):
  55. CPPDEFINES += ['CONFIG_USB_DWC2_PORT=FS_PORT']
  56. elif GetDepend(['PKG_CHERRYUSB_DEVICE_DWC2_PORT_HS']):
  57. CPPDEFINES += ['CONFIG_USB_DWC2_PORT=HS_PORT']
  58. if GetDepend(['PKG_CHERRYUSB_DEVICE_MUSB']):
  59. src += Glob('port/musb/usb_dc_musb.c')
  60. if GetDepend(['PKG_CHERRYUSB_DEVICE_MUSB_SUNXI']):
  61. CPPDEFINES += ['CONFIG_USB_MUSB_SUNXI']
  62. if GetDepend(['PKG_CHERRYUSB_DEVICE_CH32_CH32V307']):
  63. if GetDepend(['PKG_CHERRYUSB_DEVICE_HS']):
  64. src += Glob('port/ch32/usb_dc_usbhs.c')
  65. else:
  66. src += Glob('port/ch32/usb_dc_usbfs.c')
  67. # USB HOST
  68. if GetDepend(['PKG_CHERRYUSB_HOST']):
  69. path += [cwd + '/osal']
  70. path += [cwd + '/class/hub']
  71. src += Glob('core/usbh_core.c')
  72. src += Glob('class/hub/usbh_hub.c')
  73. src += Glob('osal/usb_osal_rtthread.c')
  74. if GetDepend(['PKG_CHERRYUSB_HOST_CDC']):
  75. path += [cwd + '/class/cdc']
  76. src += Glob('class/cdc/usbh_cdc_acm.c')
  77. if GetDepend(['PKG_CHERRYUSB_HOST_HID']):
  78. path += [cwd + '/class/hid']
  79. src += Glob('class/hid/usbh_hid.c')
  80. if GetDepend(['PKG_CHERRYUSB_HOST_MSC']):
  81. path += [cwd + '/class/msc']
  82. src += Glob('class/msc/usbh_msc.c')
  83. if GetDepend(['PKG_CHERRYUSB_HOST_RNDIS']):
  84. src += Glob('class/wireless/usbh_rndis.c')
  85. if GetDepend(['PKG_CHERRYUSB_HOST_DWC2']):
  86. src += Glob('port/dwc2/usb_hc_dwc2.c')
  87. if GetDepend(['PKG_CHERRYUSB_HOST_MUSB']):
  88. src += Glob('port/musb/usb_hc_musb.c')
  89. if GetDepend(['PKG_CHERRYUSB_HOST_MUSB_SUNXI']):
  90. CPPDEFINES += ['CONFIG_USB_MUSB_SUNXI']
  91. if GetDepend(['PKG_CHERRYUSB_HOST_TEMPLATE']):
  92. src += Glob('demo/usb_host.c')
  93. group = DefineGroup('CherryUSB', src, depend = ['PKG_USING_CHERRYUSB'], CPPPATH = path, CPPDEFINES = CPPDEFINES)
  94. Return('group')