Bug 25480 - abidiff won't ignore dump files based on name
Summary: abidiff won't ignore dump files based on name
Status: RESOLVED FIXED
Alias: None
Product: libabigail
Classification: Unclassified
Component: default (show other bugs)
Version: unspecified
: P2 enhancement
Target Milestone: ---
Assignee: Dodji Seketeli
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2020-01-29 13:32 UTC by David Marchand
Modified: 2020-02-21 16:04 UTC (History)
1 user (show)

See Also:
Host:
Target:
Build:
Last reconfirmed:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description David Marchand 2020-01-29 13:32:11 UTC
In the dpdk project, we use libabigail to check the differences between abi dumps (created with abidw).
We wrote some suppression rules to handle known issues or hide some internal structures.

We have some libraries (librte_pmd_mlx*_glue.so) that are not part of the ABI itself since they are loaded via a dlopen from drivers (librte_pmd_mlx*.so), and those libraries come as a pair (librte_pmd_mlx4_glue.so is compiled at the same time than librte_pmd_mlx4.so).

To deal with those, we skip those libraries dumps in the script calling abidiff.

We would prefer to have all the exceptions described in the supression rules, but it seems that a [suppress_file] rule does not apply to dump files.
Comment 1 Dodji Seketeli 2020-02-21 16:04:30 UTC
The commit
https://sourceware.org/git/gitweb.cgi?p=libabigail.git;a=commit;h=6a0e7e120b18c51ce7cc2d273697b7440e1ac99e that landed into the master branch should fix this issue.  That commit should be available in the upcoming 1.7 version of libabigail.

With that commit, if the abixml file (that you name dump file) contains a reference to a soname, then this suppression specification should work:

[suppress_file]
  soname_regexp = <regexp-for-the-soname>


Note, however, that using the file_name_regexp' property of the [suppress_file] section already works (even without this patch) with abixml files, provided the regular expression matches the name of the abixml file.  That suppression specification would look like:

[suppress_file]
  file_name_regexp = <regexp-for-the-abixml-file-path>


Hopefully this is helpful.

Thank you for taking the time to report this problem, and sorry for the inconvenience.