feat(tools): Improved verification of ESP-IDF project

Closes https://github.com/espressif/esp-idf/issues/18675
This commit is contained in:
Marek Fiala
2026-06-24 18:46:39 +08:00
committed by BOT
parent 1be844551a
commit 12ea480988
2 changed files with 35 additions and 1 deletions
+7 -1
View File
@@ -47,10 +47,16 @@ def _is_valid_project_dir(directory: str) -> bool:
if not cmakelists_path.is_file():
return False
# Normalised patterns (whitespace removed) for whitespace-insensitive matching.
# CMake treats whitespace inside include(...) as insignificant, so
# `include( $ENV{...} )` must be accepted alongside `include($ENV{...})`.
normalised_patterns = [''.join(p.split()) for p in CMAKE_PROJECT_LINE]
try:
with open(str(cmakelists_path), encoding='utf-8') as f:
for line in f:
if any(proj_line in line for proj_line in CMAKE_PROJECT_LINE):
line_normalised = ''.join(line.split())
if any(line_normalised.startswith(pattern) for pattern in normalised_patterns):
return True
except Exception:
return False