SConscript 3.9 KB

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