micropython-stubber icon indicating copy to clipboard operation
micropython-stubber copied to clipboard

frozen manifests cannot resolve $(MCU_CORE)

Open Josverl opened this issue 6 months ago • 1 comments

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)'

Josverl avatar Jun 03 '25 12:06 Josverl

referenced in

alif manifest : freeze("$(PORT_DIR)/modules/$(MCU_CORE)")

located in repo as :

Image

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

function ci_alif_ae3_build {

Josverl avatar Jun 03 '25 14:06 Josverl