summaryrefslogtreecommitdiff
path: root/CMakeLists.txt
blob: ec19cbcf7b11ac10621350c999df42e2071d34d5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
add_library(cherryusb STATIC)

target_include_directories(cherryusb PUBLIC
common
core
osal
class/cdc
class/hid
class/msc
class/audio
class/video
class/hub
class/wireless
)

if(CONFIG_CHERRYUSB_DEVICE)
    target_sources(cherryusb PRIVATE core/usbd_core.c)
    if(CONFIG_CHERRYUSB_DEVICE_CDC)
    target_sources(cherryusb PRIVATE class/cdc/usbd_cdc.c)
    endif()
    if(CONFIG_CHERRYUSB_DEVICE_HID)
    target_sources(cherryusb PRIVATE class/hid/usbd_hid.c)
    endif()
    if(CONFIG_CHERRYUSB_DEVICE_MSC)
    target_sources(cherryusb PRIVATE class/msc/usbd_msc.c)
    endif()
    if(CONFIG_CHERRYUSB_DEVICE_AUDIO)
    target_sources(cherryusb PRIVATE class/audio/usbd_audio.c)
    endif()
    if(CONFIG_CHERRYUSB_DEVICE_VIDEO)
    target_sources(cherryusb PRIVATE class/video/usbd_video.c)
    endif()
endif()

if(CONFIG_CHERRYUSB_HOST)
    target_sources(cherryusb PRIVATE 
    core/usbh_core.c
    class/hub/usbh_hub.c
    class/cdc/usbh_cdc_acm.c
    class/hid/usbh_hid.c
    class/msc/usbh_msc.c
    class/audio/usbh_audio.c
    class/video/usbh_video.c
    class/wireless/usbh_rndis.c
    )

endif()

if(DEFINED CONFIG_CHERRYUSB_OSAL)
    if("${CONFIG_CHERRYUSB_OSAL}" STREQUAL "freertos")
    target_sources(cherryusb PRIVATE osal/usb_osal_freertos.c)
    elseif("${CONFIG_CHERRYUSB_OSAL}" STREQUAL "rtthread")
    target_sources(cherryusb PRIVATE osal/usb_osal_rtthread.c)
    elseif("${CONFIG_CHERRYUSB_OSAL}" STREQUAL "yoc")
    target_sources(cherryusb PRIVATE osal/usb_osal_yoc.c)
    endif()
endif()