OK, I guess I start with writing down how debuginfo works right now:
There are quite a few macros that
[control](https://github.com/rpm-software-management/rpm/blob/master/macros.in#L452)
and
[implement](https://github.com/rpm-software-management/rpm/blob/master/macros.in#L135)
the debuginfo creation.
The macro starting the show is not even in RPM but added by the distributions
in their own macros. Z.B. in
[Fedora](https://src.fedoraproject.org/rpms/redhat-rpm-config/blob/rawhide/f/macros#_285).
This hack prepends the first piece before `%install` (creating all kind of
problems wrt SPEC order and parsing `%prep` and `%install` back to back).
If `_enable_debug_packages` and `buildsubdir` are set and this is not an
`noarch` package debuginfos are created. Right there `__debug_package` is set
which is used by the other pieces to activate. Also the main `-debuginfo`
package and - if enabled - `-debugsource` package is declared there.
Next stop is `__spec_install_post` which executes `find_debuginfo` (which is
now part of the `debugedit` package) at the end of `%install`. This creates the
manifest file for the main `-debuginfo` package and possibly `-debugsource`
package.
Everything else is handles in
[build/files.](https://github.com/rpm-software-management/rpm/blob/master/build/files.c)
during the assembling of the packages:
[generateBuildIDs](https://github.com/rpm-software-management/rpm/blob/master/build/files.c#L1814)
adds the links to the packages.
Depending on the settings the debuginfo files are processed and relocated if
necessary.
It does so by finding the previously declared `-debuginfo` and `-debugsource`
packages now having read in their manifest files.
Other debuginfo packages are created by cloning the main debuginfo package in
[filterDebuginfoPackage](https://github.com/rpm-software-management/rpm/blob/master/build/files.c#L2900)
--
Reply to this email directly or view it on GitHub:
https://github.com/rpm-software-management/rpm/issues/2204#issuecomment-1261015083
You are receiving this because you are subscribed to this thread.
Message ID: <rpm-software-management/rpm/issues/2204/1261015...@github.com>
_______________________________________________
Rpm-maint mailing list
Rpm-maint@lists.rpm.org
http://lists.rpm.org/mailman/listinfo/rpm-maint