diff options
author | 2021-04-12 21:29:13 -0300 | |
---|---|---|
committer | 2021-04-13 17:29:25 -0300 | |
commit | a1952664603583e82025a00f5f0335d899c5b1c9 (patch) | |
tree | 7ddef18b1a88e232c89b904ca5433f452250fc33 | |
parent | 7e8bafd29eb36a30f39c783a096768f0ba8cca08 (diff) | |
download | meta-freescale-a1952664603583e82025a00f5f0335d899c5b1c9.tar.gz meta-freescale-a1952664603583e82025a00f5f0335d899c5b1c9.tar.bz2 meta-freescale-a1952664603583e82025a00f5f0335d899c5b1c9.zip |
libubootenv.inc: Allow build after bootloader rework
The libubootenv requires the UBOOT_MACHINE or UBOOT_CONFIG to allow
libubootenv to build. This is caused by the commit below:
,----[ libubootenv change ]
| commit 10aa1291979fb90bed1beb49be4d406ed0e1e4d5 ┃
| ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┻━━━━━━━━━━━━━━━━━━━━━━━━━━
| Author: Ming Liu <liu.ming50@gmail.com>
| Date: Tue Aug 25 20:08:01 2020 +0200
|
| libubootenv: inherit uboot-config
|
| This mainly aims to involve in the sanity check of UBOOT_CONFIG and
| UBOOT_MACHINE, it will throw a error message at recipe parsing time if
| neither of them is set, and libubootenv would be skipped.
|
| Signed-off-by: Ming Liu <liu.ming50@gmail.com>
| Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
`----
This an error on libubootenv recipe, in my point of view, either way we
can override it based on the selected bootloader thus fixing the build
failure.
Fixes: 776932e1 ("Rework the u-boot-fslc and u-boot-imx settings logic")
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
-rw-r--r-- | recipes-bsp/u-boot/libubootenv_%.bbappend | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/recipes-bsp/u-boot/libubootenv_%.bbappend b/recipes-bsp/u-boot/libubootenv_%.bbappend new file mode 100644 index 00000000..2633c344 --- /dev/null +++ b/recipes-bsp/u-boot/libubootenv_%.bbappend @@ -0,0 +1,43 @@ +# Fixup for the libubootenv which rely on uboot-config class for no good reason. +# +# This is not intended to be permanent but we need to get the integration +# working and there is no good solution for now so we are adding this in a +# non-intrusive way and using the `IMX_DEFAULT_BOOTLOADER` as a guard to do any +# code execution. + +def fixup_uboot_config_dependency(d): + ubootmachine = d.getVar("UBOOT_MACHINE") + ubootconfig = (d.getVar('UBOOT_CONFIG') or "").split() + imx_default_bootloader = d.get('IMX_DEFAULT_BOOTLOADER') + + if not ubootmachine and not ubootconfig and imx_default_bootloader: + # FIXME: We need to provide the UBOOT_MACHINE or UBOOT_CONFIG to allow libubootenv to + # build. This is caused by the commit below: + # + # ,----[ libubootenv change ] + # | commit 10aa1291979fb90bed1beb49be4d406ed0e1e4d5 ┃ + # | ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┻━━━━━━━━━━━━━━━━━━━━━━━━━━ + # | Author: Ming Liu <liu.ming50@gmail.com> + # | Date: Tue Aug 25 20:08:01 2020 +0200 + # | + # | libubootenv: inherit uboot-config + # | + # | This mainly aims to involve in the sanity check of UBOOT_CONFIG and + # | UBOOT_MACHINE, it will throw a error message at recipe parsing time if + # | neither of them is set, and libubootenv would be skipped. + # | + # | Signed-off-by: Ming Liu <liu.ming50@gmail.com> + # | Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> + # `---- + ubootmachine = d.getVar("UBOOT_MACHINE_pn-%s" % imx_default_bootloader) + ubootconfig = (d.getVar("UBOOT_CONFIG_pn-%s" % imx_default_bootloader) or "").split() + + d.setVar("UBOOT_CONFIG", ubootconfig) + d.setVar("UBOOT_MACHINE", ubootmachine) + +python fixup_uboot_config_dependency_handler() { + fixup_uboot_config_dependency(d) +} + +fixup_uboot_config_dependency_handler[eventmask] = "bb.event.RecipePreFinalise" +addhandler fixup_uboot_config_dependency_handler |