diff options
author | Andrey Ponomarenko <andrewponomarenko@yandex.ru> | 2016-10-04 19:34:32 +0300 |
---|---|---|
committer | Andrey Ponomarenko <andrewponomarenko@yandex.ru> | 2016-10-04 19:34:32 +0300 |
commit | 07f223cedb7cb2c5d324c6ac139f6843d35a20fd (patch) | |
tree | 465034fd09368d62bba44c6e05ce2269832c04a5 | |
parent | c6656fcc95ffc7296d8a0fea11a95dec6ae5af93 (diff) | |
download | abi-dumper-07f223cedb7cb2c5d324c6ac139f6843d35a20fd.tar.gz |
Released 0.99.18. Check for Universal ctags.
-rw-r--r-- | INSTALL | 4 | ||||
-rw-r--r-- | README | 8 | ||||
-rw-r--r-- | abi-dumper.pl | 9 |
3 files changed, 14 insertions, 7 deletions
@@ -6,8 +6,8 @@ All rights reserved. RELEASE INFORMATION Project: ABI Dumper -Version: 0.99.17 -Date: 2016-08-15 +Version: 0.99.18 +Date: 2016-10-04 This file explains how to install and setup environment @@ -4,16 +4,16 @@ NAME: The tool is intended to be used with ABI Compliance Checker tool for tracking ABI changes of a C/C++ library or kernel module. - The tool is developed by Andrey Ponomarenko: http://abi-laboratory.pro/ + The tool is developed by Andrey Ponomarenko: https://abi-laboratory.pro/ INSTALL: sudo make install prefix=/usr REQUIRES: - Perl 5 (5.8 or newer) + Perl 5 Elfutils (eu-readelf) - Vtable Dumper (1.0 or newer, https://github.com/lvc/vtable-dumper) - Universal Ctags + Vtable Dumper >= 1.1 (https://github.com/lvc/vtable-dumper) + Universal Ctags (https://github.com/universal-ctags/ctags) USAGE: abi-dumper libTest.so -o ABI.dump diff --git a/abi-dumper.pl b/abi-dumper.pl index d6dcb53..a1c8bc0 100644 --- a/abi-dumper.pl +++ b/abi-dumper.pl @@ -603,7 +603,7 @@ sub read_Symbols($) my $Dbg = ($Lib_Name=~/\.debug\Z/); if(not check_Cmd($EU_READELF)) { - exitStatus("Not_Found", "can't find \"eu-readelf\""); + exitStatus("Not_Found", "can't find \"eu-readelf\" from Elfutils"); } my %SectionInfo; @@ -5223,6 +5223,13 @@ sub detectPublicSymbols($) if(not check_Cmd($CTAGS)) { exitStatus("Not_Found", "can't find \"$CTAGS\""); } + + if(my $CtagsVer = `$CTAGS --version 2>&1`) + { + if($CtagsVer!~/Universal/i) { + printMsg("ERROR", "requires Universal Ctags to work properly"); + } + } } $PublicSymbols_Detected = 1; |