Files
lucky-cat/components/platform/CMakeLists.txt
T

99 lines
2.8 KiB
CMake

set(platform_srcs
"src/runtime/platform_core_runtime.c"
"src/runtime/platform_storage.c"
"src/runtime/platform_time.c"
"src/runtime/platform_https_client.c"
"src/runtime/platform_lan_http_server.c"
"src/platform_console_driver.c"
"src/runtime/platform_behavior_runtime.c"
"src/runtime/platform_multimodal_runtime.c"
"src/runtime/platform_lcd_runtime.c"
"src/platform_stepper_driver.c"
"src/platform_digital_input_driver.c"
"src/lcd_direct.c"
"src/lcd_direct_assets.c"
"src/multimodal/audio_pipeline.c"
"src/multimodal/transport_ws.c"
"src/wifi_portal_bridge.cpp"
"src/platform_behavior_stubs.c"
)
set(platform_priv_requires
78__esp-wifi-connect
cxx
driver
esp_audio_codec
esp_codec_dev
esp_driver_gpio
esp_driver_i2c
esp_driver_i2s
esp_driver_spi
esp_event
esp_app_format
esp_http_client
esp_http_server
esp_lcd
esp_netif
esp_psram
esp_system
esp_timer
esp_wifi
esp_websocket_client
json
littlefs
log
espressif__mdns
mbedtls
nvs_flash
)
idf_component_register(
SRCS
${platform_srcs}
INCLUDE_DIRS
"include"
PRIV_INCLUDE_DIRS
"internal"
PRIV_REQUIRES
${platform_priv_requires}
)
target_add_binary_data(${COMPONENT_LIB}
"assets/lcd/buyunqian1.rle"
BINARY
)
set(platform_audio_prompt_src_dir "${CMAKE_CURRENT_SOURCE_DIR}/assets/audio_prompts")
set(platform_asset_image_dir "${CMAKE_CURRENT_BINARY_DIR}/asset_image")
set(platform_asset_stage_stamp "${CMAKE_CURRENT_BINARY_DIR}/asset_image.stamp")
file(GLOB_RECURSE platform_audio_prompt_files CONFIGURE_DEPENDS
"${platform_audio_prompt_src_dir}/*.opus"
)
set(platform_asset_stage_commands)
foreach(audio_file IN LISTS platform_audio_prompt_files)
file(RELATIVE_PATH audio_rel_path "${platform_audio_prompt_src_dir}" "${audio_file}")
list(APPEND platform_asset_stage_commands
COMMAND ${CMAKE_COMMAND} -E make_directory "${platform_asset_image_dir}/audio_prompts"
COMMAND ${CMAKE_COMMAND} -E copy_if_different
"${audio_file}"
"${platform_asset_image_dir}/audio_prompts/${audio_rel_path}"
)
endforeach()
add_custom_command(
OUTPUT "${platform_asset_stage_stamp}"
COMMAND ${CMAKE_COMMAND} -E rm -rf "${platform_asset_image_dir}"
COMMAND ${CMAKE_COMMAND} -E make_directory "${platform_asset_image_dir}"
${platform_asset_stage_commands}
COMMAND ${CMAKE_COMMAND} -E touch "${platform_asset_stage_stamp}"
DEPENDS ${platform_audio_prompt_files}
)
littlefs_create_partition_image(
gifpack
"${platform_asset_image_dir}"
FLASH_IN_PROJECT
DEPENDS "${platform_asset_stage_stamp}"
)