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

2017-01-05 Thread Ioan-Adrian Ratiu
Hi

On Wed, 04 Jan 2017, Ed Bartosh  wrote:
> On Wed, Jan 04, 2017 at 10:12:55PM +0200, Ed Bartosh wrote:
>> 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 
>> > ---
>> >  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.
>> 
> The same should probably be done with the rest of native tools called from
> this module. It's better to avoid building them implicitly.

Thank you for the feedback. I agree. I will send another patch.

Ionel

>
> --
> Regards,
> Ed
-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


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

2017-01-04 Thread Ed Bartosh
On Wed, Jan 04, 2017 at 10:12:55PM +0200, Ed Bartosh wrote:
> 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 
> > ---
> >  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.
> 
The same should probably be done with the rest of native tools called from
this module. It's better to avoid building them implicitly.

--
Regards,
Ed
-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


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

2017-01-04 Thread Ed Bartosh
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 
> ---
>  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
-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core