diff mbox series

[v2] classes: spdx-3.0: add missing vardeps

Message ID 20260822205612.3522119-2-iwanicki92@gmail.com
State New
Headers show
Series [v2] classes: spdx-3.0: add missing vardeps | expand

Commit Message

iwanicki92 Aug. 22, 2026, 8:56 p.m. UTC
Add "${SPDX_IMAGE_SUPPLIER}_name", "${SPDX_IMAGE_SUPPLIER}_type",
"${SPDX_PACKAGE_SUPPLIER}_name", and "${SPDX_PACKAGE_SUPPLIER}_type" to
respective task vardeps to make sure SPDX is regenerated if those
change.

Tested by building minimal image with:

```
SPDX_PACKAGE_SUPPLIER = "SPDX_PACKAGE_SUPPLIER"
SPDX_PACKAGE_SUPPLIER_name = "AAAA"
SPDX_PACKAGE_SUPPLIER_type = "organization"
```

then rebuilding with `SPDX_PACKAGE_SUPPLIER_name = "BBBB"` and checking
if every instance of AAAA was changed to BBBB in resulting image SBOM.
Same with SPDX_IMAGE_SUPPLIER.

Previous patch only added SPDX_PACKAGE_SUPPLIER to
do_create_package_spdx but this resulted in most of supplier names not
being changed.

Signed-off-by: iwanicki92 <iwanicki92@gmail.com>
---
 meta/classes-recipe/create-spdx-image-3.0.bbclass |  4 +++-
 meta/classes/create-spdx-3.0.bbclass              | 13 ++++++++++---
 2 files changed, 13 insertions(+), 4 deletions(-)
diff mbox series

Patch

diff --git a/meta/classes-recipe/create-spdx-image-3.0.bbclass b/meta/classes-recipe/create-spdx-image-3.0.bbclass
index cf79ef5b013a..faf4eef8a9a3 100644
--- a/meta/classes-recipe/create-spdx-image-3.0.bbclass
+++ b/meta/classes-recipe/create-spdx-image-3.0.bbclass
@@ -57,7 +57,9 @@  do_create_image_spdx[dirs] = "${SPDXIMAGEWORK}"
 do_create_image_spdx[file-checksums] += "${SPDX3_DEP_FILES}"
 do_create_image_spdx[vardeps] += "\
     SPDX_IMAGE_PURPOSE \
-    "
+    ${@'${SPDX_IMAGE_SUPPLIER}_name' if d.getVar('SPDX_IMAGE_SUPPLIER') else ''} \
+    ${@'${SPDX_IMAGE_SUPPLIER}_type' if d.getVar('SPDX_IMAGE_SUPPLIER') else ''} \
+"
 
 python do_create_image_spdx_setscene() {
     sstate_setscene(d)
diff --git a/meta/classes/create-spdx-3.0.bbclass b/meta/classes/create-spdx-3.0.bbclass
index 56fd01fd533b..35707fddbbb3 100644
--- a/meta/classes/create-spdx-3.0.bbclass
+++ b/meta/classes/create-spdx-3.0.bbclass
@@ -231,7 +231,11 @@  do_create_spdx[depends] += " \
     ${PATCHDEPENDENCY} \
     ${@create_spdx_source_deps(d)} \
 "
-do_create_spdx[vardeps] += "${SPDX3_VAR_DEPS}"
+do_create_spdx[vardeps] += " \
+    ${SPDX3_VAR_DEPS} \
+    ${@'${SPDX_PACKAGE_SUPPLIER}_name' if d.getVar('SPDX_PACKAGE_SUPPLIER') else ''} \
+    ${@'${SPDX_PACKAGE_SUPPLIER}_type' if d.getVar('SPDX_PACKAGE_SUPPLIER') else ''} \
+"
 
 python do_create_spdx_setscene () {
     sstate_setscene(d)
@@ -253,7 +257,11 @@  do_create_package_spdx[dirs] = "${SPDXRUNTIMEDEPLOY}"
 do_create_package_spdx[cleandirs] = "${SPDXRUNTIMEDEPLOY}"
 do_create_package_spdx[deptask] = "do_create_spdx"
 do_create_package_spdx[rdeptask] = "do_create_spdx"
-do_create_package_spdx[vardeps] += "${SPDX3_VAR_DEPS}"
+do_create_package_spdx[vardeps] += " \
+    ${SPDX3_VAR_DEPS} \
+    ${@'${SPDX_PACKAGE_SUPPLIER}_name' if d.getVar('SPDX_PACKAGE_SUPPLIER') else ''} \
+    ${@'${SPDX_PACKAGE_SUPPLIER}_type' if d.getVar('SPDX_PACKAGE_SUPPLIER') else ''} \
+"
 
 python do_create_package_spdx_setscene () {
     sstate_setscene(d)
@@ -290,4 +298,3 @@  python spdx30_build_started_handler () {
 
 addhandler spdx30_build_started_handler
 spdx30_build_started_handler[eventmask] = "bb.event.BuildStarted"
-