From 819ee3eff3018633009aaf8e26cfaad774c4d3d3 Mon Sep 17 00:00:00 2001 From: Joshua Watt Date: Tue, 3 Sep 2024 09:42:01 -0600 Subject: lib/spdx30_tasks: Report all missing providers Instead of failing on the first missing provider, collect all of them and report them all as it is more convenient for end users trying to fix problems (From OE-Core rev: fc96244f424c8b4fbace39dc4af8a4e97f1a104e) Signed-off-by: Joshua Watt Signed-off-by: Richard Purdie --- meta/lib/oe/spdx30_tasks.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'meta/lib') diff --git a/meta/lib/oe/spdx30_tasks.py b/meta/lib/oe/spdx30_tasks.py index 4864d6252a..4da52da654 100644 --- a/meta/lib/oe/spdx30_tasks.py +++ b/meta/lib/oe/spdx30_tasks.py @@ -953,10 +953,12 @@ def collect_build_package_inputs(d, objset, build, packages): providers = oe.spdx_common.collect_package_providers(d) build_deps = set() + missing_providers = set() for name in sorted(packages.keys()): if name not in providers: - bb.fatal("Unable to find SPDX provider for '%s'" % name) + missing_providers.add(name) + continue pkg_name, pkg_hashfn = providers[name] @@ -970,6 +972,11 @@ def collect_build_package_inputs(d, objset, build, packages): ) build_deps.add(pkg_spdx._id) + if missing_providers: + bb.fatal( + f"Unable to find SPDX provider(s) for: {', '.join(sorted(missing_providers))}" + ) + if build_deps: objset.new_scoped_relationship( [build], -- cgit v1.2.3-54-g00ecf