Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

RFE: provide a mecanism to store buildroot composition in the srpm or a specific subpackage #607

Closed
nim-nim opened this issue Nov 29, 2018 · 10 comments

Comments

@nim-nim
Copy link

nim-nim commented Nov 29, 2018

Some rpm consumers would like to analyse what deps were used to produce a particular package.
gofed/go-macros#2

Right now this is logged by tools like koji (because only the buildsystem knows what it put in the buildroot), but having to access those tools post-build is far from ideal. It would be much nicer if there was a mecanism for the buildsystem to handover this info to rpmbuild and get it stored in the srpm or a specific rpm subpackage

@jnpkrn
Copy link
Contributor

jnpkrn commented Dec 21, 2018

Like in -debuginfo, where it might further help in case of unannounced
ABI breaks?

I see the value of this also for other things, e.g., witnessed daisy
chained breakages because of particular subtle change in linker's
behaviour, thought this is covered with annotations in ELF notes
these days, can only see the compiler's version, though.

@ignatenkobrain
Copy link
Contributor

I don't think that this should be job of RPM. With koji you can always say what packages were available at the time of build, do dependency resolution and voila.

@ignatenkobrain
Copy link
Contributor

I think you need to use some kind of Provides: bundled() and put there whatever was used in buildroot. Doing this somewhere else doesn't worth it.

@nim-nim
Copy link
Author

nim-nim commented Apr 17, 2019

The people who asked this just wanted to access the info computed by koji (or mock or copr) in the produced rpm files, without needing to connect to koji (or mock or copr)

Not to mention, than mock and copr do not archive all build roots they are cleaned up regularly, the only thing that remais are the produced packages

@nim-nim
Copy link
Author

nim-nim commented Apr 17, 2019

And it's not about "bundling". The build root assembled by the build system is not "bundling".

@ignatenkobrain
Copy link
Contributor

yes, but you know that SRPM is built in one environment while rest of packages in others.

@ignatenkobrain
Copy link
Contributor

and if you want to go with subpackage, you don't need any changes in RPM. Just override %build/%install (whatever is generating debuginfo subpackages) and run rpm -qa there. Although in some cases it won't work. This should be done by mock, really.

@nim-nim
Copy link
Author

nim-nim commented Apr 17, 2019

Sure, computing the list needs to be done by the build system, since it's the system that actually assembles the build root. But the build system needs a way to store the resulting list in one of the produced rpm files, since ultimately only those files are lept long-term.

Unless I'm missing something, storing into the produced rpm files needs an entry point in rpm? How can the cbuild system handover the information to rpmbuild so that it's reasonably transparent to the packager and reliable?

@nim-nim
Copy link
Author

nim-nim commented May 1, 2019

It turns out that even an historic package like elfutils has to hack this in %check because it's not done by default.

@rpm-maint
Copy link

rpm-maint commented May 1, 2019 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants