Subject: Re: safe make replace?
To: NetBSD Packages Technical Discussion List <tech-pkg@NetBSD.ORG>
From: Chris Wareham <chriswareham@chriswareham.demon.co.uk>
List: tech-pkg
Date: 01/25/2005 12:32:50
Greg A. Woods wrote:
> [ On Tuesday, January 18, 2005 at 10:44:47 (+0000), Chris Wareham wrote: ]
> 
>>Subject: Re: safe make replace?
>>
>>It's safe to do a "make replace" on a library when the new version is
>>binary compatible with the old one. For packages that use libtool and /
>>or library versioning properly it's generally safe to do a make replace
>>when only the patchlevel changes (for example, GTK+ going from 2.6.0 to
>>2.6.1). For some libraries, changes in the minor version number are also
>>OK (again using GTK+ as an example, the jump from 2.4.x to 2.6.0 was
>>binary compatible).
> 
> 
> If you're _very_ lucky.
> 
> Most developers these days still don't seem to have any clue what it
> means to have a truly backwards compatible "Application _Binary_
> Interface", though I don't blame them much because it's a rather
> difficult and complex problem, and one that is not really facilitated by
> most high-level language development tools commonly used by application
> developers, including, especially, libtool.
> 
> Just because the API did not change doesn't mean the ABI did not change!  :-)
> 

The GNOME people seem to be pretty good at releasing new versions of
their libraries without breaking binary compatability. Some other
projects don't even try though - a particular headache for me is MICO (a
CORBA suite for C++), where no attempt is made to be binary compatible
between releases, but the developers only bump the "micro" version of
the shared libraries each time.

Chris