include $(APPDIR)/Make.defs
MODULE = $(CONFIG_EXAMPLES_AI_AGENT_VELA)
CFLAGS += ${INCDIR_PREFIX}$(CURDIR)/include
CFLAGS += ${INCDIR_PREFIX}$(CURDIR)/src
CFLAGS += ${INCDIR_PREFIX}$(CURDIR)/tests
CFLAGS += ${INCDIR_PREFIX}$(APPDIR)/netutils/cjson/cJSON
CFLAGS += ${INCDIR_PREFIX}$(APPDIR)/crypto/mbedtls/mbedtls/include
CFLAGS += ${INCDIR_PREFIX}$(APPDIR)/../frameworks/system/topics/include
CFLAGS += ${INCDIR_PREFIX}$(APPDIR)/../frameworks/system/vibrator
CFLAGS += ${INCDIR_PREFIX}$(APPDIR)/../frameworks/multimedia/media/include
CFLAGS += ${INCDIR_PREFIX}$(APPDIR)/netutils/mqttc/MQTT-C/include
CSRCS += src/core/message_bus.c
CSRCS += src/core/message_bus_tap.c
CSRCS += src/core/agent_loop.c
CSRCS += src/core/agent_trace.c
CSRCS += src/core/context_builder.c
CSRCS += src/core/memory_store.c
CSRCS += src/core/session_mgr.c
CSRCS += src/llm/llm_proxy.c
CSRCS += src/llm/llm_parse.c
CSRCS += src/llm/llm_vision.c
CSRCS += src/llm/llm_router.c
CSRCS += src/llm/llm_cache.c
CSRCS += src/tools/tool_registry.c
CSRCS += src/tools/tool_files.c
CSRCS += src/tools/tool_get_time.c
CSRCS += src/tools/tool_web_search.c
CSRCS += src/tools/tool_cron.c
CSRCS += src/tools/tool_fetch_url.c
CSRCS += src/tools/tool_feishu_doc.c
CSRCS += src/tools/tool_feishu_chat.c
CSRCS += src/tools/tool_vision.c
CSRCS += src/tools/tool_shell.c
CSRCS += src/tools/tool_system.c
CSRCS += src/tools/tool_health.c
CSRCS += src/tools/tool_control.c
CSRCS += src/tools/tool_media.c
CSRCS += src/tools/tool_proxyquickapp.c
ifeq ($(CONFIG_AI_AGENT_MCP),y)
CSRCS += src/tools/mcp_bridge.c
CSRCS += src/tools/mcp_server.c
CSRCS += src/tools/mcp_tool_registry.c
CSRCS += src/tools/mcp_builtin_tools.c
CSRCS += src/tools/mcp_client.c
endif
CSRCS += src/tools/skill_loader.c
CSRCS += src/tools/tool_guard.c
ifeq ($(CONFIG_AI_AGENT_SKILL_SYNC),y)
CSRCS += src/tools/skill_sync.c
endif
CSRCS += src/channels/nsh_commands.c
CSRCS += src/channels/cmd_llm.c
CSRCS += src/channels/cmd_channel.c
CSRCS += src/channels/cmd_voice.c
ifeq ($(CONFIG_AI_AGENT_FEISHU),y)
CSRCS += src/channels/feishu_bot.c
CSRCS += src/channels/feishu_ws.c
CSRCS += src/channels/feishu_http.c
CSRCS += src/channels/feishu_proto.c
CSRCS += src/channels/feishu_recv.c
CSRCS += src/channels/feishu_send.c
endif
ifeq ($(CONFIG_AI_AGENT_WEIXIN),y)
CSRCS += src/channels/weixin_channel.c
endif
ifeq ($(CONFIG_AI_AGENT_MQTT),y)
CSRCS += src/channels/mqtt_channel.c
endif
CSRCS += src/channels/ws_server.c
CSRCS += src/voice/voice_channel.c
CSRCS += src/voice/voice_tts.c
CSRCS += src/voice/voice_asr.c
CSRCS += src/voice/volc_tts.c
CSRCS += src/voice/volc_tts_ws.c
CSRCS += src/voice/volc_asr.c
CSRCS += src/voice/audio_capture.c
CSRCS += src/voice/audio_playback.c
CSRCS += src/infra/config_store.c
CSRCS += src/infra/cron_service.c
CSRCS += src/infra/heartbeat.c
CSRCS += src/infra/network_manager.c
CSRCS += src/infra/http_proxy.c
CSRCS += src/infra/vela_tls.c
ifeq ($(CONFIG_AI_AGENT_NODE),y)
CSRCS += src/node/node_client.c
CSRCS += src/node/node_manager.c
endif
CSRCS += src/stubs.c
CSRCS += src/ui/qrcode_display.c
ifeq ($(CONFIG_AI_AGENT_LVGL_UI),y)
CSRCS += src/lvgl_ui/lvgl_ui_channel.c
endif
ifeq ($(CONFIG_AI_AGENT_TEST),y)
CSRCS += tests/integs/test_vision_integ.c
endif
MAINSRC = src/agent_main.c
CFLAGS += -DAGENT_BUILD_TIMESTAMP='"$(shell date "+%Y-%m-%d %H:%M:%S")"'
PROGNAME = $(CONFIG_EXAMPLES_AI_AGENT_VELA_PROGNAME)
PRIORITY = $(CONFIG_EXAMPLES_AI_AGENT_VELA_PRIORITY)
STACKSIZE = $(CONFIG_EXAMPLES_AI_AGENT_VELA_STACKSIZE)
include $(APPDIR)/Application.mk