fedabipkgdiff: Add a new --private-dso option

This patch adds an option to make fedabipkgdiff compare shared
libraries that are private to the packages being considered.

It allows us to compare the private libxul.so shared library when
considering the firefox package, for instance.

	* doc/manuals/fedabipkgdiff.rst: Add documentation for the new
	--private-dso option.
	* tools/fedabipkgdiff (abipkgdiff): Pass the --private-dso option
	to abipkgdiff when asked by the user.
	(build_commandline_args_parser): Support the new --private-dso
	option.

Signed-off-by: Dodji Seketeli <dodji@redhat.com>
This commit is contained in:
Dodji Seketeli 2024-11-13 13:40:36 +01:00
parent 3f477ca2b5
commit 7b4993d387
2 changed files with 16 additions and 0 deletions

View File

@ -137,6 +137,14 @@ Options
defined in public header files available from the packages being
compared.
* ``--private-dso``
Compare the ABI of shared libraries that are private to the
packages. If this option is not provided, shared libraries that
are private to the packages being considered are not compared.
* ``--server`` <URL>
Specifies the URL of the `Koji`_ XMLRPC service the tool talks to.

View File

@ -1154,6 +1154,7 @@ def abipkgdiff(cmp_half1, cmp_half2):
cmd = [
abipkgdiff_tool,
'--dso-only' if global_config.dso_only else '',
'--private-dso' if global_config.private_dso else '',
'--self-check',
suppressions,
debuginfo_pkg1,
@ -1167,6 +1168,7 @@ def abipkgdiff(cmp_half1, cmp_half2):
'--show-identical-binaries' if global_config.show_identical_binaries else '',
'--no-default-suppression' if global_config.no_default_suppr else '',
'--dso-only' if global_config.dso_only else '',
'--private-dso' if global_config.private_dso else '',
debuginfo_pkg1,
debuginfo_pkg2,
devel_pkg1,
@ -1457,6 +1459,12 @@ def build_commandline_args_parser():
dest='dso_only',
help='Compare the ABI of shared libraries only. If this option is not '
'provided, the tool compares the ABI of all ELF binaries.')
parser.add_argument(
'--private-dso',
required=False,
action='store_true',
dest='private_dso',
help='Compare the ABI of shared libraries that are private to the package')
parser.add_argument(
'--debug',
required=False,