frozen manifests cannot resolve $(MCU_CORE)
Currently only impacts alif port
Likely needs an update of vendored tools/manifestfile.py
13:57:53 | ℹ️ port-board: alif 13:57:53 | ❌ freeze error executing "D:\mypython\micropython-stubber\repos\micropython\ports\alif\boards\manifest.py": Error in manifest file: D:\mypython\micropython-stubber\repos\micropython\ports\alif\boards\manifest.py: [WinError 2] The system cannot find the file specified: 'D:\mypython\micropython-stubber\repos\micropython\ports\alif\modules\$(MCU_CORE)' 13:57:53 | ❌ Error processing manifest D:\mypython\micropython-stubber\repos\micropython\ports\alif\boards\manifest.py : Error in manifest file: D:\mypython\micropython-stubber\repos\micropython\ports\alif\boards\manifest.py: [WinError 2] The system cannot find the file specified: 'D:\mypython\micropython-stubber\repos\micropython\ports\alif\modules\$(MCU_CORE)'
referenced in
alif manifest : freeze("$(PORT_DIR)/modules/$(MCU_CORE)")
located in repo as :
Provided in CI, but not matching the folder names
make ${MAKEOPTS} -C ports/alif BOARD=OPENMV_AE3 MCU_CORE=M55_HP submodules
make ${MAKEOPTS} -C ports/alif BOARD=OPENMV_AE3 MCU_CORE=M55_HE submodules
make ${MAKEOPTS} -C ports/alif BOARD=OPENMV_AE3 MCU_CORE=M55_DUAL
make ${MAKEOPTS} -C ports/alif BOARD=ALIF_ENSEMBLE MCU_CORE=M55_DUAL
MCU_Core.split("_").lower() is made available to the MANIFEST
# File containing description of content to be frozen into firmware.
FROZEN_MANIFEST ?= boards/manifest.py
MICROPY_MANIFEST_MCU_CORE := $(shell echo $(MCU_CORE) | awk -F'_' '{print tolower($$2)}')
https://github.com/micropython/micropython/blob/dea3035b88a82b48f98b9951f3d2ad6500e4c9a9/ports/alif/mpconfigport.mk#L11-L13
and
# Find all MICROPY_MANIFEST_* variables and turn them into command line arguments.
MANIFEST_VARIABLES = $(foreach var,$(filter MICROPY_MANIFEST_%, $(.VARIABLES)),-v "$(subst MICROPY_MANIFEST_,,$(var))=$($(var))")
https://github.com/micropython/micropython/blob/dea3035b88a82b48f98b9951f3d2ad6500e4c9a9/py/mkrules.mk#L221-L222