Cygwin: dllfixdbg: create .gnu_debuglink section in the right spot
A recent change in binutils marks the .gnu_debuglink_overlay section as debug section. When dllfixdbg calls objcopy -g, the section is removed and the --add-gnu-debuglink option on the same command line appends the section consequentially at the end of the sections. This in turn breaks Windows Version info and, potentially, raising the cygheap size at runtime. Fix this by adding an explicit --keep-section=.gnu_debuglink_overlay to the objcopy command line. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
This commit is contained in:
parent
bd3996f218
commit
3c19e1e0d9
|
@ -16,7 +16,7 @@ my @objcopy = ((shift));
|
|||
my $dll = shift;
|
||||
my $dbg = shift;
|
||||
xit 0, @objcopy, '-R', '.gnu_debuglink_overlay', '--add-gnu-debuglink=/dev/null', '--only-keep-debug', $dll, $dbg;
|
||||
xit 0, @objcopy, '-g', '--add-gnu-debuglink=' . $dbg, $dll;
|
||||
xit 0, @objcopy, '-g', '--keep-section=.gnu_debuglink_overlay', '--add-gnu-debuglink=' . $dbg, $dll;
|
||||
open(OBJDUMP, '-|', "$objdump --headers $dll");
|
||||
my %section;
|
||||
while (<OBJDUMP>) {
|
||||
|
|
|
@ -9,3 +9,6 @@ Bug Fixes
|
|||
fstatat and other ...at calls. "X:/" still is handled as absolute
|
||||
path.
|
||||
Addresses: https://cygwin.com/pipermail/cygwin/2021-November/249837.html
|
||||
|
||||
- Fix showing DLL version info from native Windows tools.
|
||||
Addresses: https://cygwin.com/pipermail/cygwin/2021-November/249867.html
|
||||
|
|
Loading…
Reference in New Issue