From 7b7d7b02faedb603d81144a134e80027e4019ab0 Mon Sep 17 00:00:00 2001 From: Peter Kjellerstedt Date: Mon, 26 Apr 2021 09:30:03 +0200 Subject: 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_ 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 Signed-off-by: Richard Purdie --- lib/bb/cooker.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) 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 -- cgit 1.2.3-korg