Bug 25095 - Apply symbol white lists to ELF symbols
Right now, the symbol names that are part of a Linux Kernel ABI
white list are matched against function and variable names that appear
in the DWARF information.
In other words, when Libabigail processes the Linux Kernel ABI
whitelist, it generates a suppression specifications which keeps
functions and variables (as described by DWARF) whose names match the
symbol names specified in the white list. All other functions and
variables are dropped. But that doesn't apply to ELF symbols.
Libabigail generates no suppression at all for ELF symbols. It only
considers variables and functions described in the debug information.
With this patch, Libabiagil now generates a suppression specification
which keeps functions and variables whose ELF symbol name match the
symbol names specified in the whitelist. The suppression
specification also drops ELF symbols whose name don't match the names
specified in the white list.
Note that this patch uses the previous commit which description is:
"Support symbol_name_not_regexp in [suppress_{function, variable}]"
* src/abg-tools-utils.cc (gen_suppr_spec_from_kernel_abi_whitelist):
Generate a suppression specification which considers the name of
the symbol associated to a function/variable, rather than just the
name of said function/variable.
Signed-off-by: Dodji Seketeli <dodji@redhat.com>