rawhide report: 20051110 changes

Tomas Mraz tmraz at redhat.com
Thu Nov 10 20:50:00 UTC 2005


On Thu, 2005-11-10 at 22:35 +0200, Avi Kivity wrote:
> Thomas M Steenholdt wrote:
> 
> > Avi Kivity wrote:
> >
> >> Build System wrote:
> >>
> >>> - Rebuild due to mysql 5.0 update and openssl library update.
> >>>
> >>>  
> >>>
> >> we see rebuilds very often due to library updates. are they strictly 
> >> necessary (i.e., do the libraries break binary compatbility so often?)
> >>
> >> much of the advantages of shared libraries are lost this way. we have 
> >> to update a ton of packages, and those which are forgotten (or 
> >> locally built) break.
> >>
> >
> > sometimes updating a shared library breaks the interface 
> 
> if the interface was broken. surly more than a rebuild would be 
> required. the application using the library would need to be updated.
No, there is difference between breaking source code compatibility and binary
compatibility. For example in a new version of a library some #defined
macro names can be changed -> source code isn't compilable anymore, but
ABI isn't broken. OTOH when some member (which is optional and so
behaviour doesn't change if it isn't set) is added to a struct which is
allocated by the caller of the library API -> ABI is broken but source
code can be recompiled and no problem appears.

> > or possibly even adds new features that we want. 
> 
> if we use the new feaures we need to update the code in the library's 
> users. if we don't, why is a rebuild required?
> 
> > In these cases rebuild is required. Most times, it's when updating to 
> > a new version of a lib, openssl 0.9.7 - 0.9.8 which i believe is what 
> > has happened here. (haven't checked though)
> >
> seems a lot of churn for a minor release. library authors should care 
> more. designing binary compatible capable interfaces is not that hard.
Please report that to openssl upstream.

-- 
Tomas Mraz <tmraz at redhat.com>




More information about the fedora-devel-list mailing list