Fix debuginfo

From the original RHEL patch:

    This extra '+' causes problems with the regular expression used with
    /usr/lib/rpm/find-debuginfo.sh script from rpm-build, which is used to filter
    the debug files to the corresponding debuginfo packages. The '+' character
    in the release is interpreted as a regular expression operator and the
    debuginfo filter fails, with the build failing on an empty debuginfo file list.

    Which means we need to escape the extra '+' character if we want debuginfo
    filter to work. I tried to use '\' to escape, but rpm "eats" that, in testing
    '[+]' worked so is what I'm using to fix/workaround this problem. When RHEL 8
    drops the the extra +<number> in the future, we can remove this fix/workaround.

This problem is likely to come up so just add it in now.
This commit is contained in:
Laura Abbott 2019-10-24 09:55:10 -04:00
parent c0312b2e60
commit 1cf4120f6f
1 changed files with 2 additions and 1 deletions

View File

@ -245,6 +245,7 @@ Summary: The Linux kernel
%define image_install_path boot
%define KVERREL %{version}-%{release}.%{_target_cpu}
%define KVERREL_RE %(echo %KVERREL | sed 's/+/[+]/g')
%define hdrarch %_target_cpu
%define asmarch %_target_cpu
@ -822,7 +823,7 @@ AutoReqProv: no\
%description %{?1:%{1}-}debuginfo\
This package provides debug information for package %{name}%{?1:-%{1}}.\
This is required to use SystemTap with %{name}%{?1:-%{1}}-%{KVERREL}.\
%{expand:%%global _find_debuginfo_opts %{?_find_debuginfo_opts} -p '/.*/%%{KVERREL}%{?1:[+]%{1}}/.*|/.*%%{KVERREL}%{?1:\+%{1}}(\.debug)?' -o debuginfo%{?1}.list}\
%{expand:%%global _find_debuginfo_opts %{?_find_debuginfo_opts} -p '/.*/%%{KVERREL_RE}%{?1:[+]%{1}}/.*|/.*%%{KVERREL_RE}%{?1:\+%{1}}(\.debug)?' -o debuginfo%{?1}.list}\
%{nil}
#