From bfaae6237992240521a6351c1ad0d2eb47f858b8 Mon Sep 17 00:00:00 2001 From: rwx403335 Date: Fri, 7 Jan 2022 18:23:40 +0800 Subject: [PATCH] bugfix on cannot generate debugsources file --- debugedit.spec | 11 +++++-- ...h-decompress-DWARF-compressed-ELF-se.patch | 30 +++++++++++++++++++ 2 files changed, 39 insertions(+), 2 deletions(-) create mode 100644 find-debuginfo.sh-decompress-DWARF-compressed-ELF-se.patch diff --git a/debugedit.spec b/debugedit.spec index 6c19387..2dbd4a5 100644 --- a/debugedit.spec +++ b/debugedit.spec @@ -1,6 +1,6 @@ Name: debugedit Version: 5.0 -Release: 1 +Release: 2 Summary: Tools for debuginfo creation License: GPL-2.0-or-later and LGPL-2.1-only and GPL-3.0-only Group: Applications @@ -18,6 +18,7 @@ Suggests: gdb-minimal Requires: sed dwz grep Patch0: tests-Handle-zero-directory-entry-in-.debug_line-DWA.patch +Patch1: find-debuginfo.sh-decompress-DWARF-compressed-ELF-se.patch %description Debugedit provides programs and scripts for creating debuginfo and @@ -36,7 +37,9 @@ autoreconf -f -v -i %make_install cd %{buildroot}%{_bindir} ln -s find-debuginfo find-debuginfo.sh - +cd %{buildroot} +mkdir -p %{buildroot}%{_rpmconfigdir} +ln -s %{_bindir}/find-debuginfo %{buildroot}%{_rpmconfigdir}/find-debuginfo.sh %check sed -i 's/^\(C\|LD\)FLAGS=.*/\1FLAGS=""/' tests/atlocal make check %{?_smp_mflags} @@ -53,7 +56,11 @@ make check %{?_smp_mflags} %{_mandir}/man1/debugedit.1* %{_mandir}/man1/sepdebugcrcfix.1* %{_mandir}/man1/find-debuginfo.1* +%{_rpmconfigdir}/find-debuginfo.sh %changelog +* Fri Jan 07 2022 renhongxun 5.0-2 +- bugfix + * Sat Dec 25 2021 renhongxun - init package diff --git a/find-debuginfo.sh-decompress-DWARF-compressed-ELF-se.patch b/find-debuginfo.sh-decompress-DWARF-compressed-ELF-se.patch new file mode 100644 index 0000000..e120b1f --- /dev/null +++ b/find-debuginfo.sh-decompress-DWARF-compressed-ELF-se.patch @@ -0,0 +1,30 @@ +From f2bc669cd0a080792522dd1bb7f50ef7025f16f0 Mon Sep 17 00:00:00 2001 +From: Mark Wielaard +Date: Sat, 21 Jul 2018 10:13:04 +0200 +Subject: [PATCH] find-debuginfo.sh: decompress DWARF compressed ELF sections + +debugedit and dwz do not support DWARF compressed ELF sections, let's +just decompress those before extracting debuginfo. + +Tested-by: Igor Gnatenko +--- + scripts/find-debuginfo.in | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/scripts/find-debuginfo.in b/scripts/find-debuginfo.in +index 90a44942d..7b01bc036 100755 +--- a/scripts/find-debuginfo.in ++++ b/scripts/find-debuginfo.in +@@ -357,6 +357,9 @@ do_file() + get_debugfn "$f" + [ -f "${debugfn}" ] && return + ++ echo "explicitly decompress any DWARF compressed ELF sections in $f" ++ eu-elfcompress -q -p -t none "$f" ++ + echo "extracting debug info from $f" + # See also cpio SOURCEFILE copy. Directories must match up. + debug_base_name="$RPM_BUILD_DIR" +-- +2.18.0 +