httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Andrey Ponomarenko <aponomare...@rosalab.ru>
Subject Re: ABI compatibiliy checker
Date Mon, 07 Jul 2014 07:09:18 GMT

Joe Orton wrote:
> On Mon, Jun 30, 2014 at 06:16:52PM +0400, Andrey Ponomarenko wrote:
>> See also ABI tracker for httpd:
>> http://upstream-tracker.org/versions/httpd.html
>>
>> The tracker uses ABI compliance checker tool to create reports. The
>> report between latest git and previous release version is updated
>> daily:
>> http://upstream-tracker.org/compat_reports/httpd/2.4.9_to_current/abi_compat_report.html
> Andrey, would it be possible to add a report for the diff between:
>
>    "the latest release" ... and "the current 2.4.x branch"
>
> The branch name is simply "2.4.x" if you're pulling from git.  That
> would be most useful, so we can see if any commit has broken backwards
> compat prior to a new 2.4.x release.
>
> Regardless - upstream-tracker.org is a very nice tool - thanks!

Joe,

the branch has been changed to 2.4.x: 
http://upstream-tracker.org/versions/httpd.html

Please notify me when it should be changed again.

However, you can set up your local tracker using the basic 
abi-compliance-checker tool in order to not to depend on the online 
service: https://github.com/lvc/abi-compliance-checker

In this case you need XML descriptors of two library versions:

<desc>

<version>
     2.4.9
</version>

<headers>
     {RELPATH}/include
</headers>

<libs>
     {RELPATH}/lib/libhttpd.so
</libs>

<include_preamble>
     unistd.h
     http_core.h
</include_preamble>

<skip_headers>
     mod_dbd.h
     mod_cache.h
</skip_headers>

<gcc_options>
     -D_LARGEFILE64_SOURCE
</gcc_options>

</desc>

{RELPATH} in this XML-descriptor is the path to the install tree of 
httpd and it's replaced by the -relpath1 and -relpath2 options of the 
tool when you compare two versions of the library (the reference version 
and the latest one):

$> abi-compliance-checker -l httpd -old descriptor.xml -new 
descriptor.xml -v1 2.4.9 -v2 2.4.x -relpath1 {INSTALL_TREE_2.4.9_PATH} 
-relpath2 {INSTALL_TREE_2.4.x_PATH}

You can also create a "dump" of the library reference ABI version (say, 
2.4.9):

$> abi-compliance-checker -l httpd -dump descriptor.xml -relpath 
{INSTALL_TREE_2.4.9_PATH} -vnum 2.4.9

And then create ABI dump of a new version and compare it with the 
reference one:

$> abi-compliance-checker -l httpd -dump descriptor.xml -relpath 
{INSTALL_TREE_2.4.x_PATH} -vnum 2.4.x
$> abi-compliance-checker -l httpd -old ABI_2.4.9.dump -new ABI_2.4.x.dump

Thanks.

-- 
Andrey Ponomarenko, NTC IT ROSA.
http://www.rosalab.com/


Mime
View raw message