[oe] [RFC] Bring PREFERRED_LIBC to all distros

Tom Rini trini at embeddedalley.com
Mon Apr 27 14:19:43 UTC 2009


Hey all.  I've created a new branch, trini/add-libc-overrides which does
the following:
- Make every distro declare PREFERRED_LIBC, either outright or
  overridable.
- For Angstrom/foonas have DISTROVAR ?= ${PREFERRED_LIBC},
  PREFERRED_LIBC ?= default
- Add conf/distro/include/{eglibc,glibc,uclibc}.inc that have:
  - Add 'glibc' to OVERRIDES for eglibc/glibc and 'uclibc' for
    uclibc.inc
  - Default providers.
  NOTE: ${TARGET_PREFIX} includes ${TARGET_VENDOR} so ...
- Switch all distros to have:
  require conf/distro/include/${PREFERED_LIBC}.inc
  - Clean up distro-specific includes, and sane-toolchain.inc a little
    bit by removing all of the PREFERRED_PROVIDER stuff it no longer
    needs.
- For glibc*.bb older than 2.5, add in some missing RPROVIDES.

That last change was required so that a number of distros would parse
without trying to build say both glibc_2.3.3 and glibc_2.9 (for
virtual-libc-dev) when I ran bitbake -g meta-toolchain minimal-image.

The next step, once something like this goes in, would be to change all
of the overrides that test for uclibc (or glibc) from
linux/linux-gnueabi vs linux-uclibc/linux-uclibcgnueabi to just
linux_glibc vs linux_uclibc.

That branch has been tested with bitbake -g meta-toolchain minimal image
for every distro for nslu2be nslu2le and beagleboard (arm/armeb/newer
arm) before and after, and the only differences are the stuff that now
parses thanks to the glibc changes.  I've got a loop going now with
qemux86 db1200 and mpc8313e-rdb but don't expect any problems.  I'll be
following up with the patches shortly.

-- 
Tom Rini




More information about the Openembedded-devel mailing list