summaryrefslogtreecommitdiffstats
path: root/bitbake/lib/bb/runqueue.py
diff options
context:
space:
mode:
Diffstat (limited to 'bitbake/lib/bb/runqueue.py')
-rw-r--r--bitbake/lib/bb/runqueue.py21
1 files changed, 19 insertions, 2 deletions
diff --git a/bitbake/lib/bb/runqueue.py b/bitbake/lib/bb/runqueue.py
index ba9bebebcf..a43c9983a1 100644
--- a/bitbake/lib/bb/runqueue.py
+++ b/bitbake/lib/bb/runqueue.py
@@ -602,6 +602,19 @@ class RunQueueData:
602 if t in taskData[mc].taskentries: 602 if t in taskData[mc].taskentries:
603 depends.add(t) 603 depends.add(t)
604 604
605 def add_mc_dependencies(mc, tid):
606 mcdeps = taskData[mc].get_mcdepends()
607 for dep in mcdeps:
608 mcdependency = dep.split(':')
609 pn = mcdependency[3]
610 frommc = mcdependency[1]
611 mcdep = mcdependency[2]
612 deptask = mcdependency[4]
613 if mc == frommc:
614 fn = taskData[mcdep].build_targets[pn][0]
615 newdep = '%s:%s' % (fn,deptask)
616 taskData[mc].taskentries[tid].tdepends.append(newdep)
617
605 for mc in taskData: 618 for mc in taskData:
606 for tid in taskData[mc].taskentries: 619 for tid in taskData[mc].taskentries:
607 620
@@ -618,12 +631,16 @@ class RunQueueData:
618 if fn in taskData[mc].failed_fns: 631 if fn in taskData[mc].failed_fns:
619 continue 632 continue
620 633
634 # We add multiconfig dependencies before processing internal task deps (tdepends)
635 if 'mcdepends' in task_deps and taskname in task_deps['mcdepends']:
636 add_mc_dependencies(mc, tid)
637
621 # Resolve task internal dependencies 638 # Resolve task internal dependencies
622 # 639 #
623 # e.g. addtask before X after Y 640 # e.g. addtask before X after Y
624 for t in taskData[mc].taskentries[tid].tdepends: 641 for t in taskData[mc].taskentries[tid].tdepends:
625 (_, depfn, deptaskname, _) = split_tid_mcfn(t) 642 (depmc, depfn, deptaskname, _) = split_tid_mcfn(t)
626 depends.add(build_tid(mc, depfn, deptaskname)) 643 depends.add(build_tid(depmc, depfn, deptaskname))
627 644
628 # Resolve 'deptask' dependencies 645 # Resolve 'deptask' dependencies
629 # 646 #