[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: gcc 3.2 transition in unstable

> On Wed, Jan 08, 2003 at 01:28:58PM -0500, H. S. Teoh wrote:
>> Umm... if I were an upstream author, I'd choose the soname based on the
>> API.
> Then you're not fit to be an upstream library author, because you don't
> understand that an ABI can change *as a result of changes you make*,

Upstream authors have no control over what compiler will other people use to 
compile the sources. The only way for upstream author to encode ABI into 
(upstream author selected) soname is to requre particular version of 
particular compiler to build the software. This is not a good thing to make 
upstream source package incompatable with all versions off all compilers 
but a single one.

Well, you may want upstream author to autodetect ABI version and have a 
table of sonames corresponding to every known ABI version. But this also 
seems to be ugly. When a new ABI (e.g. g++ 3.3, 3.4, ..., or non-gnu tools) 
will happen, ALL upstream authours will have to bother with it, which I 
believe is not their job.

Instead, the tools that builds *.so should do the trick, e.g. automatically 
add an ABI label to the soname of generated .so file when a command-line 
option is given.

Another related question is objects in statis libraries files (*.a) ...

Reply to: