--exported-interfaces-only
By default, when looking at the debug information accompanying a binary, this tool analyzes the descriptions of the types reachable by the interfaces (functions and variables) that are visible outside of their translation unit. Once that analysis is done, an ABI corpus is constructed by only considering the subset of types reachable from interfaces associated to ELF <http://en.wikipedia.org/wiki/Executable_and_Linkable_Format> symbols that are defined and exported by the binary. It's that final ABI corpus which textual representation is saved as ABIXML.
The problem with that approach however is that analyzing all the interfaces that are visible from outside their translation unit can amount to a lot of data, especially when those binaries are applications, as opposed to shared libraries. One example of such applications is the Linux Kernel <https://kernel.org/>. Analyzing massive ABI corpora like these can be extremely slow.
To mitigate that performance issue, this option allows libabigail to only analyze types that are reachable from interfaces associated with defined and exported ELF <http://en.wikipedia.org/wiki/Executable_and_Linkable_Format> symbols.
Note that this option is turned on by default when analyzing the Linux Kernel <https://kernel.org/>. Otherwise, it's turned off by default.