summaryrefslogtreecommitdiffstats
path: root/bitbake
diff options
context:
space:
mode:
Diffstat (limited to 'bitbake')
-rw-r--r--bitbake/lib/bb/runqueue.py9
1 files changed, 8 insertions, 1 deletions
diff --git a/bitbake/lib/bb/runqueue.py b/bitbake/lib/bb/runqueue.py
index 79e612e032..a868332509 100644
--- a/bitbake/lib/bb/runqueue.py
+++ b/bitbake/lib/bb/runqueue.py
@@ -696,6 +696,14 @@ class RunQueueData:
696 prov_list[prov].append(fn) 696 prov_list[prov].append(fn)
697 for prov in prov_list: 697 for prov in prov_list:
698 if len(prov_list[prov]) > 1 and prov not in self.multi_provider_whitelist: 698 if len(prov_list[prov]) > 1 and prov not in self.multi_provider_whitelist:
699 seen_pn = []
700 # If two versions of the same PN are being built its fatal, we don't support it.
701 for fn in prov_list[prov]:
702 pn = self.dataCache.pkg_fn[fn]
703 if pn not in seen_pn:
704 seen_pn.append(pn)
705 else:
706 bb.fatal("Multiple versions of %s are due to be built (%s). Only one version of a given PN should be built in any given build. You likely need to set PREFERRED_VERSION_%s to select the correct version or don't depend on multiple versions." % (pn, " ".join(prov_list[prov]), pn))
699 msg = "Multiple .bb files are due to be built which each provide %s (%s)." % (prov, " ".join(prov_list[prov])) 707 msg = "Multiple .bb files are due to be built which each provide %s (%s)." % (prov, " ".join(prov_list[prov]))
700 if self.warn_multi_bb: 708 if self.warn_multi_bb:
701 logger.warn(msg) 709 logger.warn(msg)
@@ -703,7 +711,6 @@ class RunQueueData:
703 msg += "\n This usually means one provides something the other doesn't and should." 711 msg += "\n This usually means one provides something the other doesn't and should."
704 logger.error(msg) 712 logger.error(msg)
705 713
706
707 # Create a whitelist usable by the stamp checks 714 # Create a whitelist usable by the stamp checks
708 stampfnwhitelist = [] 715 stampfnwhitelist = []
709 for entry in self.stampwhitelist.split(): 716 for entry in self.stampwhitelist.split():