SConscript 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346
  1. from building import *
  2. cwd = GetCurrentDir()
  3. path = [cwd]
  4. path += [cwd + '/common']
  5. path += [cwd + '/core']
  6. path += [cwd + '/class/hub']
  7. path += [cwd + '/class/cdc']
  8. path += [cwd + '/class/msc']
  9. path += [cwd + '/class/hid']
  10. path += [cwd + '/class/audio']
  11. path += [cwd + '/class/video']
  12. path += [cwd + '/class/wireless']
  13. path += [cwd + '/class/midi']
  14. path += [cwd + '/class/adb']
  15. path += [cwd + '/class/dfu']
  16. path += [cwd + '/class/serial']
  17. path += [cwd + '/class/vendor/net']
  18. path += [cwd + '/class/vendor/wifi']
  19. src = []
  20. LIBS = []
  21. LIBPATH = []
  22. CPPDEFINES = []
  23. # USB DEVICE
  24. if GetDepend(['RT_CHERRYUSB_DEVICE']):
  25. path += [cwd + '/osal']
  26. src += Glob('core/usbd_core.c')
  27. src += Glob('osal/usb_osal_rtthread.c')
  28. if GetDepend(['RT_CHERRYUSB_DEVICE_SPEED_HS']):
  29. CPPDEFINES+=['CONFIG_USB_HS']
  30. if GetDepend(['RT_CHERRYUSB_DEVICE_FSDEV_ST']):
  31. src += Glob('port/fsdev/usb_dc_fsdev.c')
  32. src += Glob('port/fsdev/usb_glue_st.c')
  33. if GetDepend(['RT_CHERRYUSB_DEVICE_FSDEV_CUSTOM']):
  34. src += Glob('port/fsdev/usb_dc_fsdev.c')
  35. if GetDepend(['RT_CHERRYUSB_DEVICE_DWC2_ST']):
  36. src += Glob('port/dwc2/usb_dc_dwc2.c')
  37. src += Glob('port/dwc2/usb_glue_st.c')
  38. if GetDepend(['RT_CHERRYUSB_DEVICE_DWC2_ESP']):
  39. src += Glob('port/dwc2/usb_dc_dwc2.c')
  40. src += Glob('port/dwc2/usb_glue_esp.c')
  41. if GetDepend(['RT_CHERRYUSB_DEVICE_DWC2_KENDRYTE']):
  42. src += Glob('port/dwc2/usb_dc_dwc2.c')
  43. src += Glob('port/dwc2/usb_glue_kendryte.c')
  44. if GetDepend(['RT_CHERRYUSB_DEVICE_DWC2_INFINEON']):
  45. src += Glob('port/dwc2/usb_dc_dwc2.c')
  46. src += Glob('port/dwc2/usb_glue_infineon.c')
  47. if GetDepend(['RT_CHERRYUSB_DEVICE_DWC2_AT']):
  48. src += Glob('port/dwc2/usb_dc_dwc2.c')
  49. src += Glob('port/dwc2/usb_glue_at.c')
  50. if GetDepend(['RT_CHERRYUSB_DEVICE_DWC2_HC']):
  51. src += Glob('port/dwc2/usb_dc_dwc2.c')
  52. src += Glob('port/dwc2/usb_glue_hc.c')
  53. if GetDepend(['RT_CHERRYUSB_DEVICE_DWC2_NATION']):
  54. src += Glob('port/dwc2/usb_dc_dwc2.c')
  55. src += Glob('port/dwc2/usb_glue_nation.c')
  56. if GetDepend(['RT_CHERRYUSB_DEVICE_DWC2_GD']):
  57. src += Glob('port/dwc2/usb_dc_dwc2.c')
  58. src += Glob('port/dwc2/usb_glue_gd.c')
  59. if GetDepend(['RT_CHERRYUSB_DEVICE_DWC2_CUSTOM']):
  60. src += Glob('port/dwc2/usb_dc_dwc2.c')
  61. if GetDepend(['RT_CHERRYUSB_DEVICE_MUSB_ES']):
  62. src += Glob('port/musb/usb_dc_musb.c')
  63. src += Glob('port/musb/usb_glue_es.c')
  64. if GetDepend(['RT_CHERRYUSB_DEVICE_MUSB_SUNXI']):
  65. src += Glob('port/musb/usb_dc_musb.c')
  66. src += Glob('port/musb/usb_glue_sunxi.c')
  67. if GetDepend(['RT_CHERRYUSB_DEVICE_MUSB_BK']):
  68. src += Glob('port/musb/usb_dc_musb.c')
  69. src += Glob('port/musb/usb_glue_bk.c')
  70. if GetDepend(['RT_CHERRYUSB_DEVICE_MUSB_SIFLI']):
  71. src += Glob('port/musb/usb_dc_musb.c')
  72. src += Glob('port/musb/usb_glue_sifli.c')
  73. if GetDepend(['RT_CHERRYUSB_DEVICE_MUSB_CUSTOM']):
  74. src += Glob('port/musb/usb_dc_musb.c')
  75. if GetDepend(['RT_CHERRYUSB_DEVICE_CHIPIDEA_MCX']):
  76. path += [cwd + '/port/chipidea']
  77. src += Glob('port/chipidea/usb_dc_chipidea.c')
  78. src += Glob('port/nxp/usb_glue_mcx.c')
  79. if GetDepend(['RT_CHERRYUSB_DEVICE_CHIPIDEA_CUSTOM']):
  80. path += [cwd + '/port/chipidea']
  81. src += Glob('port/chipidea/usb_dc_chipidea.c')
  82. if GetDepend(['RT_CHERRYUSB_DEVICE_KINETIS_MCX']):
  83. src += Glob('port/kinetis/usb_dc_kinetis.c')
  84. src += Glob('port/kinetis/usb_glue_mcx.c')
  85. if GetDepend(['RT_CHERRYUSB_DEVICE_KINETIS_CUSTOM']):
  86. src += Glob('port/kinetis/usb_dc_kinetis.c')
  87. if GetDepend(['RT_CHERRYUSB_DEVICE_BL']):
  88. src += Glob('port/bouffalolab/usb_dc_bl.c')
  89. if GetDepend(['RT_CHERRYUSB_DEVICE_HPM']):
  90. path += [cwd + '/port/hpmicro']
  91. src += Glob('port/hpmicro/usb_dc_hpm.c')
  92. src += Glob('port/hpmicro/usb_glue_hpm.c')
  93. if GetDepend(['RT_CHERRYUSB_DEVICE_AIC']):
  94. src += Glob('port/aic/usb_dc_aic.c')
  95. src += Glob('port/aic/usb_dc_aic_ll.c')
  96. if GetDepend(['RT_CHERRYUSB_DEVICE_CH32']):
  97. if GetDepend(['RT_CHERRYUSB_DEVICE_HS']):
  98. src += Glob('port/ch32/usb_dc_usbhs.c')
  99. else:
  100. src += Glob('port/ch32/usb_dc_usbfs.c')
  101. if GetDepend(['RT_CHERRYUSB_DEVICE_PUSB2']):
  102. path += [cwd + '/port/pusb2/rt-thread']
  103. src += Glob('port/pusb2/rt-thread/usb_dc_glue_phytium.c')
  104. if GetDepend(['ARCH_ARMV8']):
  105. LIBPATH = [cwd + '/port/pusb2']
  106. LIBS = ['libpusb2_dc_a64.a']
  107. if GetDepend(['ARCH_ARM_CORTEX_A']):
  108. LIBPATH = [cwd + '/port/pusb2']
  109. LIBS = ['libpusb2_dc_a32_softfp_neon.a']
  110. if GetDepend(['RT_CHERRYUSB_DEVICE_NRF5X']):
  111. src += Glob('port/nrf5x/usb_dc_nrf5x.c')
  112. if GetDepend(['RT_CHERRYUSB_DEVICE_RP2040']):
  113. path += [cwd + '/port/rp2040']
  114. src += Glob('port/rp2040/usb_dc_rp2040.c')
  115. if GetDepend(['RT_CHERRYUSB_DEVICE_CDC_ACM']):
  116. src += Glob('class/cdc/usbd_cdc_acm.c')
  117. if GetDepend(['RT_CHERRYUSB_DEVICE_HID']):
  118. src += Glob('class/hid/usbd_hid.c')
  119. if GetDepend(['RT_CHERRYUSB_DEVICE_MSC']):
  120. src += Glob('class/msc/usbd_msc.c')
  121. if GetDepend(['RT_CHERRYUSB_DEVICE_AUDIO']):
  122. src += Glob('class/audio/usbd_audio.c')
  123. if GetDepend(['RT_CHERRYUSB_DEVICE_VIDEO']):
  124. src += Glob('class/video/usbd_video.c')
  125. if GetDepend(['RT_CHERRYUSB_DEVICE_CDC_RNDIS']):
  126. src += Glob('class/wireless/usbd_rndis.c')
  127. if GetDepend(['RT_CHERRYUSB_DEVICE_CDC_ECM']):
  128. src += Glob('class/cdc/usbd_cdc_ecm.c')
  129. if GetDepend(['RT_CHERRYUSB_DEVICE_CDC_NCM']):
  130. src += Glob('class/cdc/usbd_cdc_ncm.c')
  131. if GetDepend(['RT_CHERRYUSB_DEVICE_DFU']):
  132. src += Glob('class/dfu/usbd_dfu.c')
  133. if GetDepend(['RT_CHERRYUSB_DEVICE_ADB']):
  134. src += Glob('class/adb/usbd_adb.c')
  135. src += Glob('platform/rtthread/usbd_adb_shell.c')
  136. if GetDepend(['RT_CHERRYUSB_DEVICE_CDC_ACM_CHARDEV']):
  137. src += Glob('platform/rtthread/usbd_serial.c')
  138. if GetDepend(['RT_CHERRYUSB_DEVICE_TEMPLATE_CDC_ACM']):
  139. src += Glob('demo/cdc_acm_template.c')
  140. if GetDepend(['RT_CHERRYUSB_DEVICE_TEMPLATE_MSC']) or GetDepend(['RT_CHERRYUSB_DEVICE_TEMPLATE_MSC_BLKDEV']):
  141. src += Glob('demo/msc_ram_template.c')
  142. if GetDepend(['RT_CHERRYUSB_DEVICE_TEMPLATE_HID_MOUSE']):
  143. src += Glob('demo/hid_mouse_template.c')
  144. if GetDepend(['RT_CHERRYUSB_DEVICE_TEMPLATE_HID_KEYBOARD']):
  145. src += Glob('demo/hid_keyboard_template.c')
  146. if GetDepend(['RT_CHERRYUSB_DEVICE_TEMPLATE_HID_CUSTOM']):
  147. src += Glob('demo/hid_custom_inout_template.c')
  148. if GetDepend(['RT_CHERRYUSB_DEVICE_TEMPLATE_VIDEO']):
  149. src += Glob('demo/video_static_mjpeg_template.c')
  150. if GetDepend(['RT_CHERRYUSB_DEVICE_TEMPLATE_AUDIO_V1_MIC_SPEAKER']):
  151. src += Glob('demo/audio_v1_mic_speaker_multichan_template.c')
  152. if GetDepend(['RT_CHERRYUSB_DEVICE_TEMPLATE_AUDIO_V2_MIC_SPEAKER']):
  153. src += Glob('demo/audio_v2_mic_speaker_multichan_template.c')
  154. if GetDepend(['RT_CHERRYUSB_DEVICE_TEMPLATE_CDC_RNDIS']):
  155. src += Glob('demo/cdc_rndis_template.c')
  156. if GetDepend(['RT_CHERRYUSB_DEVICE_TEMPLATE_CDC_ECM']):
  157. src += Glob('demo/cdc_ecm_template.c')
  158. if GetDepend(['RT_CHERRYUSB_DEVICE_TEMPLATE_CDC_NCM']):
  159. src += Glob('demo/cdc_ncm_template.c')
  160. if GetDepend(['RT_CHERRYUSB_DEVICE_TEMPLATE_CDC_ACM_MSC']):
  161. src += Glob('demo/cdc_acm_msc_template.c')
  162. if GetDepend(['RT_CHERRYUSB_DEVICE_TEMPLATE_CDC_ACM_MSC_HID']):
  163. src += Glob('demo/cdc_acm_hid_msc_template.c')
  164. if GetDepend(['RT_CHERRYUSB_DEVICE_TEMPLATE_WINUSBV1']):
  165. src += Glob('demo/winusb1.0_template.c')
  166. if GetDepend(['RT_CHERRYUSB_DEVICE_TEMPLATE_WINUSBV2']):
  167. src += Glob('demo/winusb2.0_template.c')
  168. if GetDepend(['RT_CHERRYUSB_DEVICE_TEMPLATE_WINUSBV2_CDC']):
  169. src += Glob('demo/winusb2.0_cdc_template.c')
  170. if GetDepend(['RT_CHERRYUSB_DEVICE_TEMPLATE_WEBUSB_HID']):
  171. src += Glob('demo/webusb_hid_template.c')
  172. if GetDepend(['RT_CHERRYUSB_DEVICE_TEMPLATE_ADB']):
  173. src += Glob('demo/adb/usbd_adb_template.c')
  174. if GetDepend(['RT_CHERRYUSB_DEVICE_TEMPLATE_CDC_ACM_CHARDEV']):
  175. src += Glob('demo/cdc_acm_rttchardev_template.c')
  176. # USB HOST
  177. if GetDepend(['RT_CHERRYUSB_HOST']):
  178. src += Glob('core/usbh_core.c')
  179. src += Glob('class/hub/usbh_hub.c')
  180. src += Glob('osal/usb_osal_rtthread.c')
  181. if GetDepend(['RT_CHERRYUSB_HOST_EHCI_BL']):
  182. src += Glob('port/ehci/usb_hc_ehci.c')
  183. src += Glob('port/ehci/usb_glue_bouffalo.c')
  184. if GetDepend(['RT_CHERRYUSB_HOST_EHCI_HPM']):
  185. path += [cwd + '/port/hpmicro']
  186. src += Glob('port/ehci/usb_hc_ehci.c')
  187. src += Glob('port/hpmicro/usb_hc_hpm.c')
  188. src += Glob('port/hpmicro/usb_glue_hpm.c')
  189. if GetDepend(['RT_CHERRYUSB_HOST_EHCI_AIC']):
  190. path += [cwd + '/port/ehci']
  191. path += [cwd + '/port/ohci']
  192. src += Glob('port/ehci/usb_hc_ehci.c')
  193. src += Glob('port/ehci/usb_glue_aic.c')
  194. src += Glob('port/ohci/usb_hc_ohci.c')
  195. if GetDepend(['RT_CHERRYUSB_HOST_EHCI_MCX']):
  196. path += [cwd + '/port/chipidea']
  197. src += Glob('port/ehci/usb_hc_ehci.c')
  198. src += Glob('port/nxp/usb_glue_mcx.c')
  199. if GetDepend(['RT_CHERRYUSB_HOST_EHCI_NUC980']):
  200. src += Glob('port/ehci/usb_hc_ehci.c')
  201. src += Glob('port/ehci/usb_glue_nuc980.c')
  202. if GetDepend(['RT_CHERRYUSB_HOST_EHCI_MA35D0']):
  203. src += Glob('port/ehci/usb_hc_ehci.c')
  204. src += Glob('port/ehci/usb_glue_ma35d0.c')
  205. if GetDepend(['RT_CHERRYUSB_HOST_EHCI_CUSTOM']):
  206. src += Glob('port/ehci/usb_hc_ehci.c')
  207. if GetDepend(['RT_CHERRYUSB_HOST_DWC2_ST']):
  208. src += Glob('port/dwc2/usb_hc_dwc2.c')
  209. src += Glob('port/dwc2/usb_glue_st.c')
  210. if GetDepend(['RT_CHERRYUSB_HOST_DWC2_ESP']):
  211. src += Glob('port/dwc2/usb_hc_dwc2.c')
  212. src += Glob('port/dwc2/usb_glue_esp.c')
  213. if GetDepend(['RT_CHERRYUSB_HOST_DWC2_KENDRYTE']):
  214. src += Glob('port/dwc2/usb_hc_dwc2.c')
  215. src += Glob('port/dwc2/usb_glue_kendryte.c')
  216. if GetDepend(['RT_CHERRYUSB_HOST_DWC2_INFINEON']):
  217. src += Glob('port/dwc2/usb_hc_dwc2.c')
  218. src += Glob('port/dwc2/usb_glue_infineon.c')
  219. if GetDepend(['RT_CHERRYUSB_HOST_DWC2_AT']):
  220. src += Glob('port/dwc2/usb_hc_dwc2.c')
  221. src += Glob('port/dwc2/usb_glue_at.c')
  222. if GetDepend(['RT_CHERRYUSB_HOST_DWC2_HC']):
  223. src += Glob('port/dwc2/usb_hc_dwc2.c')
  224. src += Glob('port/dwc2/usb_glue_hc.c')
  225. if GetDepend(['RT_CHERRYUSB_HOST_DWC2_NATION']):
  226. src += Glob('port/dwc2/usb_hc_dwc2.c')
  227. src += Glob('port/dwc2/usb_glue_nation.c')
  228. if GetDepend(['RT_CHERRYUSB_HOST_DWC2_CUSTOM']):
  229. src += Glob('port/dwc2/usb_hc_dwc2.c')
  230. if GetDepend(['RT_CHERRYUSB_HOST_MUSB_STANDARD']):
  231. src += Glob('port/musb/usb_hc_musb.c')
  232. if GetDepend(['RT_CHERRYUSB_HOST_MUSB_ES']):
  233. src += Glob('port/musb/usb_hc_musb.c')
  234. src += Glob('port/musb/usb_glue_es.c')
  235. if GetDepend(['RT_CHERRYUSB_HOST_MUSB_SUNXI']):
  236. src += Glob('port/musb/usb_hc_musb.c')
  237. src += Glob('port/musb/usb_glue_sunxi.c')
  238. if GetDepend(['RT_CHERRYUSB_HOST_MUSB_BK']):
  239. src += Glob('port/musb/usb_hc_musb.c')
  240. src += Glob('port/musb/usb_glue_bk.c')
  241. if GetDepend(['RT_CHERRYUSB_HOST_MUSB_SIFLI']):
  242. src += Glob('port/musb/usb_hc_musb.c')
  243. src += Glob('port/musb/usb_glue_sifli.c')
  244. if GetDepend(['RT_CHERRYUSB_HOST_MUSB_CUSTOM']):
  245. src += Glob('port/musb/usb_hc_musb.c')
  246. if GetDepend(['RT_CHERRYUSB_HOST_KINETIS_MCX']):
  247. src += Glob('port/kinetis/usb_hc_kinetis.c')
  248. src += Glob('port/kinetis/usb_glue_mcx.c')
  249. if GetDepend(['RT_CHERRYUSB_HOST_KINETIS_CUSTOM']):
  250. src += Glob('port/kinetis/usb_hc_kinetis.c')
  251. if GetDepend(['RT_CHERRYUSB_HOST_PUSB2']):
  252. path += [cwd + '/port/pusb2/rt-thread']
  253. src += Glob('port/pusb2/rt-thread/usb_hc_glue_phytium.c')
  254. if GetDepend(['ARCH_ARMV8']):
  255. LIBPATH = [cwd + '/port/pusb2']
  256. LIBS = ['libpusb2_hc_a64.a']
  257. if GetDepend(['ARCH_ARM_CORTEX_A']):
  258. LIBPATH = [cwd + '/port/pusb2']
  259. LIBS = ['libpusb2_hc_a32_softfp_neon.a']
  260. if GetDepend(['RT_CHERRYUSB_HOST_XHCI']):
  261. path += [cwd + '/port/xhci/phytium/rt-thread']
  262. src += Glob('port/xhci/phytium/rt-thread/usb_glue_phytium_plat.c')
  263. src += Glob('port/xhci/phytium/rt-thread/usb_glue_phytium.c')
  264. if GetDepend(['ARCH_ARMV8']):
  265. LIBPATH = [cwd + '/port/xhci/phytium']
  266. LIBS = ['libxhci_a64.a']
  267. if GetDepend(['ARCH_ARM_CORTEX_A']):
  268. LIBPATH = [cwd + '/port/xhci/phytium']
  269. LIBS = ['libxhci_a32_softfp_neon.a']
  270. if GetDepend(['RT_CHERRYUSB_HOST_RP2040']):
  271. path += [cwd + '/port/rp2040']
  272. src += Glob('port/rp2040/usb_hc_rp2040.c')
  273. if GetDepend(['RT_CHERRYUSB_HOST_CDC_ACM']):
  274. src += Glob('class/serial/usbh_cdc_acm.c')
  275. if GetDepend(['RT_CHERRYUSB_HOST_HID']):
  276. src += Glob('class/hid/usbh_hid.c')
  277. if GetDepend(['RT_CHERRYUSB_HOST_MSC']):
  278. src += Glob('class/msc/usbh_msc.c')
  279. if GetDepend(['RT_CHERRYUSB_HOST_CDC_RNDIS']):
  280. src += Glob('class/wireless/usbh_rndis.c')
  281. if GetDepend(['RT_CHERRYUSB_HOST_CDC_ECM']):
  282. src += Glob('class/cdc/usbh_cdc_ecm.c')
  283. if GetDepend(['RT_CHERRYUSB_HOST_CDC_NCM']):
  284. src += Glob('class/cdc/usbh_cdc_ncm.c')
  285. if GetDepend(['RT_CHERRYUSB_HOST_VIDEO']):
  286. src += Glob('class/video/usbh_video.c')
  287. if GetDepend(['RT_CHERRYUSB_HOST_AUDIO']):
  288. src += Glob('class/audio/usbh_audio.c')
  289. if GetDepend(['RT_CHERRYUSB_HOST_BLUETOOTH']):
  290. src += Glob('class/wireless/usbh_bluetooth.c')
  291. if GetDepend(['RT_CHERRYUSB_HOST_ASIX']):
  292. src += Glob('class/vendor/net/usbh_asix.c')
  293. if GetDepend(['RT_CHERRYUSB_HOST_RTL8152']):
  294. src += Glob('class/vendor/net/usbh_rtl8152.c')
  295. if GetDepend(['RT_CHERRYUSB_HOST_FTDI']):
  296. src += Glob('class/serial/usbh_ftdi.c')
  297. if GetDepend(['RT_CHERRYUSB_HOST_CH34X']):
  298. src += Glob('class/serial/usbh_ch34x.c')
  299. if GetDepend(['RT_CHERRYUSB_HOST_CP210X']):
  300. src += Glob('class/serial/usbh_cp210x.c')
  301. if GetDepend(['RT_CHERRYUSB_HOST_PL2303']):
  302. src += Glob('class/serial/usbh_pl2303.c')
  303. if GetDepend(['RT_TEST_USBH_HID']):
  304. CPPDEFINES+=['CONFIG_TEST_USBH_HID']
  305. src += Glob('demo/usb_host.c')
  306. if GetDepend(['RT_CHERRYUSB_HOST_CDC_ACM']) \
  307. or GetDepend(['RT_CHERRYUSB_HOST_FTDI']) \
  308. or GetDepend(['RT_CHERRYUSB_HOST_CH34X']) \
  309. or GetDepend(['RT_CHERRYUSB_HOST_CP210X']) \
  310. or GetDepend(['RT_CHERRYUSB_HOST_PL2303']) \
  311. or GetDepend(['RT_CHERRYUSB_HOST_GSM']):
  312. src += Glob('class/serial/usbh_serial.c')
  313. src += Glob('platform/rtthread/usbh_rtserial.c')
  314. if GetDepend('RT_USING_DFS') and GetDepend(['RT_CHERRYUSB_HOST_MSC']):
  315. src += Glob('platform/rtthread/usbh_dfs.c')
  316. if GetDepend('RT_CHERRYUSB_HOST_CDC_ECM') \
  317. or GetDepend('RT_CHERRYUSB_HOST_CDC_RNDIS') \
  318. or GetDepend('RT_CHERRYUSB_HOST_CDC_NCM') \
  319. or GetDepend('RT_CHERRYUSB_HOST_ASIX') \
  320. or GetDepend('RT_CHERRYUSB_HOST_RTL8152'):
  321. src += Glob('platform/rtthread/usbh_lwip.c')
  322. src += Glob('platform/rtthread/usb_msh.c')
  323. src += Glob('platform/rtthread/usb_check.c')
  324. group = DefineGroup('UsbStack', src, depend = ['RT_USING_CHERRYUSB'], LIBS = LIBS, LIBPATH=LIBPATH, CPPPATH = path, CPPDEFINES = CPPDEFINES)
  325. Return('group')