@@ -45,6 +45,17 @@ list(APPEND SOURCES ${BOARD_COMMON_SOURCES})
4545list (APPEND INCLUDE_DIRS ${CMAKE_CURRENT_SOURCE_DIR} /boards/common)
4646
4747idf_build_get_property(build_components BUILD_COMPONENTS)
48+ # Function to find component dynamically by pattern
49+ function (find_component_by_pattern PATTERN COMPONENT_VAR PATH_VAR)
50+ foreach (COMPONENT ${build_components} )
51+ if (COMPONENT MATCHES "${PATTERN} " )
52+ set (${COMPONENT_VAR} ${COMPONENT} PARENT_SCOPE)
53+ idf_component_get_property(COMPONENT_PATH ${COMPONENT} COMPONENT_DIR)
54+ set (${PATH_VAR} "${COMPONENT_PATH} " PARENT_SCOPE)
55+ break ()
56+ endif ()
57+ endforeach ()
58+ endfunction ()
4859
4960# Set default BUILTIN_TEXT_FONT and BUILTIN_ICON_FONT
5061set (BUILTIN_TEXT_FONT font_puhui_14_1)
@@ -64,7 +75,7 @@ elseif(CONFIG_BOARD_TYPE_BREAD_COMPACT_ESP32)
6475 set (BOARD_TYPE "bread-compact-esp32" )
6576elseif (CONFIG_BOARD_TYPE_BREAD_COMPACT_ESP32_LCD)
6677 set (BOARD_TYPE "bread-compact-esp32-lcd" )
67- set (BUILTIN_TEXT_FONT font_puhui_14_1 )
78+ set (BUILTIN_TEXT_FONT font_puhui_basic_14_1 )
6879 set (BUILTIN_ICON_FONT font_awesome_14_1)
6980elseif (CONFIG_BOARD_TYPE_DF_K10)
7081 set (BOARD_TYPE "df-k10" )
@@ -202,14 +213,10 @@ elseif(CONFIG_BOARD_TYPE_ECHOEAR)
202213 set (BUILTIN_TEXT_FONT font_puhui_20_4)
203214 set (BUILTIN_ICON_FONT font_awesome_20_4)
204215 # Find esp_emote_gfx component for ECHOEAR extra files
205- foreach (COMPONENT ${build_components} )
206- if (COMPONENT MATCHES "esp_emote_gfx" OR COMPONENT MATCHES "espressif2022__esp_emote_gfx" )
207- set (EMOTE_GFX_COMPONENT ${COMPONENT} )
208- idf_component_get_property(EMOTE_GFX_COMPONENT_PATH ${EMOTE_GFX_COMPONENT} COMPONENT_DIR)
209- set (DEFAULT_ASSETS_EXTRA_FILES "${EMOTE_GFX_COMPONENT_PATH} /emoji_normal" )
210- break ()
211- endif ()
212- endforeach ()
216+ find_component_by_pattern("esp_emote_gfx" EMOTE_GFX_COMPONENT EMOTE_GFX_COMPONENT_PATH)
217+ if (EMOTE_GFX_COMPONENT_PATH)
218+ set (DEFAULT_ASSETS_EXTRA_FILES "${EMOTE_GFX_COMPONENT_PATH} /emoji_normal" )
219+ endif ()
213220elseif (CONFIG_BOARD_TYPE_ESP32S3_AUDIO_BOARD)
214221 set (BOARD_TYPE "waveshare-s3-audio-board" )
215222 set (BUILTIN_TEXT_FONT font_puhui_basic_16_4)
@@ -406,11 +413,11 @@ elseif(CONFIG_BOARD_TYPE_GENJUTECH_S3_1_54TFT)
406413 set (DEFAULT_EMOJI_COLLECTION twemoji_64)
407414elseif (CONFIG_BOARD_TYPE_ESP32_CGC)
408415 set (BOARD_TYPE "esp32-cgc" )
409- set (BUILTIN_TEXT_FONT font_puhui_14_1 )
416+ set (BUILTIN_TEXT_FONT font_puhui_basic_14_1 )
410417 set (BUILTIN_ICON_FONT font_awesome_14_1)
411418elseif (CONFIG_BOARD_TYPE_ESP32_CGC_144)
412419 set (BOARD_TYPE "esp32-cgc-144" )
413- set (BUILTIN_TEXT_FONT font_puhui_14_1 )
420+ set (BUILTIN_TEXT_FONT font_puhui_basic_14_1 )
414421 set (BUILTIN_ICON_FONT font_awesome_14_1)
415422elseif (CONFIG_BOARD_TYPE_ESP_S3_LCD_EV_Board)
416423 set (BOARD_TYPE "esp-s3-lcd-ev-board" )
@@ -499,12 +506,11 @@ if(CONFIG_USE_AUDIO_PROCESSOR)
499506else ()
500507 list (APPEND SOURCES "audio/processors/no_audio_processor.cc" )
501508endif ()
502- if (CONFIG_USE_AFE_WAKE_WORD )
509+ if (CONFIG_IDF_TARGET_ESP32S3 OR CONFIG_IDF_TARGET_ESP32P4 )
503510 list (APPEND SOURCES "audio/wake_words/afe_wake_word.cc" )
504- elseif (CONFIG_USE_ESP_WAKE_WORD)
505- list (APPEND SOURCES "audio/wake_words/esp_wake_word.cc" )
506- elseif (CONFIG_USE_CUSTOM_WAKE_WORD)
507511 list (APPEND SOURCES "audio/wake_words/custom_wake_word.cc" )
512+ else ()
513+ list (APPEND SOURCES "audio/wake_words/esp_wake_word.cc" )
508514endif ()
509515
510516# Select language directory according to Kconfig
@@ -603,24 +609,16 @@ add_custom_target(lang_header ALL
603609)
604610
605611# Find ESP-SR component dynamically
606- foreach (COMPONENT ${build_components} )
607- if (COMPONENT MATCHES "espressif__esp-sr" )
608- set (ESP_SR_COMPONENT ${COMPONENT} )
609- idf_component_get_property(ESP_SR_COMPONENT_PATH ${ESP_SR_COMPONENT} COMPONENT_DIR)
610- set (ESP_SR_MODEL_PATH "${ESP_SR_COMPONENT_PATH} /model" )
611- break ()
612- endif ()
613- endforeach ()
612+ find_component_by_pattern("espressif__esp-sr" ESP_SR_COMPONENT ESP_SR_COMPONENT_PATH)
613+ if (ESP_SR_COMPONENT_PATH)
614+ set (ESP_SR_MODEL_PATH "${ESP_SR_COMPONENT_PATH} /model" )
615+ endif ()
614616
615617# Find xiaozhi-fonts component dynamically
616- foreach (COMPONENT ${build_components} )
617- if (COMPONENT MATCHES "xiaozhi-fonts" )
618- set (XIAOZHI_FONTS_COMPONENT ${COMPONENT} )
619- idf_component_get_property(XIAOZHI_FONTS_COMPONENT_PATH ${XIAOZHI_FONTS_COMPONENT} COMPONENT_DIR)
620- set (XIAOZHI_FONTS_PATH "${XIAOZHI_FONTS_COMPONENT_PATH} " )
621- break ()
622- endif ()
623- endforeach ()
618+ find_component_by_pattern("xiaozhi-fonts" XIAOZHI_FONTS_COMPONENT XIAOZHI_FONTS_COMPONENT_PATH)
619+ if (XIAOZHI_FONTS_COMPONENT_PATH)
620+ set (XIAOZHI_FONTS_PATH "${XIAOZHI_FONTS_COMPONENT_PATH} " )
621+ endif ()
624622
625623if (CONFIG_BOARD_TYPE_ESP_HI)
626624set (URL "https://github.com/espressif2022/image_player/raw/main/test_apps/test_8bit" )
0 commit comments