fix(compiler): board_fqbn llega a _compile_in_dir — el NameError tumbaba todo compile
El bloque de velxio_board.cmake usaba board_fqbn, que vivia en compile() y no en la firma de _compile_in_dir: parametro nuevo con default None, propagado en los dos call sites, y guard para el camino sin fqbn (tests directos).
This commit is contained in:
parent
e648f416ae
commit
50fa9275b9
|
|
@ -2735,7 +2735,7 @@ class ESPIDFCompiler:
|
||||||
progress_callback, normalized_opts, spiffs_files,
|
progress_callback, normalized_opts, spiffs_files,
|
||||||
allowed_libraries=allowed, libraries_dir=scope_dir,
|
allowed_libraries=allowed, libraries_dir=scope_dir,
|
||||||
arduino_mode=arduino_mode, use_idf5=use_idf5,
|
arduino_mode=arduino_mode, use_idf5=use_idf5,
|
||||||
pure_idf=pure_idf,
|
pure_idf=pure_idf, board_fqbn=board_fqbn,
|
||||||
)
|
)
|
||||||
with tempfile.TemporaryDirectory(prefix='espidf_') as temp_dir:
|
with tempfile.TemporaryDirectory(prefix='espidf_') as temp_dir:
|
||||||
project_dir = Path(temp_dir) / 'project'
|
project_dir = Path(temp_dir) / 'project'
|
||||||
|
|
@ -2746,7 +2746,7 @@ class ESPIDFCompiler:
|
||||||
progress_callback, normalized_opts, spiffs_files,
|
progress_callback, normalized_opts, spiffs_files,
|
||||||
allowed_libraries=allowed, libraries_dir=scope_dir,
|
allowed_libraries=allowed, libraries_dir=scope_dir,
|
||||||
arduino_mode=arduino_mode, use_idf5=use_idf5,
|
arduino_mode=arduino_mode, use_idf5=use_idf5,
|
||||||
pure_idf=pure_idf,
|
pure_idf=pure_idf, board_fqbn=board_fqbn,
|
||||||
)
|
)
|
||||||
finally:
|
finally:
|
||||||
if scope_dir is not None:
|
if scope_dir is not None:
|
||||||
|
|
@ -2809,6 +2809,7 @@ class ESPIDFCompiler:
|
||||||
arduino_mode: Optional[bool] = None,
|
arduino_mode: Optional[bool] = None,
|
||||||
use_idf5: Optional[bool] = None,
|
use_idf5: Optional[bool] = None,
|
||||||
pure_idf: bool = False,
|
pure_idf: bool = False,
|
||||||
|
board_fqbn: str | None = None,
|
||||||
) -> dict:
|
) -> dict:
|
||||||
"""Inner compile body: writes sketch + libs into `project_dir`,
|
"""Inner compile body: writes sketch + libs into `project_dir`,
|
||||||
runs cmake + ninja, merges binaries. Caller is responsible for
|
runs cmake + ninja, merges binaries. Caller is responsible for
|
||||||
|
|
@ -2862,7 +2863,7 @@ class ESPIDFCompiler:
|
||||||
# file instead of an env var makes it a configure dependency: CMake
|
# file instead of an env var makes it a configure dependency: CMake
|
||||||
# re-runs when it changes, env vars it silently ignores.
|
# re-runs when it changes, env vars it silently ignores.
|
||||||
board_cmake_lines = ['# generated by espidf_compiler — do not edit']
|
board_cmake_lines = ['# generated by espidf_compiler — do not edit']
|
||||||
if arduino_mode and not pure_idf:
|
if arduino_mode and not pure_idf and board_fqbn:
|
||||||
flags = self._arduino_board_flags(board_fqbn)
|
flags = self._arduino_board_flags(board_fqbn)
|
||||||
if flags['board']:
|
if flags['board']:
|
||||||
macro = re.sub(r'[^A-Z0-9_]', '_', str(flags['board']).upper())
|
macro = re.sub(r'[^A-Z0-9_]', '_', str(flags['board']).upper())
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue