95 lines
3.1 KiB
CMake
95 lines
3.1 KiB
CMake
cmake_minimum_required(VERSION 3.20.0)
|
|
|
|
set(IP5306_LOCAL_MODULE "${CMAKE_CURRENT_SOURCE_DIR}/modules/ip5306")
|
|
set(IP5306_EXTERNAL_MODULE "E:/extra/modules/ip5306")
|
|
set(extra_zephyr_modules "$CACHE{ZEPHYR_EXTRA_MODULES}")
|
|
|
|
if(EXISTS "${IP5306_LOCAL_MODULE}/zephyr/module.yml")
|
|
list(APPEND extra_zephyr_modules "${IP5306_LOCAL_MODULE}")
|
|
elseif(EXISTS "${IP5306_EXTERNAL_MODULE}/zephyr/module.yml")
|
|
list(APPEND extra_zephyr_modules "${IP5306_EXTERNAL_MODULE}")
|
|
endif()
|
|
|
|
list(REMOVE_DUPLICATES extra_zephyr_modules)
|
|
set(ZEPHYR_EXTRA_MODULES "${extra_zephyr_modules}" CACHE STRING "Extra Zephyr modules" FORCE)
|
|
|
|
find_package(Zephyr REQUIRED HINTS $ENV{ZEPHYR_BASE})
|
|
|
|
project(new_kbd)
|
|
|
|
if(NOT c_std_11 IN_LIST CMAKE_C_COMPILE_FEATURES)
|
|
list(APPEND CMAKE_C_COMPILE_FEATURES c_std_11)
|
|
endif()
|
|
|
|
set(PROTOBUF_PROTOC_EXECUTABLE
|
|
"${CMAKE_CURRENT_SOURCE_DIR}/scripts/protoc_nanopb.bat"
|
|
CACHE FILEPATH "Project-local protoc wrapper for nanopb" FORCE)
|
|
|
|
list(APPEND CMAKE_MODULE_PATH ${ZEPHYR_BASE}/modules/nanopb)
|
|
include(nanopb)
|
|
|
|
zephyr_include_directories(${CMAKE_CURRENT_SOURCE_DIR}/inc)
|
|
zephyr_include_directories(${CMAKE_CURRENT_SOURCE_DIR}/src/events)
|
|
zephyr_include_directories(${CMAKE_CURRENT_SOURCE_DIR}/src/ui)
|
|
|
|
zephyr_compile_definitions(
|
|
LV_LVGL_H_INCLUDE_SIMPLE=1
|
|
LV_FONT_MONTSERRAT_14=0
|
|
LV_FONT_UNSCII_8=0
|
|
LV_FONT_DEFAULT=\&ui_font_keyboard_small_18
|
|
"LV_FONT_CUSTOM_DECLARE=LV_FONT_DECLARE(ui_font_keyboard_small_18) LV_FONT_DECLARE(ui_font_keyboard_time_48)"
|
|
)
|
|
|
|
target_compile_definitions(app PRIVATE
|
|
APP_HID_KEYMAP_DEF_PATH=\"hid_keymap_def.h\"
|
|
)
|
|
|
|
zephyr_nanopb_sources(app
|
|
KeyBorad/proto/keyboard.proto
|
|
)
|
|
|
|
target_link_libraries(app PRIVATE nanopb)
|
|
|
|
target_sources(app PRIVATE
|
|
src/main.c
|
|
src/events/battery_status_event.c
|
|
src/events/config_event.c
|
|
src/events/display_theme_event.c
|
|
src/events/function_bitmap_event.c
|
|
src/events/function_key_event.c
|
|
src/events/hid_boot_event.c
|
|
src/events/hid_host_ack_event.c
|
|
src/events/hid_host_command_error_event.c
|
|
src/events/hid_host_command_event.c
|
|
src/events/hid_protocol_event.c
|
|
src/events/hid_report_event.c
|
|
src/events/hid_tx_done_event.c
|
|
src/events/hid_tx_event.c
|
|
src/events/hid_vendor_mask_event.c
|
|
src/events/keyboard_led_event.c
|
|
src/events/mode_event.c
|
|
src/events/qdec_step_event.c
|
|
src/events/time_sync_event.c
|
|
src/modules/battery_module.c
|
|
src/modules/ble_adv_ctrl_module.c
|
|
src/modules/ble_battery_module.c
|
|
src/modules/ble_bond_module.c
|
|
src/modules/ble_slot_ctrl_module.c
|
|
src/modules/display_module.c
|
|
src/modules/hid_host_command_module.c
|
|
src/modules/hid_tx_manager_module.c
|
|
src/modules/keyboard_proto.c
|
|
src/modules/keyboard_module.c
|
|
src/modules/led_state_module.c
|
|
src/modules/mode_switch_module.c
|
|
src/modules/qdec_module.c
|
|
src/modules/time_manager_module.c
|
|
src/modules/usb_cdc_proto_module.c
|
|
src/modules/usb_hid_module.c
|
|
src/modules/ble_hid_module.c
|
|
src/modules/ble_gatt_proto_module.c
|
|
src/ui/display_ui.c
|
|
src/ui/fonts/ui_font_keyboard_small_18.c
|
|
src/ui/fonts/ui_font_keyboard_time_48.c
|
|
)
|