- Fix generating invalid source file path when scanning binaries (boo#1202865) OBS-URL: https://build.opensuse.org/request/show/1000043 OBS-URL: https://build.opensuse.org/package/show/windows:mingw:win64/mingw64-filesystem?expand=0&rev=149
34 lines
664 B
Bash
34 lines
664 B
Bash
#!/bin/sh
|
|
|
|
# SPDX-FileCopyrightText: 2022 Jan Engelhardt <jengelh@inai.de>
|
|
# SPDX-FileCopyrightText: 2022 Ralf Habacker <ralf.habacker@freenet.de>
|
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
|
|
|
# get source filenames from dwarf debug sections
|
|
|
|
gawk '
|
|
BEGIN { state = 0 }
|
|
|
|
state == 1 && $2 ~ /DW_AT_name/ {
|
|
atname = $NF
|
|
}
|
|
|
|
state == 1 && $2 ~ /DW_AT_comp_dir/ {
|
|
atdir = $NF
|
|
# atname is absolute
|
|
if (atname ~ /^\//) {
|
|
print atname
|
|
state = 0
|
|
} else if (atdir != "" && atname != "") {
|
|
print atdir "/" atname
|
|
state = 0
|
|
}
|
|
}
|
|
|
|
state == 0 && $0 ~ /DW_TAG_compile_unit/ {
|
|
state = 1
|
|
atdir = ""
|
|
atname = ""
|
|
}
|
|
'
|