From 71d0913599930aa19b493164d09f9019d1c28fec Mon Sep 17 00:00:00 2001 From: Tom Hochstein Date: Thu, 28 Jul 2022 13:44:36 -0500 Subject: uboot-config.bbclass: Raise error for bad key If an invalid key is used, the class ignores the error, with an indeterminate result. In my case, the problem surfaced in do_deploy: ``` | cp: cannot stat '/.../build/tmp/work/imx6qdlsabresd-fsl-linux-gnueabi/u-boot-imx-mfgtool/2022.04-r0/deploy-u-boot-imx-mfgtool/u-boot.imx': No such file or | directory ``` The root cause of this was that the uboot config key did not match a valid option. With the fix, the error is caught by the class: ``` ERROR: Nothing PROVIDES 'u-boot-imx-mfgtool' u-boot-imx-mfgtool was skipped: The selected UBOOT_CONFIG key ['mfgtool'] has no match in dict_keys(['sd-fslc', 'sd-imx', 'sd-optee-imx', 'sata-imx', 'mfgtool-imx']). ``` (From OE-Core rev: 801a27d73b10017cac3c0caa05d0a2af3502a7ba) Signed-off-by: Tom Hochstein Acked-by: Otavio Salvador Signed-off-by: Luca Ceresoli Signed-off-by: Richard Purdie --- meta/classes/uboot-config.bbclass | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/meta/classes/uboot-config.bbclass b/meta/classes/uboot-config.bbclass index b9ad35821a..e8da8c7452 100644 --- a/meta/classes/uboot-config.bbclass +++ b/meta/classes/uboot-config.bbclass @@ -125,5 +125,6 @@ python () { else: bb.debug(1, "Appending '%s' to UBOOT_BINARIES." % ubootbinary) d.appendVar('UBOOT_BINARIES', ' ' + ubootbinary) - break + return + raise bb.parse.SkipRecipe("The selected UBOOT_CONFIG key %s has no match in %s." % (ubootconfig, ubootconfigflags.keys())) } -- cgit v1.2.3-54-g00ecf