[OE-core] [PATCH v2] wic/isoimage-isohybrid: check for grub-mkimage

Ed Bartosh ed.bartosh at linux.intel.com
Wed Jan 4 20:12:55 UTC 2017


On Wed, Jan 04, 2017 at 09:04:43PM +0200, Ioan-Adrian Ratiu wrote:
> The isohybrid plugin uses grub-mkimage but doesn't make sure it gets built.
> Add a check to avoid the following error:
> 
> Error: A native program grub-mkimage required to build the image was not found (see details above).
> 
> Wic failed to find a recipe to build native grub-mkimage. Please file a bug against wic.
> 
> Signed-off-by: Ioan-Adrian Ratiu <adrian.ratiu at ni.com>
> ---
>  scripts/lib/wic/plugins/source/isoimage-isohybrid.py | 5 +++++
>  1 file changed, 5 insertions(+)
> 
> diff --git a/scripts/lib/wic/plugins/source/isoimage-isohybrid.py b/scripts/lib/wic/plugins/source/isoimage-isohybrid.py
> index 849fd8bea3..d616316d61 100644
> --- a/scripts/lib/wic/plugins/source/isoimage-isohybrid.py
> +++ b/scripts/lib/wic/plugins/source/isoimage-isohybrid.py
> @@ -242,6 +242,11 @@ class IsoImagePlugin(SourcePlugin):
>              msger.info("Building mtools-native...\n")
>              exec_cmd("bitbake mtools-native")
>  
> +        # Make sure grub-mkimage is available in native sysroot
> +        if not os.path.isfile("%s/usr/bin/grub-mkimage" % native_sysroot):
> +            msger.info("Building grub-native...\n")
> +            exec_cmd("bitbake grub-native")
> +
>      @classmethod
>      def do_configure_partition(cls, part, source_params, creator, cr_workdir,
>                                 oe_builddir, bootimg_dir, kernel_dir,

Unfortunately this approach will not work if wic is run from bitbake.

I'd suggest to simply add grub-native to NATIVE_RECIPES dictionary in
scripts/lib/wic/utils/oe/misc.py
It will make error message more informative and useful.

--
Regards,
Ed



More information about the Openembedded-core mailing list