On Wed, Jun 24, 2026 at 10:24 AM Mikko Rapeli <[email protected]> wrote:
>
> Hi,
>
> On Wed, Jun 24, 2026 at 10:05:33AM -0600, Joshua Watt wrote:
> > On Wed, Jun 24, 2026 at 8:31 AM Mikko Rapeli <[email protected]> 
> > wrote:
> > >
> > > Hi,
> > >
> > > On Wed, Jun 24, 2026 at 08:15:22AM -0600, Joshua Watt via 
> > > lists.openembedded.org wrote:
> > > > Adds SPDX deploy tasks to many recipes to record their output when
> > > > consumed in an SBoM
> > > >
> > > > Signed-off-by: Joshua Watt <[email protected]>
> > > > ---
> > > >  meta/classes-recipe/barebox.bbclass             | 1 +
> > > >  meta/classes-recipe/devicetree.bbclass          | 1 +
> > > >  meta/classes-recipe/kernel-fit-image.bbclass    | 1 +
> > > >  meta/classes-recipe/kernel.bbclass              | 1 +
> > > >  meta/recipes-bsp/grub/grub-efi_2.14.bb          | 1 +
> > > >  meta/recipes-bsp/opensbi/opensbi_1.8.1.bb       | 1 +
> > > >  meta/recipes-bsp/u-boot/u-boot.inc              | 1 +
> > > >  meta/recipes-core/systemd/systemd-boot_259.5.bb | 2 +-
> > > >  8 files changed, 8 insertions(+), 1 deletion(-)
> > >
> > > Why not doing this in deploy.bbclass for all users of the class?
> >
> > We probably could do that; I guess I'd like some feedback if anyone
> > else thinks that's a good idea or not. I initially did it this way
> > just to minimize disruption
>
> As an example, meta-arm qemuarm64-secureboot machine builds u-boot with tf-a 
> and optee
> which I think are all linked to a single u-boot binary. Both tf-a and optee 
> binaries are
> captured via deploy directory, and u-boot exports the flash binary via deploy
> directory as well. None of these are visible in the rootfs images if the 
> userspace
> optee-client, optee-examples, optee-test, TEE applications like optee-ftpm or 
> tf-a tests are not
> installed.
>
> Are all their SPDX and license data correctly captured with current approach 
> via u-boot?

That is the intention. As long as the do_deploy of u-boot has a
dependency on do_deploy of the optee-ftpm and tf-a (either directly,
or transitively through prior tasks in u-boot), it should get
captured.

>
> If yes, then things are better, but there are still a lot of external BSP etc
> layer recipes which use only deploy.bbclass to export their blobs which get 
> flashed
> to target. Covering those as well via use of deploy.bbclass would be better, 
> IMO.

Right. Even if it's not done in deploy.bbclass, adding the
`SPDX_DEPLOY_TASKS += "do_deploy"` should be all that is needed,
making it easy if not automatic.

>
> Cheers,
>
> -Mikko
>
> > >
> > > Cheers
> > >
> > > -Mikko
> > >
> > > > diff --git a/meta/classes-recipe/barebox.bbclass 
> > > > b/meta/classes-recipe/barebox.bbclass
> > > > index 2411fb5caa..60437c1ad1 100644
> > > > --- a/meta/classes-recipe/barebox.bbclass
> > > > +++ b/meta/classes-recipe/barebox.bbclass
> > > > @@ -158,5 +158,6 @@ barebox_do_deploy () {
> > > >          fi
> > > >  }
> > > >  addtask deploy after do_compile
> > > > +SPDX_DEPLOY_TASKS += "do_deploy"
> > > >
> > > >  EXPORT_FUNCTIONS do_configure do_compile do_install do_deploy
> > > > diff --git a/meta/classes-recipe/devicetree.bbclass 
> > > > b/meta/classes-recipe/devicetree.bbclass
> > > > index ce9d008aac..35c2499bdb 100644
> > > > --- a/meta/classes-recipe/devicetree.bbclass
> > > > +++ b/meta/classes-recipe/devicetree.bbclass
> > > > @@ -164,6 +164,7 @@ devicetree_do_deploy() {
> > > >      done
> > > >  }
> > > >  addtask deploy before do_build after do_install
> > > > +SPDX_DEPLOY_TASKS += "do_deploy"
> > > >
> > > >  EXPORT_FUNCTIONS do_compile do_install do_deploy
> > > >
> > > > diff --git a/meta/classes-recipe/kernel-fit-image.bbclass 
> > > > b/meta/classes-recipe/kernel-fit-image.bbclass
> > > > index ae8f3c6688..5115482eff 100644
> > > > --- a/meta/classes-recipe/kernel-fit-image.bbclass
> > > > +++ b/meta/classes-recipe/kernel-fit-image.bbclass
> > > > @@ -241,3 +241,4 @@ do_deploy() {
> > > >      fi
> > > >  }
> > > >  addtask deploy after do_compile before do_build
> > > > +SPDX_DEPLOY_TASKS += "do_deploy"
> > > > diff --git a/meta/classes-recipe/kernel.bbclass 
> > > > b/meta/classes-recipe/kernel.bbclass
> > > > index 50cef17f69..8d0cb91688 100644
> > > > --- a/meta/classes-recipe/kernel.bbclass
> > > > +++ b/meta/classes-recipe/kernel.bbclass
> > > > @@ -842,6 +842,7 @@ kernel_do_deploy() {
> > > >  do_deploy[prefuncs] += "read_subpackage_metadata"
> > > >
> > > >  addtask deploy after do_install do_populate_sysroot do_packagedata
> > > > +SPDX_DEPLOY_TASKS += "do_deploy"
> > > >
> > > >  EXPORT_FUNCTIONS do_deploy
> > > >
> > > > diff --git a/meta/recipes-bsp/grub/grub-efi_2.14.bb 
> > > > b/meta/recipes-bsp/grub/grub-efi_2.14.bb
> > > > index 6354b43989..e535d99710 100644
> > > > --- a/meta/recipes-bsp/grub/grub-efi_2.14.bb
> > > > +++ b/meta/recipes-bsp/grub/grub-efi_2.14.bb
> > > > @@ -97,6 +97,7 @@ do_deploy() {
> > > >  }
> > > >
> > > >  addtask deploy after do_install before do_build
> > > > +SPDX_DEPLOY_TASKS += "do_deploy"
> > > >
> > > >  FILES:${PN} = "${libdir}/grub/${GRUB_TARGET}-efi \
> > > >                 ${datadir}/grub \
> > > > diff --git a/meta/recipes-bsp/opensbi/opensbi_1.8.1.bb 
> > > > b/meta/recipes-bsp/opensbi/opensbi_1.8.1.bb
> > > > index 0a9652c283..93646a97df 100644
> > > > --- a/meta/recipes-bsp/opensbi/opensbi_1.8.1.bb
> > > > +++ b/meta/recipes-bsp/opensbi/opensbi_1.8.1.bb
> > > > @@ -45,6 +45,7 @@ do_deploy () {
> > > >  }
> > > >
> > > >  addtask deploy before do_build after do_install
> > > > +SPDX_DEPLOY_TASKS += "do_deploy"
> > > >
> > > >  FILES:${PN} += "/share/opensbi/*/${RISCV_SBI_PLAT}/firmware/fw_jump.*"
> > > >  FILES:${PN} += 
> > > > "/share/opensbi/*/${RISCV_SBI_PLAT}/firmware/fw_payload.*"
> > > > diff --git a/meta/recipes-bsp/u-boot/u-boot.inc 
> > > > b/meta/recipes-bsp/u-boot/u-boot.inc
> > > > index a75948dfc3..acc2bf9819 100644
> > > > --- a/meta/recipes-bsp/u-boot/u-boot.inc
> > > > +++ b/meta/recipes-bsp/u-boot/u-boot.inc
> > > > @@ -471,3 +471,4 @@ uboot_deploy_spl () {
> > > >  }
> > > >
> > > >  addtask deploy before do_build after do_compile
> > > > +SPDX_DEPLOY_TASKS += "do_deploy"
> > > > diff --git a/meta/recipes-core/systemd/systemd-boot_259.5.bb 
> > > > b/meta/recipes-core/systemd/systemd-boot_259.5.bb
> > > > index c6c443f929..c887835806 100644
> > > > --- a/meta/recipes-core/systemd/systemd-boot_259.5.bb
> > > > +++ b/meta/recipes-core/systemd/systemd-boot_259.5.bb
> > > > @@ -72,4 +72,4 @@ do_deploy () {
> > > >  }
> > > >
> > > >  addtask deploy before do_build after do_compile
> > > > -
> > > > +SPDX_DEPLOY_TASKS += "do_deploy"
> > > > --
> > > > 2.54.0
> > > >
> > >
> > > >
> > > > 
> > > >
> > >
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#239525): 
https://lists.openembedded.org/g/openembedded-core/message/239525
Mute This Topic: https://lists.openembedded.org/mt/119957548/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to