Add find-debuginfo-filter-built-ins.patch.
This commit is contained in:
parent
6e205bd77e
commit
7a3daadb26
36
find-debuginfo-filter-built-ins.patch
Normal file
36
find-debuginfo-filter-built-ins.patch
Normal file
@ -0,0 +1,36 @@
|
||||
commit 78df22afc540c6c34003c3cb8ecc3ee686fbef76
|
||||
Author: Mark Wielaard <mark@klomp.org>
|
||||
Date: Wed Jun 28 13:25:12 2017 +0200
|
||||
|
||||
find-debuginfo.sh: Filter out all <built-in> like fake file names.
|
||||
|
||||
There is no official way to mark an instruction range as being not
|
||||
part of some actual source code, but as part of a compiler built-in
|
||||
construct in DWARF. So different compilers have come up with fake
|
||||
source file names like <built-in> or <__thread_local_inner macros>.
|
||||
We already filtered out the strings "<internal>" and "<built-in>".
|
||||
Just filter out all '(^|/)<[a-z _-]+>$'. They are fake files!
|
||||
|
||||
This is mainly to appease the rustc compiler which generates lots of
|
||||
different variants to encode some instruction sequence is part of an
|
||||
compiler generated macro expansion.
|
||||
|
||||
Signed-off-by: Mark Wielaard <mark@klomp.org>
|
||||
|
||||
diff --git a/scripts/find-debuginfo.sh b/scripts/find-debuginfo.sh
|
||||
index 0233d92..555e7b8 100755
|
||||
--- a/scripts/find-debuginfo.sh
|
||||
+++ b/scripts/find-debuginfo.sh
|
||||
@@ -502,7 +502,11 @@ if [ -s "$SOURCEFILE" ]; then
|
||||
fi
|
||||
|
||||
mkdir -p "${RPM_BUILD_ROOT}${debug_dest_name}"
|
||||
- LC_ALL=C sort -z -u "$SOURCEFILE" | grep -E -v -z '(<internal>|<built-in>)$' |
|
||||
+ # Filter out anything compiler generated which isn't a source file.
|
||||
+ # e.g. <internal>, <built-in>, <__thread_local_inner macros>.
|
||||
+ # Some compilers generate them as if they are part of the working
|
||||
+ # directory (which is why we match against ^ or /).
|
||||
+ LC_ALL=C sort -z -u "$SOURCEFILE" | grep -E -v -z '(^|/)<[a-z _-]+>$' |
|
||||
(cd "${debug_base_name}"; cpio -pd0mL "${RPM_BUILD_ROOT}${debug_dest_name}")
|
||||
# stupid cpio creates new directories in mode 0700,
|
||||
# and non-standard modes may be inherented from original directories, fixup
|
4
rpm.spec
4
rpm.spec
@ -105,6 +105,9 @@ Patch286: debugsrc-and-sub-debuginfo-packages.patch
|
||||
# debugedit check prefix match ends with slash.
|
||||
Patch290: debugedit-prefix.patch
|
||||
|
||||
# find-debuginfo.sh: Filter out all <built-in> like fake file names.
|
||||
Patch291: find-debuginfo-filter-built-ins.patch
|
||||
|
||||
# OpenSSL backend
|
||||
Patch300: 0001-Add-OpenSSL-support-for-digest-and-signatures.patch
|
||||
|
||||
@ -616,6 +619,7 @@ exit 0
|
||||
%changelog
|
||||
* Thu Jun 29 2017 Mark Wielaard <mjw@fedoraproject.org>
|
||||
- Add debugedit-prefix.patch.
|
||||
- Add find-debuginfo-filter-built-ins.patch.
|
||||
|
||||
* Wed Jun 28 2017 Mark Wielaard <mjw@fedoraproject.org> - 4.13.0.1-27
|
||||
- Add find-debuginfo-split-traversal-and-extraction-fix.patch (#1465170)
|
||||
|
Loading…
Reference in New Issue
Block a user