flatUSB/CMakeLists.txt

51 lines
1.1 KiB
CMake

cmake_minimum_required(VERSION 3.15)
set(FLATUSB_TARGET flatUSB)
if (FLATUSB_TARGET_TAG)
set(FLATUSB_TARGET "${FLATUSB_TARGET}_${FLATUSB_TARGET_TAG}")
message("Custom flatUSB target: ${FLATUSB_TARGET}")
endif()
set(FLATUSB_CLASSES_SRC "")
if ("CDC_ACM" IN_LIST FLATUSB_CLASSES)
list(APPEND FLATUSB_CLASSES_SRC
class/cdc.c
class/cdc.h
)
endif()
if ("CDC_EEM" IN_LIST FLATUSB_CLASSES)
list(APPEND FLATUSB_CLASSES_SRC
class/eem.c
class/eem.h
)
endif()
message("flatUSB classes selected: ${FLATUSB_CLASSES}")
set(FLATUSB_SRC
${FLATUSB_CLASSES_SRC}
desc/usb_desc.c
desc/usb_desc.h
usb.c
usb_callback_event.h
usb_common_defs.h
usb_common.h
usb_common_types.h
usb_core_types.h
usb_device_types.h
usb_driver.c
usb_driver.h
usb.h
# utils/gen_queue.c
# utils/gen_queue.h
)
add_library(${FLATUSB_TARGET} STATIC ${FLATUSB_SRC})
target_include_directories(${FLATUSB_TARGET} PRIVATE ${FLATUSB_INCLUDES})
target_compile_options(${FLATUSB_TARGET} PRIVATE ${FLATUSB_CPU_PARAMS})
target_compile_definitions(${FLATUSB_TARGET} PRIVATE ${FLATUSB_COMPILE_DEFS})