From d9175f3748fbf92be4b8858070fd19bd92fa9593 Mon Sep 17 00:00:00 2001 From: Alejandro Enedino Hernandez Samaniego Date: Tue, 20 Nov 2018 10:22:51 -0800 Subject: bitbake: cooker: Fix multiconfig dependencies When multiconfig is enabled the cooker adds providers for all the targets to be built on all the multiconfig variables that were set, regardless if there is a dependency to it or not. This causes an issue when a certain target is incompatible with one or more of the multiconfigs, e.g. the target is not in COMPATIBLE_MACHINE for one of the MACHINEs being built, causing the cooker to error out since no providers can be found for that certain target on that multiconfig. This patch modifies the behavior to only look for PROVIDERS for a target on the multiconfig that was selected to be built, PROVIDERS are then looked for in other multiconfigs only when there is a defined dependency to them. [YOCTO #12985] (Bitbake rev: f2106a3a767542359fdde238abcf5fe35ab3a144) Signed-off-by: Alejandro Enedino Hernandez Samaniego Signed-off-by: Richard Purdie --- bitbake/lib/bb/cooker.py | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) (limited to 'bitbake') diff --git a/bitbake/lib/bb/cooker.py b/bitbake/lib/bb/cooker.py index 71a0eba8e4..16681ba244 100644 --- a/bitbake/lib/bb/cooker.py +++ b/bitbake/lib/bb/cooker.py @@ -609,14 +609,7 @@ class BBCooker: k2 = k.split(":do_") k = k2[0] ktask = k2[1] - if mc: - # Provider might be from another mc - for mcavailable in self.multiconfigs: - # The first element is empty - if mcavailable: - taskdata[mcavailable].add_provider(localdata[mcavailable], self.recipecaches[mcavailable], k) - else: - taskdata[mc].add_provider(localdata[mc], self.recipecaches[mc], k) + taskdata[mc].add_provider(localdata[mc], self.recipecaches[mc], k) current += 1 if not ktask.startswith("do_"): ktask = "do_%s" % ktask -- cgit v1.2.3-54-g00ecf