SConscript 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. import rtconfig
  2. from building import *
  3. cwd = GetCurrentDir()
  4. src = Split("""
  5. ../../src/tusb.c
  6. ../../src/common/tusb_fifo.c
  7. ./tusb_rt_thread_port.c
  8. """)
  9. path = [cwd, cwd + "/../../src"]
  10. LOCAL_CFLAGS = ''
  11. # for device stack
  12. if GetDepend(["PKG_TINYUSB_DEVICE_ENABLE"]):
  13. src += ["../../src/device/usbd.c",
  14. "../../src/device/usbd_control.c"]
  15. # BSP
  16. if GetDepend(["SOC_FAMILY_STM32"]):
  17. src += ["../../src/portable/synopsys/dwc2/dcd_dwc2.c",
  18. "../../src/portable/st/stm32_fsdev/dcd_stm32_fsdev.c"]
  19. if GetDepend(["SOC_NRF52840"]):
  20. src += ["../../src/portable/nordic/nrf5x/dcd_nrf5x.c"]
  21. if GetDepend(["SOC_FAMILY_RENESAS"]):
  22. src += ["../../src/portable/renesas/rusb2/dcd_rusb2.c",
  23. "../../src/portable/renesas/rusb2/rusb2_common.c"]
  24. # Device class
  25. if GetDepend(["PKG_TINYUSB_DEVICE_UVC"]):
  26. src += ["../../src/class/video/video_device.c"]
  27. if GetDepend(["PKG_TINYUSB_DEVICE_CDC"]):
  28. src += ["../../src/class/cdc/cdc_device.c"]
  29. if GetDepend(["PKG_TINYUSB_DEVICE_MSC"]):
  30. src += ["../../src/class/msc/msc_device.c", "port/msc_device_port.c"]
  31. if GetDepend(["PKG_TINYUSB_DEVICE_HID"]):
  32. src += ["../../src/class/hid/hid_device.c"]
  33. # for host stack
  34. if GetDepend(["PKG_TINYUSB_HOST_ENABLE"]):
  35. src += ["../../src/host/usbh.c", "../../src/host/hub.c"]
  36. if GetDepend(["SOC_FAMILY_RENESAS"]):
  37. src += ["../../src/portable/renesas/rusb2/hcd_rusb2.c",
  38. "../../src/portable/renesas/rusb2/rusb2_common.c"]
  39. if rtconfig.PLATFORM == 'gcc' or rtconfig.PLATFORM == 'armclang': # GCC or Keil AC6
  40. LOCAL_CFLAGS += ' -std=c99'
  41. elif rtconfig.PLATFORM == 'armcc': # Keil AC5
  42. LOCAL_CFLAGS += ' --c99 --gnu'
  43. group = DefineGroup('TinyUSB', src, depend = ['PKG_USING_TINYUSB'], CPPPATH = path, LOCAL_CFLAGS = LOCAL_CFLAGS)
  44. Return('group')