From c9e91be35fe834e76f6b9735d7f21cb25ef89a3b Mon Sep 17 00:00:00 2001 From: "J. Nick Koston" Date: Sun, 23 Aug 2026 18:45:26 -0500 Subject: [PATCH] [web_server_idf] Skip multipart parser sources when OTA upload is disabled (#18534) Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com> Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com> --- esphome/components/web_server_idf/__init__.py | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/esphome/components/web_server_idf/__init__.py b/esphome/components/web_server_idf/__init__.py index adf21ddc49..1f195425f5 100644 --- a/esphome/components/web_server_idf/__init__.py +++ b/esphome/components/web_server_idf/__init__.py @@ -2,6 +2,7 @@ from esphome.components.esp32 import ( add_idf_sdkconfig_option, include_builtin_idf_component, ) +from esphome.config_helpers import filter_source_files_from_defines import esphome.config_validation as cv CODEOWNERS = ["@dentra"] @@ -18,3 +19,10 @@ async def to_code(config): # Re-enable esp-tls (excluded by default to save compile time); # web_server_idf.cpp includes for digest auth include_builtin_idf_component("esp-tls") + + +# multipart.cpp is fully #ifdef'd on USE_WEBSERVER_OTA (set by the +# web_server OTA platform); skip it when OTA uploads are not configured. +FILTER_SOURCE_FILES = filter_source_files_from_defines( + {"multipart.cpp": "USE_WEBSERVER_OTA"} +)