aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlejandro Enedino Hernandez Samaniego <alejandro.enedino.hernandez-samaniego@xilinx.com>2018-11-20 10:22:51 -0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2018-11-26 20:16:00 +0000
commit8bd519b04c7d6ee4cf626d5e04110c3759488d28 (patch)
tree35ef426566c587c4224852bb74daa19c8de31ad9
parentb0ad961064ef6ecd77fab3435e5652c4ae284426 (diff)
downloadbitbake-contrib-8bd519b04c7d6ee4cf626d5e04110c3759488d28.tar.gz
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] Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandr@xilinx.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--lib/bb/cooker.py9
1 files changed, 1 insertions, 8 deletions
diff --git a/lib/bb/cooker.py b/lib/bb/cooker.py
index 71a0eba8e..16681ba24 100644
--- a/lib/bb/cooker.py
+++ b/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