[pacman-dev] [PATCH] makepkg: Ignore "<artificial>" source files

Austin Lund austin.lund at gmail.com
Tue Jul 30 05:01:41 UTC 2019


An artificial symbol can be produced when requesting debugging symbols
and the compiler has inlined a function.  These symbols will give
spurious results when listing source files for inclusion in debug
packages.  This will ignore these symbols and avoid an error that can be
generated when creating a debug package.

Signed-off-by: Austin Lund <austin.lund at gmail.com>
---
 scripts/libmakepkg/tidy/strip.sh.in | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/scripts/libmakepkg/tidy/strip.sh.in b/scripts/libmakepkg/tidy/strip.sh.in
index 5937e13c..5bc0a842 100644
--- a/scripts/libmakepkg/tidy/strip.sh.in
+++ b/scripts/libmakepkg/tidy/strip.sh.in
@@ -37,7 +37,7 @@ build_id() {
 
 source_files() {
 	LANG=C readelf "$1" --debug-dump | \
-		awk '/DW_AT_name +:/{name=$8}/DW_AT_comp_dir +:/{{if (name !~ /^\//) {printf "%s/", $8}}{print name}}'
+		awk '/DW_AT_name +:/{name=$8}/DW_AT_comp_dir +:/{{if (name == "<artificial>") next}{if (name !~ /^[<\/]/) {printf "%s/", $8}}{print name}}'
 }
 
 strip_file() {
-- 
2.22.0


More information about the pacman-dev mailing list