Browse Source

devtools: Exclude default exports from symbol-checker script

See discussion in #4663.
0.10
Wladimir J. van der Laan 10 years ago
parent
commit
27116e87cc
No known key found for this signature in database
GPG Key ID: 74810B012346C9A6
  1. 6
      contrib/devtools/symbol-check.py

6
contrib/devtools/symbol-check.py

@ -41,6 +41,10 @@ MAX_VERSIONS = { @@ -41,6 +41,10 @@ MAX_VERSIONS = {
'GLIBCXX': (3,4,13),
'GLIBC': (2,11)
}
# Ignore symbols that are exported as part of every executable
IGNORE_EXPORTS = {
'_edata', '_end', '_init', '__bss_start', '_fini'
}
READELF_CMD = '/usr/bin/readelf'
CPPFILT_CMD = '/usr/bin/c++filt'
@ -105,6 +109,8 @@ if __name__ == '__main__': @@ -105,6 +109,8 @@ if __name__ == '__main__':
retval = 1
# Check exported symbols
for sym,version in read_symbols(filename, False):
if sym in IGNORE_EXPORTS:
continue
print('%s: export of symbol %s not allowed' % (filename, cppfilt(sym)))
retval = 1

Loading…
Cancel
Save