On Tue, Apr 10, 2012 at 8:15 PM, Mike Frysinger <vap...@gentoo.org> wrote:
> On Tuesday 10 April 2012 12:46:49 Michael Edwards wrote:
>> That way I can grandfather in binaries with ABI-ignorant
>> hard-coded library paths, and still handle ISA variants.  The
>> "extranoise" might be "neon", or "ssse3"
>
> aren't ISA variants handled already by glibc ?  that's what the hwcaps stuff
> does -- you can put optimized versions in ISA-specific subdirs of the normal
> lib paths.  glibc will look for those first before falling back to the common
> libs.
> -mike

I stand corrected with regard to non-ABI-altering ISA variations --
except for the nightmare that is Bionic libc, which is out of scope
for the present discussion.  Googling reminds me that Ulrich covered
all this ground in his original document for Linaro (which appears to
have moved onto the Debian wiki as
http://wiki.debian.org/Multiarch/LibraryPathOverview).

So this really is about nothing but freezing the full ABI name (vs. a
two-character suffix) into the path to ld.so.  And, of course, the
implied commitment to resolve any residual ambiguities in the ABI
(__cxa_pure_virtual(), anyone?) and to prioritize spec conformance
over bug-for-bug compatibility
(https://bugs.launchpad.net/gcc-linaro/+bug/952565).  When you give
something a detailed name, people are more likely to assume that it
has a detailed spec, interchangeable among distros and over time.  For
better or for worse, perpetuating the /lib?? kludge doesn't give that
impression.

Cheers,
- Michael

Reply via email to