[OE-core] [PATCH] kernel-uimage: DEPENDS on u-boot-mkimage-native conditionally

Nathan Rossi nathan at nathanrossi.com
Sun Jul 23 11:24:13 UTC 2017


On 23 July 2017 at 20:11,  <liu.ming50 at gmail.com> wrote:
> From: Ming Liu <peter.x.liu at external.atlascopco.com>
>
> do_uboot_mkimage would not run if KEEPUIMAGE not equal to 'yes', so it
> does not have to DEPENDS on u-boot-mkimage-native in that case.

This change breaks KEEPUIMAGE == yes. Where the kernel built uImage
make target needs u-boot-mkimage-native. This is a common use case.

|   UIMAGE  arch/arm/boot/uImage
| "mkimage" command not found - U-Boot images will not be built
| arch/arm/boot/Makefile:79: recipe for target 'arch/arm/boot/uImage' failed
| make[3]: *** [arch/arm/boot/uImage] Error 1
| arch/arm/Makefile:329: recipe for target 'uImage' failed
| make[2]: *** [uImage] Error 2

Regards,
Nathan

>
> Signed-off-by: Ming Liu <peter.x.liu at external.atlascopco.com>
> ---
>  meta/classes/kernel-uimage.bbclass | 8 ++++----
>  1 file changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/meta/classes/kernel-uimage.bbclass b/meta/classes/kernel-uimage.bbclass
> index 7c026ab..94344d9 100644
> --- a/meta/classes/kernel-uimage.bbclass
> +++ b/meta/classes/kernel-uimage.bbclass
> @@ -2,16 +2,16 @@ inherit kernel-uboot
>
>  python __anonymous () {
>      if "uImage" in (d.getVar('KERNEL_IMAGETYPES') or "").split():
> -        depends = d.getVar("DEPENDS")
> -        depends = "%s u-boot-mkimage-native" % depends
> -        d.setVar("DEPENDS", depends)
> -
>          # Override KERNEL_IMAGETYPE_FOR_MAKE variable, which is internal
>          # to kernel.bbclass . We override the variable here, since we need
>          # to build uImage using the kernel build system if and only if
>          # KEEPUIMAGE == yes. Otherwise, we pack compressed vmlinux into
>          # the uImage .
>          if d.getVar("KEEPUIMAGE") != 'yes':
> +            depends = d.getVar("DEPENDS")
> +            depends = "%s u-boot-mkimage-native" % depends
> +            d.setVar("DEPENDS", depends)
> +
>              typeformake = d.getVar("KERNEL_IMAGETYPE_FOR_MAKE") or ""
>              if "uImage" in typeformake.split():
>                  d.setVar('KERNEL_IMAGETYPE_FOR_MAKE', typeformake.replace('uImage', 'vmlinux'))
> --
> 2.7.4
>
> --
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core at lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core



More information about the Openembedded-core mailing list