idf_component_register( SRC_DIRS "." "utilities/letter_shell/src" "utilities/letter_shell/port/esp-idf" "utilities/usb_cherry/esp_setup" "utilities/imp_util_ring_queue/" "utilities/imp_util_tlv_trans_protocol/" "utilities/imp_types/" "APP/main_app/" "components/msq_queue" "components/imp_out_port" "services/ext_trans_service" "utilities/u8g2/src" "utilities/u8g2/port" "services/display_service" "components/screen_pages/test_page" EXCLUDE_SRCS "utilities/imp_util_ring_queue/ring_queue_test.c" "utilities/imp_util_tlv_trans_protocol/imp_tlv_tp_test.c" INCLUDE_DIRS "." "utilities/letter_shell/src" "utilities/letter_shell/port/esp-idf" "utilities/usb_cherry/esp_setup" "utilities/imp_util_ring_queue/" "APP/main_app/" "utilities/imp_types/" "components/msq_queue" "components/imp_out_port" "services/ext_trans_service" "utilities/imp_util_tlv_trans_protocol/" "utilities/u8g2/src" "utilities/u8g2/port" "services/display_service" "components/screen_pages/test_page" LDFRAGMENTS "utilities/letter_shell/port/esp-idf/shell.lf" ) # 添加源文件 set(SOURCE_FILE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/main.c ${CMAKE_CURRENT_SOURCE_DIR}/services/display_service/display_service.c ${CMAKE_CURRENT_SOURCE_DIR}/utilities/letter_shell/src/shell.c ) add_custom_target(ForceCompile COMMAND ${CMAKE_COMMAND} -E echo "Forcing compilation of \"${SOURCE_FILE_PATH}\"" COMMAND ${CMAKE_COMMAND} -E touch_nocreate ${SOURCE_FILE_PATH} ) target_compile_options(${COMPONENT_LIB} PRIVATE "-Wno-format") # 将可执行目标与自定义目标关联,以确保在每次构建时,ForceCompile 目标都会被执行 add_dependencies(${COMPONENT_LIB} ForceCompile)