[bitbake-devel] [PATCH] runqueue: add mc to pending hash index

kai.kang at windriver.com kai.kang at windriver.com
Thu Nov 28 09:27:18 UTC 2019


From: Kai Kang <kai.kang at windriver.com>

When build multiconfig target by following steps in section "Enabling
Multiple Configuration Build Dependencies" in yocto dev-manual which
adds dependency between multiconfig targets:

do_image[mcdepends] = "mc:x86:arm:core-image-minimal:do_rootfs"

it shows a lot of warnings, such as:

| WARNING: Deferring
|   mc:x86:virtual:native:/path/to/meta/recipes-support/nss/nss_3.45.bb:do_populate_sysroot
|   after
|   mc:arm:virtual:native:/path/to/meta/recipes-support/nss/nss_3.45.bb:do_populate_sysroot

In function pending_hash_index it only checks PN, taskname and hash. But
they are same for multiconfig native and allarch packages. Add multiconfig
to pending hash index too to make the index unique.

Ref:
https://www.yoctoproject.org/docs/latest/dev-manual/dev-manual.html#dev-enabling-multiple-configuration-build-dependencies

Signed-off-by: Kai Kang <kai.kang at windriver.com>
---
 bitbake/lib/bb/runqueue.py | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/bitbake/lib/bb/runqueue.py b/bitbake/lib/bb/runqueue.py
index 485d9341f5..059eb9e283 100644
--- a/bitbake/lib/bb/runqueue.py
+++ b/bitbake/lib/bb/runqueue.py
@@ -69,12 +69,12 @@ def build_tid(mc, fn, taskname):
     return fn + ":" + taskname
 
 # Index used to pair up potentially matching multiconfig tasks
-# We match on PN, taskname and hash being equal
+# We match on mc, PN, taskname and hash being equal
 def pending_hash_index(tid, rqdata):
     (mc, fn, taskname, taskfn) = split_tid_mcfn(tid)
     pn = rqdata.dataCaches[mc].pkg_fn[taskfn]
     h = rqdata.runtaskentries[tid].unihash
-    return pn + ":" + "taskname" + h
+    return mc + ":" + pn + ":" + "taskname" + h
 
 class RunQueueStats:
     """
-- 
2.17.1



More information about the bitbake-devel mailing list