| Message ID | 20260612085822.854156-1-sivakumar.bs@gmail.com |
|---|---|
| State | New |
| Headers | show |
| Series | [v4] qemuboot.bbclass: add missing task dependency on kernel deploy | expand |
diff --git a/meta/classes-recipe/qemuboot.bbclass b/meta/classes-recipe/qemuboot.bbclass index 56106b1958..d1794c7899 100644 --- a/meta/classes-recipe/qemuboot.bbclass +++ b/meta/classes-recipe/qemuboot.bbclass @@ -128,6 +128,7 @@ inherit image-artifact-names # Create qemuboot.conf addtask do_write_qemuboot_conf after do_rootfs before do_image +do_write_qemuboot_conf[depends] += "${@ '' if bb.utils.to_boolean(d.getVar('INITRAMFS_IMAGE_BUNDLE')) else (d.getVar('KERNEL_DEPLOY_DEPEND') or '')}" def qemuboot_vars(d): build_vars = ['MACHINE', 'TUNE_ARCH', 'DEPLOY_DIR_IMAGE',
do_write_qemuboot_conf had no dependency on the kernel deploy task, so if the kernel was rebuilt without invalidating the rootfs sstate, the task was skipped and .qemuboot.conf was left stale while new image artifacts were deployed with a new timestamp suffix. Add do_write_qemuboot_conf[depends] on KERNEL_DEPLOY_DEPEND using a Python inline expression that skips the dependency when INITRAMFS_IMAGE_BUNDLE=1. When the initramfs is bundled into the kernel, linux-yocto:do_deploy depends on the initramfs image completing first, so an unconditional kernel deploy dependency on do_write_qemuboot_conf would create a circular dependency. KERNEL_DEPLOY_DEPEND is defined with ?= in image.bbclass and is already used by do_build[depends] for the same reason. Fixes: https://bugzilla.yoctoproject.org/show_bug.cgi?id=14520 Signed-off-by: Siva Balasubramanian <sivakumar.bs@gmail.com> --- meta/classes-recipe/qemuboot.bbclass | 1 + 1 file changed, 1 insertion(+)