[uClibc] Re: [patch] Inform config.guess about the existence of uclibc.

Erik Andersen andersen at codepoet.org
Sun Jan 11 09:03:06 UTC 2004


On Sun Jan 11, 2004 at 02:39:48AM -0600, Rob Landley wrote:
> What will probably happen in practice is if a uclibc-based distro becomes 
> popular, its ABI will become standard.  Binaries will be "for uclibc debian", 
> or "for uclibc fedora".  We can largely punt on that.  config.guess really 
> shouldn't care TOO deeply since specific features can be tested for by 
> autoconf anyway.

In practice, this will tend to be an "everything plus the kitchen
sink" configuration, such as the one I use for my uClibc/debian
distro (http://people.debian.org/~andersee/)

At least for that system, the ABI is "the stuff enabled by the
uclibc .deb".  Changing the config for uClibc (for example to
disable pthreads) will require a painful rebuild of the whole
system.  So it would be reasonable for people to expect the ABI
to remain fairly constant.  Of course, those unreasonable uClibc
developers are planning on breaking the stdio ABI in the near
future.

> How tough is it to test the ABI at runtime with some kind of diagnostic 
> program or precompiled test suite?  (If nothing else, this would let people 
> tweak the ABI a bit themselves and see what causes binaries to need to be 
> recompiled.)  What kind of program would not only have good coverage but 
> would give you good failure messages?  ("Networking doesn't work", etc.)  How 
> big of a project would that be?

Ideally, we want to staticly link into every uClibc binary a ABI
identifier.  One method I can think of to do that would be to
make a /usr/lib/libc.so linker script (similar to the one
provided by glibc), and use that (i.e. a uclibc_nonshared.a
static library) to always link an ABI tag into each binary.  The
ABI tag would be something such as an unsigned long initialized
with a bitmask of ABI breaking options such as pthreads,
soft-float, locale, wchar, etc.

 -Erik

--
Erik B. Andersen             http://codepoet-consulting.com/
--This message was written using 73% post-consumer electrons--



More information about the uClibc mailing list