summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorHa Thach <[email protected]>2023-04-24 16:43:40 +0700
committerGitHub <[email protected]>2023-04-24 16:43:40 +0700
commit8ede566c41ee0fc89929e7bc45cdbe31fe53bf0f (patch)
tree23156a728b847d46d4b8a973fbc431f6bb5079a0 /src
parent0871238cacddb1802e5ce88a8e407d55a7fa34af (diff)
parenta4d5d515493187437731eae830cb4b173fd11c02 (diff)
Merge pull request #2039 from hathach/add-cmake-build
Add cmake build
Diffstat (limited to 'src')
-rw-r--r--src/CMakeLists.txt35
1 files changed, 35 insertions, 0 deletions
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
new file mode 100644
index 000000000..a270ea8b7
--- /dev/null
+++ b/src/CMakeLists.txt
@@ -0,0 +1,35 @@
+# TODO make tinyusb as library that depends on 'tusb_config' interface that exposes the tusb_config.h file
+# This file is WIP and should not used yet
+
+cmake_minimum_required(VERSION 3.17)
+
+function(add_tinyusb TARGET)
+ target_sources(${TARGET} PUBLIC
+ ${CMAKE_CURRENT_FUNCTION_LIST_DIR}/tusb.c
+ ${CMAKE_CURRENT_FUNCTION_LIST_DIR}/common/tusb_fifo.c
+ ${CMAKE_CURRENT_FUNCTION_LIST_DIR}/device/usbd.c
+ ${CMAKE_CURRENT_FUNCTION_LIST_DIR}/device/usbd_control.c
+ ${CMAKE_CURRENT_FUNCTION_LIST_DIR}/class/audio/audio_device.c
+ ${CMAKE_CURRENT_FUNCTION_LIST_DIR}/class/cdc/cdc_device.c
+ ${CMAKE_CURRENT_FUNCTION_LIST_DIR}/class/dfu/dfu_device.c
+ ${CMAKE_CURRENT_FUNCTION_LIST_DIR}/class/dfu/dfu_rt_device.c
+ ${CMAKE_CURRENT_FUNCTION_LIST_DIR}/class/hid/hid_device.c
+ ${CMAKE_CURRENT_FUNCTION_LIST_DIR}/class/midi/midi_device.c
+ ${CMAKE_CURRENT_FUNCTION_LIST_DIR}/class/msc/msc_device.c
+ ${CMAKE_CURRENT_FUNCTION_LIST_DIR}/class/net/ecm_rndis_device.c
+ ${CMAKE_CURRENT_FUNCTION_LIST_DIR}/class/net/ncm_device.c
+ ${CMAKE_CURRENT_FUNCTION_LIST_DIR}/class/usbtmc/usbtmc_device.c
+ ${CMAKE_CURRENT_FUNCTION_LIST_DIR}/class/vendor/vendor_device.c
+ ${CMAKE_CURRENT_FUNCTION_LIST_DIR}/class/video/video_device.c
+ )
+
+ target_include_directories(${TARGET} PUBLIC
+ ${CMAKE_CURRENT_FUNCTION_LIST_DIR}
+ )
+
+ # enable all possible warnings
+ target_compile_options(${TARGET} PUBLIC
+
+ )
+
+endfunction()