mirror of
https://git.yoctoproject.org/poky
synced 2026-06-01 13:09:50 +00:00
package.bbclass: Make staticlib problems non-fatal
Allow debugsource listing using dwarfsourcefiles to fail for static libraries when the archive content is not as expected. (From OE-Core rev: e2235b7567a9aba474cda4cdc20cc9bfffc63711) Signed-off-by: Ola x Nilsson <olani@axis.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
00fe24fe8c
commit
df08ba32a6
@@ -344,12 +344,15 @@ def parse_debugsources_from_dwarfsrcfiles_output(dwarfsrcfiles_output):
|
|||||||
|
|
||||||
return debugfiles.keys()
|
return debugfiles.keys()
|
||||||
|
|
||||||
def append_source_info(file, sourcefile, d):
|
def append_source_info(file, sourcefile, d, fatal=True):
|
||||||
cmd = "'dwarfsrcfiles' '%s'" % (file)
|
cmd = "'dwarfsrcfiles' '%s'" % (file)
|
||||||
(retval, output) = oe.utils.getstatusoutput(cmd)
|
(retval, output) = oe.utils.getstatusoutput(cmd)
|
||||||
# 255 means a specific file wasn't fully parsed to get the debug file list, which is not a fatal failure
|
# 255 means a specific file wasn't fully parsed to get the debug file list, which is not a fatal failure
|
||||||
if retval != 0 and retval != 255:
|
if retval != 0 and retval != 255:
|
||||||
bb.fatal("dwarfsrcfiles failed with exit code %s (cmd was %s)%s" % (retval, cmd, ":\n%s" % output if output else ""))
|
msg = "dwarfsrcfiles failed with exit code %s (cmd was %s)%s" % (retval, cmd, ":\n%s" % output if output else "")
|
||||||
|
if fatal:
|
||||||
|
bb.fatal(msg)
|
||||||
|
bb.note(msg)
|
||||||
|
|
||||||
debugsources = parse_debugsources_from_dwarfsrcfiles_output(output)
|
debugsources = parse_debugsources_from_dwarfsrcfiles_output(output)
|
||||||
# filenames are null-separated - this is an artefact of the previous use
|
# filenames are null-separated - this is an artefact of the previous use
|
||||||
@@ -1052,7 +1055,7 @@ python split_and_strip_files () {
|
|||||||
|
|
||||||
if debugsrcdir and not targetos.startswith("mingw"):
|
if debugsrcdir and not targetos.startswith("mingw"):
|
||||||
for file in staticlibs:
|
for file in staticlibs:
|
||||||
append_source_info(file, sourcefile, d)
|
append_source_info(file, sourcefile, d, fatal=False)
|
||||||
|
|
||||||
# Hardlink our debug symbols to the other hardlink copies
|
# Hardlink our debug symbols to the other hardlink copies
|
||||||
for ref in inodes:
|
for ref in inodes:
|
||||||
|
|||||||
Reference in New Issue
Block a user