blob: 8a9f992398f44235fd3c79fcc6473b99bf41b5eb [file] [log] [blame]
Andrey Ponomarenkob3ffe4c2013-05-24 14:31:47 +04001NAME:
Andrey Ponomarenkof85c7fd2015-12-11 23:55:02 +03002 ABI Dumper a tool to dump ABI of an ELF object containing DWARF debug info.
Andrey Ponomarenkob3ffe4c2013-05-24 14:31:47 +04003
4 The tool is intended to be used with ABI Compliance Checker tool for tracking
5 ABI changes of a C/C++ library or kernel module.
Andrey Ponomarenko9b1ec762015-09-08 15:33:41 +03006
7 The tool is developed by Andrey Ponomarenko: http://abi-laboratory.pro/
Andrey Ponomarenkob3ffe4c2013-05-24 14:31:47 +04008
9INSTALL:
Andrey Ponomarenko9b1ec762015-09-08 15:33:41 +030010 sudo make install prefix=/usr
Andrey Ponomarenkoeb237872016-09-07 19:08:12 +030011
Andrey Ponomarenkob3ffe4c2013-05-24 14:31:47 +040012REQUIRES:
Andrey Ponomarenkob3ffe4c2013-05-24 14:31:47 +040013 Perl 5 (5.8 or newer)
Andrey Ponomarenkoedb52962015-04-12 19:14:06 +030014 Elfutils (eu-readelf)
Andrey Ponomarenkob3ffe4c2013-05-24 14:31:47 +040015 Vtable Dumper (1.0 or newer, https://github.com/lvc/vtable-dumper)
Andrey Ponomarenko7c0875f2016-05-10 17:34:54 +030016 Universal Ctags
Andrey Ponomarenkob3ffe4c2013-05-24 14:31:47 +040017
18USAGE:
19 abi-dumper libTest.so -o ABI.dump
20 abi-dumper Module.ko.debug
Andrey Ponomarenkoeb237872016-09-07 19:08:12 +030021
Andrey Ponomarenkob3ffe4c2013-05-24 14:31:47 +040022EXAMPLES:
23 abi-dumper lib/libssh.so.3
24 abi-dumper drm/nouveau/nouveau.ko.debug
Andrey Ponomarenkoeb237872016-09-07 19:08:12 +030025
Andrey Ponomarenkob3ffe4c2013-05-24 14:31:47 +040026NOTE:
Andrey Ponomarenko81cb4d72015-11-12 16:15:12 +030027 Input objects should be compiled with -g -Og additional options to contain DWARF debug info.
Andrey Ponomarenkof85c7fd2015-12-11 23:55:02 +030028
29FILTER PUBLIC ABI:
30 abi-dumper libTest.so -public-headers PATH
Andrey Ponomarenkofef4a9a2016-07-25 17:23:00 +030031 PATH path to the install tree of a library
Andrey Ponomarenkof85c7fd2015-12-11 23:55:02 +030032
Andrey Ponomarenkoeb237872016-09-07 19:08:12 +030033ABI CHECK:
34 abi-dumper libTest.so.0 -o ABIv0.dump
35 abi-dumper libTest.so.1 -o ABIv1.dump
36 abi-compliance-checker -l libTest -old ABIv0.dump -new ABIv1.dump
37
Andrey Ponomarenkob3ffe4c2013-05-24 14:31:47 +040038COMPATIBILITY:
Andrey Ponomarenko0e9c78a2016-08-20 23:50:05 +030039 ABI Compliance Checker >= 1.99.24 (https://github.com/lvc/abi-compliance-checker)
Andrey Ponomarenkob3ffe4c2013-05-24 14:31:47 +040040
41ADV. USAGE:
Andrey Ponomarenkof85c7fd2015-12-11 23:55:02 +030042 For advanced usage, see output of --help option.