[yocto] [meta-swupd][PATCH] swupdimage.bbclass: ensure that do_rootfs gets executed

Lock, Joshua G joshua.g.lock at intel.com
Mon Sep 12 04:57:32 PDT 2016


On Mon, 2016-09-12 at 09:09 +0200, Patrick Ohly wrote:
> OE-core commit 6d969bacc718e changed do_rootfs so that it creates
> IMGDEPLOYDIR. That change broke the creation of additional swupd
> images, because setting do_rootfs to empty caused the entire task to
> be skipped, including the evaluation of the 'cleandirs' task
> attribute.
> 
> It remains to be seen whether that's really the desired behavior (see
> https://bugzilla.yoctoproject.org/show_bug.cgi?id=10256), but as it
> is
> what it is right now, we need to avoid the situation by overwriting
> do_rootfs with non-empty code that doesn't do anything. That way, the
> directory gets created.

Pushed to master (and presstate). Thanks!

Joshua

> 
> Signed-off-by: Patrick Ohly <patrick.ohly at intel.com>
> ---
>  classes/swupdimage.bbclass | 6 +++++-
>  1 file changed, 5 insertions(+), 1 deletion(-)
> 
> diff --git a/classes/swupdimage.bbclass b/classes/swupdimage.bbclass
> index 20bd4c8..56aa60a 100644
> --- a/classes/swupdimage.bbclass
> +++ b/classes/swupdimage.bbclass
> @@ -48,7 +48,11 @@ python swupdimage_virtclass_handler () {
>      e.data.setVar("IMAGE_BUNDLE_NAME", imageext)
>      # We override the default methods such that they only copy from
> the mega rootfs.
>      e.data.setVar("do_image", "    import
> swupd.rootfs\n    swupd.rootfs.create_rootfs(d)\n")
> -    e.data.setVar("do_rootfs", "")
> +    # do_rootfs must not be empty, because empty tasks get skipped
> +    # and we don't want that for do_rootfs because its cleandirs
> +    # variable triggers the creation of the IMGDEPLOYDIR that we
> +    # are going to write into.
> +    e.data.setVar("do_rootfs", "    pass")
>      # Depend on complete bundle generation in the base image.
>      dep = ' %s:do_stage_swupd_inputs' % pn_base
>      e.data.appendVarFlag('do_image', 'depends', dep)
---------------------------------------------------------------------
Intel Corporation (UK) Limited
Registered No. 1134945 (England)
Registered Office: Pipers Way, Swindon SN3 1RJ
VAT No: 860 2173 47

This e-mail and any attachments may contain confidential material for
the sole use of the intended recipient(s). Any review or distribution
by others is strictly prohibited. If you are not the intended
recipient, please contact the sender and delete all copies.


More information about the yocto mailing list