[OE-core] [PATCH] image_types_wic.bbclass: Ensure '-c image_wic' works

Richard Purdie richard.purdie at linuxfoundation.org
Tue Dec 19 18:07:50 UTC 2017


On Tue, 2017-12-19 at 15:38 -0200, Otavio Salvador wrote:
> On Tue, Dec 19, 2017 at 3:22 PM, Richard Purdie
> <richard.purdie at linuxfoundation.org> wrote:
> > 
> > On Tue, 2017-12-19 at 15:17 -0200, Otavio Salvador wrote:
> > > 
> > > The 'wic' image may use files which has been deployed (e.g in
> > > do_deploy) for some partitions that may need to be copied in a
> > > specific partition or filesystem (e.g a bootloader).
> > > 
> > > When using 'bitbake <image> -c image_wic', from a clean build,
> > > the
> > > contents of do_deploy must also be available so we need to ensure
> > > all
> > > do_build of the image dependencies has been complete.
> > > 
> > > Reported-by: Fabio Berton <fabio.berton at ossystems.com.br>
> > > Signed-off-by: Otavio Salvador <otavio at ossystems.com.br>
> > > ---
> > > 
> > >  meta/classes/image_types_wic.bbclass | 3 +++
> > >  1 file changed, 3 insertions(+)
> > > 
> > > diff --git a/meta/classes/image_types_wic.bbclass
> > > b/meta/classes/image_types_wic.bbclass
> > > index 222ae00433..4d7305a3a3 100644
> > > --- a/meta/classes/image_types_wic.bbclass
> > > +++ b/meta/classes/image_types_wic.bbclass
> > > @@ -41,6 +41,9 @@ WKS_FILE_CHECKSUM = "${@'${WKS_FULL_PATH}:%s' %
> > > os.path.exists('${WKS_FULL_PATH}
> > >  do_image_wic[file-checksums] += "${WKS_FILE_CHECKSUM}"
> > >  do_image_wic[depends] += "${@' '.join('%s-
> > > native:do_populate_sysroot' % r for r in ('parted', 'gptfdisk',
> > > 'dosfstools', 'mtools'))}"
> > > 
> > > +# We ensure all artfacts are deployed (e.g virtual/bootloader)
> > > +do_image_wic[recrdeptask] += "do_build"
> > Shouldn't that be do_deploy instead of do_build?
> Not all recipes has do_deploy. Wouldn't it cause problems?

No, its designed to handle that:

$ grep recrdep * -R | grep deploy
meta/classes/populate_sdk_ext.bbclass:do_sdk_depends[recrdeptask] += "do_populate_lic do_package_qa do_populate_sysroot do_deploy ${SDK_RECRDEP_TASKS}"
meta/classes/archiver.bbclass:do_deploy_all_archives[recrdeptask] = "do_deploy_archives"
meta/classes/populate_sdk_ext.bbclass.orig:do_sdk_depends[recrdeptask] += "do_populate_lic do_package_qa do_populate_sysroot do_deploy ${SDK_RECRDEP_TASKS}"
meta/classes/base.bbclass:do_build[recrdeptask] += "do_deploy"

Cheers,

Richard



More information about the Openembedded-core mailing list