@@ -858,7 +858,8 @@ def combine_spdx(d, rootfs_name, rootfs_deploydir, rootfs_spdxid, packages, spdx
if packages:
for name in sorted(packages.keys()):
if name not in providers:
- bb.fatal("Unable to find SPDX provider for '%s'" % name)
+ bb.note("Unable to find SPDX provider for '%s'" % name)
+ continue
pkg_name, pkg_hashfn = providers[name]
@@ -1251,11 +1251,10 @@ def collect_build_package_inputs(d, objset, build, packages, files_by_hash=None)
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:
- missing_providers.add(name)
+ bb.note(f"Unable to find SPDX provider for '{name}'")
continue
pkg_name, pkg_hashfn = providers[name]
@@ -1274,11 +1273,6 @@ def collect_build_package_inputs(d, objset, build, packages, files_by_hash=None)
for h, f in pkg_objset.by_sha256_hash.items():
files_by_hash.setdefault(h, set()).update(f)
- 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],
When creating images and SDKs, do not error on missing providers. This allows recipes to use the `nospdx` inherit to prevent SPDX from being generated, but not result in an error when assembling the final image. Note that runtime packages generation already ignored missing providers, so this is changing image and SDK generation to match Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> --- meta/classes/create-spdx-2.2.bbclass | 3 ++- meta/lib/oe/spdx30_tasks.py | 8 +------- 2 files changed, 3 insertions(+), 8 deletions(-)