summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPeter Kjellerstedt <peter.kjellerstedt@axis.com>2021-04-26 09:30:03 +0200
committerRichard Purdie <richard.purdie@linuxfoundation.org>2021-04-27 15:22:40 +0100
commit008f22924921fb46cb38c0c2f8a85f79289bf7bb (patch)
tree3cebfd92709dc6716cbe125147d57438eaed31dd
parent580089c76234f04ac046318fe5f9da65aacab9af (diff)
downloadpoky-008f22924921fb46cb38c0c2f8a85f79289bf7bb.tar.gz
poky-008f22924921fb46cb38c0c2f8a85f79289bf7bb.tar.bz2
poky-008f22924921fb46cb38c0c2f8a85f79289bf7bb.zip
bitbake: cooker: Include all packages a recipe provides in SkippedPackage.rprovides
The provided packages by a skipped recipe are supposed to be listed in SkippedPackage.rprovides, which is used when generating a meaningful error message when a build fails because of a skipped package. Previously this variable only contained the contents of ${RPROVIDES}. However, most recipes don't define RPROVIDES, they define RPROVIDES_<pkg> for each package they provide. Additionally, the recipe provides the packages in PACKAGES without them being included in ${RPROVIDES}. Before this change, having a runtime dependency on a skipped non-recipe package would result in a build error stating that the build failed because the package was skipped, but without providing any reason for why it was skipped. (Bitbake rev: 7b7d7b02faedb603d81144a134e80027e4019ab0) Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--bitbake/lib/bb/cooker.py4
1 files changed, 3 insertions, 1 deletions
diff --git a/bitbake/lib/bb/cooker.py b/bitbake/lib/bb/cooker.py
index 7ed0b802ca..4b5ef07eaa 100644
--- a/bitbake/lib/bb/cooker.py
+++ b/bitbake/lib/bb/cooker.py
@@ -73,7 +73,9 @@ class SkippedPackage:
self.pn = info.pn
self.skipreason = info.skipreason
self.provides = info.provides
- self.rprovides = info.rprovides
+ self.rprovides = info.packages + info.rprovides
+ for package in info.packages:
+ self.rprovides += info.rprovides_pkg[package]
elif reason:
self.skipreason = reason