aboutsummaryrefslogtreecommitdiffstats
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:14 +0100
commit7b7d7b02faedb603d81144a134e80027e4019ab0 (patch)
tree97f153d9424b795c7c180581da115fcac56a07a9
parent1026b2d29340945608111d19ac5c31f0fcf91851 (diff)
downloadbitbake-contrib-7b7d7b02faedb603d81144a134e80027e4019ab0.tar.gz
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. Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--lib/bb/cooker.py4
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/bb/cooker.py b/lib/bb/cooker.py
index 7ed0b802c..4b5ef07ea 100644
--- a/lib/bb/cooker.py
+++ b/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