diff --git a/py/mkrules.mk b/py/mkrules.mk index 5050935873..4addac38a6 100644 --- a/py/mkrules.mk +++ b/py/mkrules.mk @@ -206,6 +206,9 @@ MICROPY_MANIFEST_MPY_LIB_DIR = $(MPY_LIB_DIR) MICROPY_MANIFEST_PORT_DIR = $(shell pwd) MICROPY_MANIFEST_BOARD_DIR = $(BOARD_DIR) MICROPY_MANIFEST_MPY_DIR = $(TOP) +# Set variables for BOARD and BOARD_VARIANT by default +MICROPY_MANIFEST_BOARD = $(BOARD) +MICROPY_MANIFEST_BOARD_VARIANT = $(BOARD_VARIANT) # 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))") diff --git a/tools/manifestfile.py b/tools/manifestfile.py index c1fc836585..da4a043eb7 100644 --- a/tools/manifestfile.py +++ b/tools/manifestfile.py @@ -222,6 +222,7 @@ class ManifestFile: "add_library": self.add_library, "package": self.package, "module": self.module, + "resolve": self.resolve, "options": IncludeOptions(**kwargs), } @@ -572,6 +573,12 @@ class ManifestFile: """ self._freeze_internal(path, script, exts=(".mpy",), kind=KIND_FREEZE_MPY, opt=opt) + def resolve(self, name): + if name[0] == "$" and name[1:] in self._path_vars.keys(): + return self._path_vars[name[1:]] + else: + return None + # Generate a temporary file with a line appended to the end that adds __version__. @contextlib.contextmanager