Guillem Jover wrote:
> Hi!
>
> On Thu, 2009-08-06 at 18:38:41 +0400, Andrey Ponomarenko wrote:
>   
>>     Colleagues, I'm software engineer from Institute for System
>> Programing of Russian Academy of Sciences and we are developing a free
>> lightweight tool for checking backward/forward binary compatibility of
>> shared C/C++ libraries in OS Linux. It checks interface signatures and
>> data type definitions in two library versions (headers and shared
>> objects) and searches ABI changes that may lead to incompatibility.
>> We have released 1.1 version of this tool and we'd like you to consider
>> its usefulness for your project.
>>     The wiki-page with the latest release of binary compatibility checker is
>> http://ispras.linux-foundation.org/index.php/ABI_compliance_checker
>>     
>
> How does this compare with projects like icheck or abicheck?
>
> regards,
> guillem
>
>
>   

1) ABIcheck was intended for entirely other purposes. ABIcheck is a tool
for checking an application's compliance with a library's ABI.
ABI-compliance-checker was intended for checking backward binary
compatibility of a library. For more information about icheck see:
http://abicheck.sourceforge.net/

2) icheck was intended for the same purposes as an
ABI-compliance-checker, but icheck has many drawbacks:
    a) icheck does not support C++ libraries (or C libraries with C++
parts).
    b) icheck does not divide ABI and API changes because it does not
check shared objects.
    c)  icheck contains 467 files and 61 sub-folders;
ABI-compliance-checker is a single file.
    d) icheck searches changes in `gcc -E -x c-header header_name.h`
output, that represent a header after preprocessing - it is a very
inconveniently  method because it need a lot of code for parsing header
(about 750 kb of code); ABI-compliance-checker searches differences in
the `gcc -fdump-translation-unit header_name.h` output, that represents
a syntax tree of the header files.
    e) as described in the documentation
(http://www.digipedia.pl/man/icheck.1.html) icheck need three runs to
get compatibility report - it is not easy.  
    f) icheck compliance report is a plain text file,
ABI-compliance-checker provide convenient report in HTML format.
    g) icheck 0.9.7 failed to run from the first time on my OpenSUSE11.1
with error message like "Can't locate CParse/Parser/PerlXS.pm".

Reply via email to