Hi Mark

On 24.11.23 at 17:20, Mark Hatle wrote:

In the past, the statement was made that we would generate source packages that would include the full source (as referenced in the ${S} directory of the build), but there was no promise that a 'source package' would build, using the
tooling of the package manager.

This allowed us to clearly have a license compliance "source package", but the reference back to the full build was ALWAYS "the build system". I'd say this
continues to be the model I would support.  (The package beyond license
compliance is also needed for debugging things on the board.)

binary package(s)
source package
original build environment

The one thing that needs to be checked though, is the -src package complete? For debugging purposes, I believe it is.. but I'm not sure what changed have happened in it in the last 5 years or so when I was last involved in the code base.  The original (many many years ago) intention was that it would be a
complete copy of the ${S}, and like the source compliance work elsewhere
(archiver.bbclass) could get other bits and pieces embedded into it.

It may also be a completely reasonable behavior that -src stays as run-time debug, and we point users at the archiver sources for license compliance.  They don't have to be done in packages (since we know a source package won't work
anyway!)

I just re-read what I wrote and realized I'm not awake.. there are TWO different outputs.

-src package which is DEBUG centric
.src.rpm which was supposed to be equivalent of the archiver, but in RPM format.  (I assume a tarball for deb users.. I don't know about opkg.)


Right, for people following this discussion,  the "-src" packages are described in https://docs.yoctoproject.org/dev/ref-manual/variables.html#term-PACKAGE_DEBUG_SPLIT_STYLE.

According to the documentation, it seems that we can only build standard source packages in RPM format, using the "archiver class", so these indeed are not like other packages produced  by package splitting:
INHERIT += "archiver"
PACKAGE_CLASSES = "package_rpm"
ARCHIVER_MODE[srpm] = "1"

You then get the .src.rpm packages under tmp/deploy/sources/
I'm just sharing what I found on this topic here. I don't mean we should use such packages. The standard output of the "archiver" class looks fine.

Cheers
Michael.

--
Michael Opdenacker, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

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

Reply via email to