1e01aa904Sopenharmony_ciThis tool uses the libabigail library to analyze the binary as well as its
2e01aa904Sopenharmony_ciassociated debug information.  Here is its general mode of operation.
3e01aa904Sopenharmony_ci
4e01aa904Sopenharmony_ciWhen instructed to do so, a binary and its associated debug
5e01aa904Sopenharmony_ciinformation is read and analyzed.  To that effect, libabigail analyzes
6e01aa904Sopenharmony_ciby default the descriptions of the types reachable by the interfaces
7e01aa904Sopenharmony_ci(functions and variables) that are visible outside of their
8e01aa904Sopenharmony_citranslation unit.  Once that analysis is done, an Application Binary
9e01aa904Sopenharmony_ciInterface Corpus is constructed by only considering the subset of
10e01aa904Sopenharmony_citypes reachable from interfaces associated to `ELF`_ symbols that are
11e01aa904Sopenharmony_cidefined and exported by the binary.  It's that final ABI corpus which
12e01aa904Sopenharmony_cilibabigail considers as representing the ABI of the analyzed binary.
13e01aa904Sopenharmony_ci
14e01aa904Sopenharmony_ciLibabigail then has capabilities to generate textual representations
15e01aa904Sopenharmony_ciof ABI Corpora, compare them, analyze their changes and report about
16e01aa904Sopenharmony_cithem.
17