On Sun, 2026-08-16 at 13:25 +0200, Benjamin Robin wrote:
> On Sunday, August 16, 2026 at 1:12 PM, Benjamin Robin wrote:
> > On Sunday, August 16, 2026 at 12:46 PM, Paul Barker wrote:
> > > On Mon, 2026-08-10 at 09:11 +0200, Benjamin Robin wrote:
> > > > Previously, except for a kernel recipe, the source file paths were never
> > > > "resolved" since the KERNEL_SRC_PATH variable is always defined. So in
> > > > the ${PN}-debugsources.json.zstd file the source file paths always 
> > > > started
> > > > with /usr/src/debug/${PN}/${PV} (which is the value of 
> > > > TARGET_DBGSRC_DIR).
> > > > 
> > > > Currently the debugsources.json file is only used by the spdx 
> > > > generation.
> > > > - In `get_patched_src()` the sources of the recipe are extracted 
> > > > (again).
> > > >   The unpack task is executed from a modified local context with 
> > > > UNPACKDIR
> > > >   set to the value of `${SPDXWORK}`. So in summary the sources are
> > > >   extracted in a sub-directory of `${SPDXWORK}`.
> > > > - In `add_package_files()`, with topdir equal to `${SPDXWORK}`, all the
> > > >   files (recursively) found in topdir are listed. For each source file,
> > > >   if the file path (relative to topdir) is in the list of source files
> > > >   retrieved by save_debugsources_info, then the file is added to the 
> > > > SPDX
> > > >   SBoM.
> > > > 
> > > > So try to handle that by replacing ${TARGET_DBGSRC_DIR} by the relative
> > > > path of ${S} relative to ${UNPACKDIR}. If ${S} is not relative to
> > > > ${UNPACKDIR}, do nothing.
> > > > 
> > > > Signed-off-by: Benjamin Robin <[email protected]>
> > > 
> > > The paths in ${PN}-debugsources.json currently match where the files
> > > will be installed on the target. If we change these to be relative
> > > paths within ${UNPACKDIR} then we would break other ways that the
> > > debugsources json files may be used.
> > 
> > Hello Paul,
> > 
> > This was never the purpose of ${PN}-debugsources.json if I am not mistaken.
> > If you look at the code (before my patches) the path should have been
> > modified to be somewhat relative to WORKDIR. But the code had a bug, and
> > the paths were never modified.
> > 
> > Also, for the kernel, the kernel sources paths were already modified to be
> > the same as the path in SPDX, so starting with ${BP}. This part was
> > mostly working for the "main" use case. In a previous RFC series that was
> > merged, I fix that to be working for any kernel recipe.
> >  
> > > What is currently broken? 
> > 
> > SPDX_INCLUDE_COMPILED_SOURCES for a normal recipe (not the kernel) is not
> > working.
> > 
> > > Can this be fixed at the point where the
> > > debugsources json file is parsed instead of where it is generated?
> 
> Yes, I guess we could modify how oe.spdx_common.get_compiled_sources() is
> implemented. In that case I would recommend to no longer modify the paths
> of kernel sources in save_debugsources_info(). We would keep the paths as is,
> we would only filter for "<internal>", "<built-in>", ...
> 
> In any cases, this is kind of a breaking change since the
> ${PN}-debugsources.json is not going to contain the same paths as before.
> 
> But what you are "proposing" (modifying get_compiled_sources()) is a bit
> cleaner from my point of view. This is a bit more work, that is why I did
> not do that.
> Joshua do you have an option on that?
> 
> > > Sorry if I'm missing some context here.
> > 
> > For the full context see:
> > https://lore.kernel.org/all/[email protected]/
> > https://github.com/bootlin/yocto-kiss/pull/26#discussion_r3626224833

Hi Benjamin,

Yes, I was missing some context! I was replying based off discussions we
had on the patch review call on Thursday.

If the paths in debugsources.json files are currently inconsistent
between kernel and non-kernel recipes then we should fix that. So
perhaps your patch is correct after all. I'll let Joshua give an
opinion.

Best regards,

-- 
Paul Barker

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#243526): 
https://lists.openembedded.org/g/openembedded-core/message/243526
Mute This Topic: https://lists.openembedded.org/mt/120681384/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to