(Initial text) |
(fix headings & typos) |
||
Line 11: | Line 11: | ||
There are three ways to provide suppression specifications to Libabigail through abipkgdiff: | There are three ways to provide suppression specifications to Libabigail through abipkgdiff: | ||
=== Add a .abignore file to the RPMs === | |||
If the RPM | If the RPM package contains a file which name ends with the extension <code>.abignore</code> then the tool considers it as a suppression specification. | ||
=== Pass suppression specifications to abipkgdiff using command a command line option === | |||
As explained in the [https://sourceware.org/libabigail/manual/abipkgdiff.html|documentation of abipkgdiff], using <code>--suppressions suppr-spec.abignore</code> option will make the tool consider the suppr-spec.abignore file as a suppression specification. | As explained in the [https://sourceware.org/libabigail/manual/abipkgdiff.html|documentation of abipkgdiff], using <code>--suppressions suppr-spec.abignore</code> option will make the tool consider the suppr-spec.abignore file as a suppression specification. | ||
=== Define default suppression specifications === | |||
Libabigail allows users to define default suppression specifications. If the file <code>~/.abignore</code> is present, it's considered by all Libabigail tools as a "default user a suppression specification". That specification will apply to all the Libabigail tool invocations made the current user. | Libabigail allows users to define default suppression specifications. If the file <code>~/.abignore</code> is present, it's considered by all Libabigail tools as a "default user a suppression specification". That specification will apply to all the Libabigail tool invocations made the current user. |
Revision as of 15:04, 1 February 2018
Introduction
[1] based tools emit reports about ABI artifacts (types, functions, variables, symbols, etc ...) that have changed. Some users might want some reports about some changed artifacts to be suppressed. This is where the filtering capabilities of Libabigail can be helpful.
Suppression specifications
Users tell Libabigail (and its tools) what ABI artifact change report to suppress by providing a file which contains suppression directives. That file is called a suppression specification. The exact syntax of that file is define in the documentation
Let's focus on the case of the [2] tool which aims at comparing the ABIs of binaries embedded in RPMs.
There are three ways to provide suppression specifications to Libabigail through abipkgdiff:
Add a .abignore file to the RPMs
If the RPM package contains a file which name ends with the extension .abignore
then the tool considers it as a suppression specification.
Pass suppression specifications to abipkgdiff using command a command line option
As explained in the of abipkgdiff, using --suppressions suppr-spec.abignore
option will make the tool consider the suppr-spec.abignore file as a suppression specification.
Define default suppression specifications
Libabigail allows users to define default suppression specifications. If the file ~/.abignore
is present, it's considered by all Libabigail tools as a "default user a suppression specification". That specification will apply to all the Libabigail tool invocations made the current user.
Note that by default, there is also a system-wide default suppression specification that is installed at $libdir/libabigail/libabigail-default.abignore
and that is applied to all libabigail tools invocations on the system.
Note also that when when several suppression specification files are provided to the Libabigail system, the suppression directives coming from the different files are combined.