Hi
In rpm 4.20 as currently available in rawhide, defining __debug_install_post seems to have no effect. The %mingw_package_header sets __debug_install_post as follows
%mingw_package_header \ %global __strip %{mingw_strip} \ %global __objdump %{mingw_objdump} \ %global __debug_install_post %%{mingw_debug_install_post} \ %{nil}
but %mingw_debug_install_post is never executed. Manually running
%mingw_debug_install_post
in %install works however.
Perhaps this is related to [1]? What is the correct way now to trigger the custom debug extraction script?
Thanks Sandro
[1] https://github.com/rpm-software-management/rpm/issues/2204
On 6/4/24 09:40, Sandro Mani wrote:
Hi
In rpm 4.20 as currently available in rawhide, defining __debug_install_post seems to have no effect. The %mingw_package_header sets __debug_install_post as follows
%mingw_package_header \ %global __strip %{mingw_strip} \ %global __objdump %{mingw_objdump} \ %global __debug_install_post %%{mingw_debug_install_post} \ %{nil}
but %mingw_debug_install_post is never executed. Manually running
%mingw_debug_install_post
in %install works however.
Please file a bug (upstream or Fedora, whichever is more convenient for you) on this so it gets tracked. There's just so much going on there's a danger of bits falling through the cracks otherwise. We'll look into it ASAP.
Perhaps this is related to [1]? What is the correct way now to trigger the custom debug extraction script?
It's almost certainly related to the debuginfo change, but I can't say offhand what the right thing to do here is or if its possible to maintain compatibility. The original way to enable debuginfo through this %install macro override is such a terrible duct-tape hack relying on a thousand tiny and subtle details across the board, and when you add twenty years of all the overrides and tweaks from packages from the last 20 years...
Let me put it this way: this is what it looks like when 20 years of technical debt suddenly collapses underneath you. We didn't want to do this debuginfo change in this release that was already loaded with build-side changes but details regarding the %install macro override hack basically forced our hand. Apologies for the all the disruption!
- Panu -
On Tue, Jun 04, 2024 at 08:40:15AM +0200, Sandro Mani wrote:
Hi
In rpm 4.20 as currently available in rawhide, defining __debug_install_post seems to have no effect. The %mingw_package_header sets __debug_install_post as follows
%mingw_package_header \ %global __strip %{mingw_strip} \ %global __objdump %{mingw_objdump} \
FWIW, I don't think these two overrides should be required anymore. The standard strip/objdump commands in /usr/bin work with PE files these days, and for the pacakges where we have merged mingw+native specs these overrides aren't used.
Given that, I'd question whether %mingw_package_header needs to continue to exist either ? it is no harder / great lines of code to simply call %mingw_debug_install_post in %install, thus avoiding the rpm 4.20 compat issue.
%global __debug_install_post %%{mingw_debug_install_post} \ %{nil}
but %mingw_debug_install_post is never executed. Manually running
%mingw_debug_install_post
in %install works however.
Perhaps this is related to [1]? What is the correct way now to trigger the custom debug extraction script?
Thanks Sandro
[1] https://github.com/rpm-software-management/rpm/issues/2204
With regards, Daniel
On 04.06.24 10:12, Daniel P. Berrangé wrote:
On Tue, Jun 04, 2024 at 08:40:15AM +0200, Sandro Mani wrote:
Hi
In rpm 4.20 as currently available in rawhide, defining __debug_install_post seems to have no effect. The %mingw_package_header sets __debug_install_post as follows
%mingw_package_header \ %global __strip %{mingw_strip} \ %global __objdump %{mingw_objdump} \
FWIW, I don't think these two overrides should be required anymore. The standard strip/objdump commands in /usr/bin work with PE files these days, and for the pacakges where we have merged mingw+native specs these overrides aren't used.
Given that, I'd question whether %mingw_package_header needs to continue to exist either ? it is no harder / great lines of code to simply call %mingw_debug_install_post in %install, thus avoiding the rpm 4.20 compat issue.
We could indeed to that, as we already require for unified native/mingw specs. Perhaps there also exists a way to trigger this automatically with a mechanism similar to the %{_rpmconfigdir}/fileattrs/*.attr?
Sandro
On Tue, Jun 4, 2024 at 4:24 AM Sandro Mani manisandro@gmail.com wrote:
On 04.06.24 10:12, Daniel P. Berrangé wrote:
On Tue, Jun 04, 2024 at 08:40:15AM +0200, Sandro Mani wrote:
Hi
In rpm 4.20 as currently available in rawhide, defining __debug_install_post seems to have no effect. The %mingw_package_header sets __debug_install_post as follows
%mingw_package_header \ %global __strip %{mingw_strip} \ %global __objdump %{mingw_objdump} \
FWIW, I don't think these two overrides should be required anymore. The standard strip/objdump commands in /usr/bin work with PE files these days, and for the pacakges where we have merged mingw+native specs these overrides aren't used.
Given that, I'd question whether %mingw_package_header needs to continue to exist either ? it is no harder / great lines of code to simply call %mingw_debug_install_post in %install, thus avoiding the rpm 4.20 compat issue.
We could indeed to that, as we already require for unified native/mingw specs. Perhaps there also exists a way to trigger this automatically with a mechanism similar to the %{_rpmconfigdir}/fileattrs/*.attr?
I don't know about that, we don't yet have subpackage generators. But we *do* have the ability to run scripts to make spec snippets that rpmbuild picks up for dynamic packaging.
-- 真実はいつも一つ!/ Always, there's only one truth!