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

Re: GCC 3.2 transition

(first-time poster, beware of possible stupidity)

I'll throw in my views on the subject:

(1) If I understand correctly, SONAMEs are not meant to provide any
other metadata than a reference to the *library's* ABI. Using SONAMEs for
anything else, like which compiler the library was built with, will most
probably result in very broken behavior, because the upstream authors
have little way to ensure that their library with SONAME n will always
be built with compiler x but their library with SONAME m will always be
built with compiler y.

(2) If (binary) programs from outside the distribution are to work with
debian's libraries at all, the metadata about the compiler has to go
somewhere. I'm not worried about the transition within debian (which can
be some pain, too) but numerous third-party binaries that will probably
break even though compatibility for them could have been retained. This
rules out just replacing the old libraries with new ones compiled with
the new compiler.

(3) The easiest way to have metadata about the compiler version is using
a separate directory.

(4) If the libraries are linked against by their SONAMEs (making them
indistinguishable), but the compiler version used in compiling the
program is deducible, hacking the linker seems a plausible solution
(akin to having two linkers in libc transition).

Just my twopenny


Reply to: