buildman: Allow lines without a symbol

The 'nm' tool can produce lines without a symbol, for example:

   00000004 t

Silently skip these and anything else without three fields. Drop the
warning since there is nothing the user can do about it.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reported-by: Tom Rini <trini@konsulko.com>
This commit is contained in:
Simon Glass 2022-07-11 19:04:11 -06:00 committed by Tom Rini
parent 811c8e1711
commit f2e6775cdd

View File

@ -669,17 +669,15 @@ class Builder:
"""
sym = {}
for line in fd.readlines():
try:
if line.strip():
size, type, name = line[:-1].split()
except:
tprint("Invalid line in file '%s': '%s'" % (fname, line[:-1]))
continue
if type in 'tTdDbB':
# function names begin with '.' on 64-bit powerpc
if '.' in name[1:]:
name = 'static.' + name.split('.')[0]
sym[name] = sym.get(name, 0) + int(size, 16)
line = line.strip()
parts = line.split()
if line and len(parts) == 3:
size, type, name = line.split()
if type in 'tTdDbB':
# function names begin with '.' on 64-bit powerpc
if '.' in name[1:]:
name = 'static.' + name.split('.')[0]
sym[name] = sym.get(name, 0) + int(size, 16)
return sym
def _ProcessConfig(self, fname):