On Sat, Jul 18, 2026 at 1:16 AM Pascal Eberhard via B4 Relay < [email protected]> wrote:
> From: Pascal Eberhard <[email protected]> > > The runtime dependsOn relationship entries between software_Package > is missing from the generated SPDX files. > > Remove the subpkgdata lookup as the final pkg_name is already resolved > by collect_package_providers(). > > Rename variables to avoid shadowing the 'dep' variable and to make it > explicit which package/pkg name is being used. > LGTM, Thanks, Reviewed-by: Joshua Watt <[email protected]> > > Signed-off-by: Pascal Eberhard <[email protected]> > --- > meta/lib/oe/spdx30_tasks.py | 22 ++++++++++++---------- > 1 file changed, 12 insertions(+), 10 deletions(-) > > diff --git a/meta/lib/oe/spdx30_tasks.py b/meta/lib/oe/spdx30_tasks.py > index 79e18db11d..652fe269e2 100644 > --- a/meta/lib/oe/spdx30_tasks.py > +++ b/meta/lib/oe/spdx30_tasks.py > @@ -1141,9 +1141,13 @@ def create_spdx(d): > > def create_package_spdx(d): > deploydir = Path(d.getVar("SPDXRUNTIMEDEPLOY")) > + pkgdatadir = Path(d.getVar('PKGDATA_DIR')) > > direct_deps = oe.spdx_common.collect_direct_deps(d, "do_create_spdx") > > + # providers[package_name] = pkg_name, where: > + # - package_name is the name in the recipe in PACKAGES/RDEPENDS, and > + # - pkg_name is the final name given by the package manager. > providers = oe.spdx_common.collect_package_providers(d, direct_deps) > pkg_arch = d.getVar("SSTATE_PKGARCH") > > @@ -1197,26 +1201,24 @@ def create_package_spdx(d): > if dep not in providers: > continue > > - dep, _ = providers[dep] > + dep_pkg_name, _ = providers[dep] > > - if not oe.packagedata.packaged(dep, localdata): > + if not os.path.exists(pkgdatadir / "runtime-reverse" / > dep_pkg_name): > + bb.debug(1, f"pkg_name {dep_pkg_name}, package {dep} > missing for {package}") > continue > > - dep_pkg_data = oe.packagedata.read_subpkgdata_dict(dep, d) > - dep_pkg = dep_pkg_data["PKG"] > - > - if dep in dep_package_cache: > - dep_spdx_package = dep_package_cache[dep] > + if dep_pkg_name in dep_package_cache: > + dep_spdx_package = dep_package_cache[dep_pkg_name] > else: > - bb.debug(1, "Searching for %s" % dep_pkg) > + bb.debug(1, "Searching for %s" % dep_pkg_name) > dep_spdx_package, _ = oe.sbom30.find_root_obj_in_jsonld( > d, > "packages-staging", > - "package-" + dep_pkg, > + "package-" + dep_pkg_name, > oe.spdx30.software_Package, > > software_primaryPurpose=oe.spdx30.software_SoftwarePurpose.install, > ) > - dep_package_cache[dep] = dep_spdx_package > + dep_package_cache[dep_pkg_name] = dep_spdx_package > > runtime_spdx_deps.add(dep_spdx_package) > seen_deps.add(dep) > > --- > base-commit: 171af3b2915dd076c8d1b205ff75eac1ebd5a586 > change-id: 20260718-fix_spdx_packages_dependson-28d9bb78a55c > > Best regards, > -- > Pascal Eberhard <[email protected]> > > >
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#242106): https://lists.openembedded.org/g/openembedded-core/message/242106 Mute This Topic: https://lists.openembedded.org/mt/120328777/21656 Group Owner: [email protected] Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [[email protected]] -=-=-=-=-=-=-=-=-=-=-=-
