- Add compat scripts calling external find-debug, sepdebugcrcfix and debugedit
- Add %%__find_debuginfo macro

Resolves: #2166383
This commit is contained in:
Florian Festi 2023-06-30 16:00:56 +02:00
parent 9bfd8d7033
commit f3da53eb6d
2 changed files with 73 additions and 6 deletions

View File

@ -0,0 +1,51 @@
From 1a2554da434548e916240796fe7ca9689c5771fe Mon Sep 17 00:00:00 2001
From: Panu Matilainen <pmatilai@redhat.com>
Date: Thu, 27 May 2021 13:58:58 +0300
Subject: [PATCH] Macroize find-debuginfo script location
Makes it easier to handle varying paths, mainly in preparation for the
next step.
(cherry picked from commit ce48167f37af59b6366083fb78a314f7931c0c6b)
---
configure.ac | 1 +
macros.in | 4 +++-
2 files changed, 4 insertions(+), 1 deletion(-)
diff --git a/configure.ac b/configure.ac
index 39f9a0e5b..35b4dff4c 100644
--- a/configure.ac
+++ b/configure.ac
@@ -113,6 +113,7 @@ AC_PATH_PROG(__NM, nm, /usr/bin/nm, $MYPATH)
AC_PATH_PROG(__OBJCOPY, objcopy, /usr/bin/objcopy, $MYPATH)
AC_PATH_PROG(__OBJDUMP, objdump, /usr/bin/objdump, $MYPATH)
AC_PATH_PROG(__STRIP, strip, /usr/bin/strip, $MYPATH)
+AC_PATH_PROG(__FIND_DEBUGINFO, find-debuginfo, /usr/bin/find-debuginfo, $MYPATH)
AC_PATH_PROG(__GIT, git, /usr/bin/git, $MYPATH)
AC_PATH_PROG(__HG, hg, /usr/bin/hg, $MYPATH)
diff --git a/macros.in b/macros.in
index 24b124702..2bcf07ef8 100644
--- a/macros.in
+++ b/macros.in
@@ -80,6 +80,8 @@
%__remsh %{__rsh}
%__strip @__STRIP@
+%__find_debuginfo @__FIND_DEBUGINFO@
+
#==============================================================================
# Conditional build stuff.
@@ -149,7 +151,7 @@
# _find_debuginfo_vendor_opts to pass options to the script.
#
%__debug_install_post \
- %{_rpmconfigdir}/find-debuginfo.sh \\\
+ %{__find_debuginfo} \\\
%{?_smp_build_ncpus:-j%{_smp_build_ncpus}} \\\
%{?_missing_build_ids_terminate_build:--strict-build-id} \\\
%{?_no_recompute_build_ids:-n} \\\
--
2.41.0

View File

@ -32,7 +32,7 @@
%global rpmver 4.16.1.3
#global snapver rc1
%global rel 24
%global rel 25
%global sover 9
%global srcver %{rpmver}%{?snapver:-%{snapver}}
@ -114,6 +114,7 @@ Patch916: 0006-debugedit-Handle-DWARF-5-debug_line-and-debug_line_s.patch
# Downstream-only patches
Patch1000: rpm-4.16.1.3-hashtab-use-after-free-fix.patch
Patch1001: rpm-4.16.1.3-find_debuginfo_vendor_opts.patch
Patch1002: 0001-Macroize-find-debuginfo-script-location.patch
# Partially GPL/LGPL dual-licensed and some bits with BSD
# SourceLicense: (GPLv2+ and LGPLv2+ with exceptions) and BSD
@ -356,9 +357,6 @@ Requires: rpm-libs%{_isa} = %{version}-%{release}
%prep
%autosetup -n rpm-%{srcver} %{?with_int_bdb:-a 1} -p1
# Use external find-debuginfo
sed -i -e "s:%%{_rpmconfigdir}/find-debuginfo.sh:%%{_bindir}/find-debuginfo.sh:g" macros.in
%if %{with bdb} && %{with int_bdb}
ln -s db-%{bdbver} db
%endif
@ -421,8 +419,18 @@ pushd python
%py3_install
popd
# remove in-tree debugedit as we now use the debugedit package
rm -f $RPM_BUILD_ROOT/%{rpmhome}/{debugedit,sepdebugcrcfix,find-debuginfo.sh}
cat > $RPM_BUILD_ROOT/%{rpmhome}/debugedit << END
#!/bin/sh
/usr/bin/debugedit "\$@"
END
cat > $RPM_BUILD_ROOT/%{rpmhome}/sepdebugcrcfix << END
#!/bin/sh
/usr/bin/sepdebugcrcfix "\$@"
END
cat > $RPM_BUILD_ROOT/%{rpmhome}/find-debuginfo.sh << END
#!/bin/sh
/usr/bin/find-debuginfo.sh "\$@"
END
mkdir -p $RPM_BUILD_ROOT%{_unitdir}
install -m 644 %{SOURCE10} $RPM_BUILD_ROOT/%{_unitdir}
@ -599,6 +607,9 @@ fi
%{rpmhome}/brp-*
%{rpmhome}/check-*
%{rpmhome}/debugedit
%{rpmhome}/sepdebugcrcfix
%{rpmhome}/find-debuginfo.sh
%{rpmhome}/find-lang.sh
%{rpmhome}/*provides*
%{rpmhome}/*requires*
@ -633,6 +644,11 @@ fi
%changelog
* Fri Jun 30 2023 Florian Festi <ffesti@redhat.com> - 4.16.1.3-25
- Followup on #2166383
- Add compat scripts calling external find-debug, sepdebugcrcfix and debugedit
- Add %%__find_debuginfo macro
* Thu May 04 2023 Florian Festi <ffesti@redhat.com> - 4.16.1.3-24
- Use external find-debug and debugedit (#2166383)