summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Rini <trini@embeddedalley.com>2009-04-29 12:07:09 -0400
committerTom Rini <trini@embeddedalley.com>2009-05-04 12:22:26 -0400
commitd59fc6ce4782b882620fbaa60d682d29e63d0731 (patch)
tree17424ca72d457a3edfbc13ed66854c9d52c8a745
parent501e733081d00bc90b9e830c04cbe03c5332445d (diff)
All distros: Bring in conf/distro/include/${LIBC}.inc
With minimal/minimal-uclibc we have to do a little rework so that minimal-uclibc can override the main distro. Acked-by: Leon Woestenberg <leon@sidebranch.com> Acked-by: Mike Westerhof <mwester@dls.net> Signed-off-by: Tom Rini <trini@embeddedalley.com>
-rw-r--r--conf/distro/asusoe.conf1
-rw-r--r--conf/distro/celinux-test.conf6
-rw-r--r--conf/distro/chinook-compat.conf6
-rw-r--r--conf/distro/gmustix.conf2
-rw-r--r--conf/distro/include/angstrom-2007-for-openmoko.inc1
-rw-r--r--conf/distro/include/angstrom-eglibc.inc13
-rw-r--r--conf/distro/include/angstrom-glibc.inc16
-rw-r--r--conf/distro/include/angstrom-uclibc.inc9
-rw-r--r--conf/distro/include/angstrom-uclinux-uclibc.inc5
-rw-r--r--conf/distro/include/sane-toolchain-eglibc.inc20
-rw-r--r--conf/distro/include/sane-toolchain-glibc.inc17
-rw-r--r--conf/distro/include/sane-toolchain-uclibc.inc8
-rw-r--r--conf/distro/include/sane-toolchain-uclinux-uclibc.inc4
-rw-r--r--conf/distro/include/sane-toolchain.inc7
-rw-r--r--conf/distro/include/slugos.inc7
-rw-r--r--conf/distro/include/uclibc.inc2
-rw-r--r--conf/distro/jlime-2009.1.conf8
-rw-r--r--conf/distro/jlime-donkey.conf3
-rw-r--r--conf/distro/jlime-henchman.conf8
-rw-r--r--conf/distro/jlime-mongo.conf8
-rw-r--r--conf/distro/jlime-shrek.conf2
-rw-r--r--conf/distro/mamona.conf12
-rw-r--r--conf/distro/minimal-uclibc.conf10
-rw-r--r--conf/distro/minimal.conf10
-rw-r--r--conf/distro/nylon.conf2
-rw-r--r--conf/distro/openmn.conf1
-rw-r--r--conf/distro/openmoko.conf1
-rw-r--r--conf/distro/openprotium.conf8
-rw-r--r--conf/distro/oplinux-uclibc.conf3
-rw-r--r--conf/distro/oplinux.conf16
-rw-r--r--conf/distro/slugos.conf5
-rw-r--r--conf/distro/ucslugc.conf1
-rw-r--r--conf/distro/wrt54oe.conf2
33 files changed, 43 insertions, 181 deletions
diff --git a/conf/distro/asusoe.conf b/conf/distro/asusoe.conf
index ecda37f8cf..efc4efccd4 100644
--- a/conf/distro/asusoe.conf
+++ b/conf/distro/asusoe.conf
@@ -8,6 +8,7 @@ DISTRO_VERSION = "0.1-alpha"
TARGET_OS = "linux-uclibc"
TARGET_SYS = "${TARGET_ARCH}-uclibc"
LIBC = "uclibc"
+require conf/distro/include/${LIBC}.inc
CROSS_DIR = "/opt/brcm/hndtools-mipsel-uclibc"
diff --git a/conf/distro/celinux-test.conf b/conf/distro/celinux-test.conf
index a3a0bc4f70..fbc96e19bf 100644
--- a/conf/distro/celinux-test.conf
+++ b/conf/distro/celinux-test.conf
@@ -39,7 +39,6 @@ PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}gcc-intermediate:gcc-cross-inte
PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}gcc:gcc-cross"
PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}g++:gcc-cross"
PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}binutils:binutils-cross"
-PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}libc-for-gcc:glibc"
PREFERRED_VERSION_binutils = "2.16"
PREFERRED_VERSION_binutils-cross = "2.16"
@@ -50,12 +49,9 @@ PREFERRED_VERSION_gcc-cross-initial = "3.4.4"
PREFERRED_VERSION_gcc-cross-intermediate = "3.4.4"
LIBC = "glibc"
+require conf/distro/include/${LIBC}.inc
PREFERRED_VERSION_glibc = "2.3.5+cvs20050627"
-# glibc provides iconv and intl
-PREFERRED_PROVIDER_virtual/libiconv = "glibc"
-PREFERRED_PROVIDER_virtual/libintl = "glibc"
-
#
# omap5912osk settings
#
diff --git a/conf/distro/chinook-compat.conf b/conf/distro/chinook-compat.conf
index e7350484e2..8fefbbce8a 100644
--- a/conf/distro/chinook-compat.conf
+++ b/conf/distro/chinook-compat.conf
@@ -50,12 +50,6 @@ PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}gcc-intermediate:gcc-cross-inte
PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}gcc:gcc-cross"
PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}g++:gcc-cross"
-PREFERRED_PROVIDER_virtual/libc = "glibc"
-
-# NPTL stuff
-PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}libc-for-gcc = "glibc"
-PREFERRED_PROVIDER_virtual/arm-linux-gnueabi-libc-for-gcc = "glibc"
-
PREFERRED_PROVIDER_virtual/arm-linux-gnueabi-binutils = "binutils-cross"
PREFERRED_PROVIDER_linux-libc-header = "linux-libc-headers"
PREFERRED_PROVIDER_virtual/libx11 = "libx11"
diff --git a/conf/distro/gmustix.conf b/conf/distro/gmustix.conf
index 106b16e87e..17f805617a 100644
--- a/conf/distro/gmustix.conf
+++ b/conf/distro/gmustix.conf
@@ -4,6 +4,7 @@
INHERIT += "package_tar package_ipk"
LIBC = "uclibc"
+require conf/distro/include/${LIBC}.inc
TARGET_OS = "linux-uclibc"
TARGET_FPU = "soft"
IMAGE_FSTYPES = "jffs2"
@@ -12,7 +13,6 @@ PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}gcc-initial:gcc-cross-initial"
PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}gcc-intermediate:gcc-cross-intermediate"
PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}gcc:gcc-cross"
PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}g++:gcc-cross"
-PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}libc-for-gcc:uclibc"
PREFERRED_PROVIDER_classpath = "classpath-minimal"
diff --git a/conf/distro/include/angstrom-2007-for-openmoko.inc b/conf/distro/include/angstrom-2007-for-openmoko.inc
index dcd49980eb..1deb85d7f7 100644
--- a/conf/distro/include/angstrom-2007-for-openmoko.inc
+++ b/conf/distro/include/angstrom-2007-for-openmoko.inc
@@ -137,7 +137,6 @@ PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}gcc = "gcc-cross"
PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}g++ = "gcc-cross"
#Set preferred provider for the C library that is used to build the crosscompiler (NPTL voodoo)
-PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}libc-for-gcc = "glibc"
PREFERRED_PROVIDER_virtual/arm-angstrom-linux-gnueabi-libc-for-gcc = "glibc"
PREFERRED_PROVIDER_virtual/armeb-angstrom-linux-gnueabi-libc-for-gcc = "glibc"
PREFERRED_PROVIDER_virtual/powerpc-angstrom-linux-libc-for-gcc = "glibc"
diff --git a/conf/distro/include/angstrom-eglibc.inc b/conf/distro/include/angstrom-eglibc.inc
index c0d87a4ff5..655cf9d50e 100644
--- a/conf/distro/include/angstrom-eglibc.inc
+++ b/conf/distro/include/angstrom-eglibc.inc
@@ -1,16 +1,5 @@
# eglibc:
-PREFERRED_PROVIDER_virtual/libiconv = "eglibc"
-PREFERRED_PROVIDER_virtual/libintl = "eglibc"
-PREFERRED_PROVIDER_virtual/libc = "eglibc"
-PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}libc-initial = "eglibc-initial"
-
-PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}libc-for-gcc = "eglibc"
-PREFERRED_PROVIDER_virtual/arm${TARGET_VENDOR}-linux-gnueabi-libc-for-gcc = "eglibc"
-PREFERRED_PROVIDER_virtual/armeb${TARGET_VENDOR}-linux-gnueabi-libc-for-gcc = "eglibc"
-PREFERRED_PROVIDER_virtual/arm${TARGET_VENDOR}-linux-libc-for-gcc = "eglibc"
-PREFERRED_PROVIDER_virtual/powerpc${TARGET_VENDOR}-linux-libc-for-gcc = "eglibc"
-PREFERRED_PROVIDER_virtual/mipsel${TARGET_VENDOR}-linux-libc-for-gcc = "eglibc"
-PREFERRED_PROVIDER_virtual/sparc${TARGET_VENDOR}-linux-libc-for-gcc = "eglibc"
+require conf/distro/include/eglibc.inc
TARGET_OS = "linux${@['','-gnueabi'][bb.data.getVar('TARGET_ARCH',d,1) in ['arm', 'armeb'] and bb.data.getVar('MACHINE',d) not in ['collie','h3600', 'h3800', 'simpad', 'htcwallaby']]}"
diff --git a/conf/distro/include/angstrom-glibc.inc b/conf/distro/include/angstrom-glibc.inc
index b14f880328..5df77d8c74 100644
--- a/conf/distro/include/angstrom-glibc.inc
+++ b/conf/distro/include/angstrom-glibc.inc
@@ -1,19 +1,7 @@
# glibc:
-PREFERRED_PROVIDER_virtual/libiconv ?= "glibc"
-PREFERRED_PROVIDER_virtual/libintl ?= "glibc"
-PREFERRED_PROVIDER_virtual/libc ?= "glibc"
-PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}libc-initial ?= "glibc-initial"
-PREFERRED_PROVIDER_linux-libc-headers ?= "linux-libc-headers"
-
-#Set preferred provider for the C library that is used to build the crosscompiler (NPTL voodoo)
-PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}libc-for-gcc = "glibc"
-PREFERRED_PROVIDER_virtual/arm-angstrom-linux-gnueabi-libc-for-gcc = "glibc"
-PREFERRED_PROVIDER_virtual/armeb-angstrom-linux-gnueabi-libc-for-gcc = "glibc"
-PREFERRED_PROVIDER_virtual/arm-angstrom-linux-libc-for-gcc = "glibc"
-PREFERRED_PROVIDER_virtual/powerpc-angstrom-linux-libc-for-gcc = "glibc"
-PREFERRED_PROVIDER_virtual/mipsel-angstrom-linux-libc-for-gcc = "glibc"
-PREFERRED_PROVIDER_virtual/sparc-angstrom-linux-libc-for-gcc = "glibc"
+require conf/distro/include/glibc.inc
+PREFERRED_PROVIDER_linux-libc-headers ?= "linux-libc-headers"
TARGET_OS = "linux${@['','-gnueabi'][bb.data.getVar('TARGET_ARCH',d,1) in ['arm', 'armeb'] and bb.data.getVar('MACHINE',d) not in ['collie','h3600', 'h3800', 'simpad', 'htcwallaby']]}"
diff --git a/conf/distro/include/angstrom-uclibc.inc b/conf/distro/include/angstrom-uclibc.inc
index 86a9afd465..3079e0d365 100644
--- a/conf/distro/include/angstrom-uclibc.inc
+++ b/conf/distro/include/angstrom-uclibc.inc
@@ -1,12 +1,5 @@
# uclibc:
-#fix some iconv issues, needs to be adjusted when doing uclibc builds
-PREFERRED_PROVIDER_virtual/libc = "uclibc"
-PREFERRED_PROVIDER_virtual/libiconv ?= "libiconv"
-PREFERRED_PROVIDER_virtual/libintl ?= "gettext"
-PREFERRED_PROVIDER_virtual/libintl_avr32 = "proxy-libintl"
-PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}libc-for-gcc = "uclibc"
-PREFERRED_PROVIDER_virtual/arm-angstrom-linux-uclibcgnueabi-libc-for-gcc = "uclibc-initial"
-PREFERRED_PROVIDER_virtual/armeb-angstrom-linux-uclibcgnueabi-libc-for-gcc = "uclibc-initial"
+require conf/distro/include/uclibc.inc
PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}binutils = "binutils-cross"
PREFERRED_PROVIDER_linux-libc-headers = "linux-libc-headers"
diff --git a/conf/distro/include/angstrom-uclinux-uclibc.inc b/conf/distro/include/angstrom-uclinux-uclibc.inc
index 68ad145879..c3f908c2c4 100644
--- a/conf/distro/include/angstrom-uclinux-uclibc.inc
+++ b/conf/distro/include/angstrom-uclinux-uclibc.inc
@@ -1,8 +1,5 @@
# uclibc:
-#fix some iconv issues, needs to be adjusted when doing uclibc builds
-PREFERRED_PROVIDER_virtual/libc = "uclibc"
-PREFERRED_PROVIDER_virtual/libiconv ?= "libiconv"
-PREFERRED_PROVIDER_virtual/libintl ?= "gettext"
+require conf/distro/include/uclibc.inc
USE_NLS ?= "no"
USE_NLS_glib-2.0 = "yes"
diff --git a/conf/distro/include/sane-toolchain-eglibc.inc b/conf/distro/include/sane-toolchain-eglibc.inc
index e780349137..1b0d49316d 100644
--- a/conf/distro/include/sane-toolchain-eglibc.inc
+++ b/conf/distro/include/sane-toolchain-eglibc.inc
@@ -1,26 +1,6 @@
# Originally brought to you by the Angstrom Distribution
# eglibc:
-PREFERRED_PROVIDER_virtual/libiconv = "eglibc"
-PREFERRED_PROVIDER_virtual/libintl = "eglibc"
-PREFERRED_PROVIDER_virtual/libc = "eglibc"
-PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}libc-initial = "eglibc-initial"
-
-PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}libc-for-gcc = "eglibc"
-PREFERRED_PROVIDER_virtual/arm${TARGET_VENDOR}-linux-gnueabi-libc-for-gcc = "eglibc"
-PREFERRED_PROVIDER_virtual/armeb${TARGET_VENDOR}-linux-gnueabi-libc-for-gcc = "eglibc"
-PREFERRED_PROVIDER_virtual/arm${TARGET_VENDOR}-linux-libc-for-gcc = "eglibc"
-PREFERRED_PROVIDER_virtual/powerpc${TARGET_VENDOR}-linux-libc-for-gcc = "eglibc"
-PREFERRED_PROVIDER_virtual/mipsel${TARGET_VENDOR}-linux-libc-for-gcc = "eglibc"
-PREFERRED_PROVIDER_virtual/sparc${TARGET_VENDOR}-linux-libc-for-gcc = "eglibc"
-
-TARGET_OS = "linux${@['','-gnueabi'][bb.data.getVar('TARGET_ARCH',d,1) in ['arm', 'armeb'] and bb.data.getVar('MACHINE',d) not in ['collie','h3600', 'h3800', 'simpad', 'htcwallaby']]}"
-
-#TARGET_OS = "linux-gnuspe"
-
-#mess with compiler flags to use -Os instead of -O2
-#Please see http://free-electrons.com/doc/embedded_linux_optimizations/img47.html for some more info
-# perl has some problems, see http://bugs.openembedded.net/show_bug.cgi?id=1616
# [23:00] oxo: glibc (any version) on sparc does not like (repeat me) "-Os"
FULL_OPTIMIZATION = "-fexpensive-optimizations -fomit-frame-pointer -frename-registers -Os"
diff --git a/conf/distro/include/sane-toolchain-glibc.inc b/conf/distro/include/sane-toolchain-glibc.inc
index b14f880328..b4da525fcf 100644
--- a/conf/distro/include/sane-toolchain-glibc.inc
+++ b/conf/distro/include/sane-toolchain-glibc.inc
@@ -1,19 +1,6 @@
-# glibc:
-PREFERRED_PROVIDER_virtual/libiconv ?= "glibc"
-PREFERRED_PROVIDER_virtual/libintl ?= "glibc"
-PREFERRED_PROVIDER_virtual/libc ?= "glibc"
-PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}libc-initial ?= "glibc-initial"
-PREFERRED_PROVIDER_linux-libc-headers ?= "linux-libc-headers"
-
-#Set preferred provider for the C library that is used to build the crosscompiler (NPTL voodoo)
-PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}libc-for-gcc = "glibc"
-PREFERRED_PROVIDER_virtual/arm-angstrom-linux-gnueabi-libc-for-gcc = "glibc"
-PREFERRED_PROVIDER_virtual/armeb-angstrom-linux-gnueabi-libc-for-gcc = "glibc"
-PREFERRED_PROVIDER_virtual/arm-angstrom-linux-libc-for-gcc = "glibc"
-PREFERRED_PROVIDER_virtual/powerpc-angstrom-linux-libc-for-gcc = "glibc"
-PREFERRED_PROVIDER_virtual/mipsel-angstrom-linux-libc-for-gcc = "glibc"
-PREFERRED_PROVIDER_virtual/sparc-angstrom-linux-libc-for-gcc = "glibc"
+# Originally brought to you by the Angstrom Distribution
+# glibc:
TARGET_OS = "linux${@['','-gnueabi'][bb.data.getVar('TARGET_ARCH',d,1) in ['arm', 'armeb'] and bb.data.getVar('MACHINE',d) not in ['collie','h3600', 'h3800', 'simpad', 'htcwallaby']]}"
diff --git a/conf/distro/include/sane-toolchain-uclibc.inc b/conf/distro/include/sane-toolchain-uclibc.inc
index 66ac81a508..394b52ae75 100644
--- a/conf/distro/include/sane-toolchain-uclibc.inc
+++ b/conf/distro/include/sane-toolchain-uclibc.inc
@@ -1,14 +1,6 @@
# Originally brought to you by the Angstrom Distribution
# uclibc:
-#fix some iconv issues, needs to be adjusted when doing uclibc builds
-PREFERRED_PROVIDER_virtual/libc = "uclibc"
-PREFERRED_PROVIDER_virtual/libiconv ?= "libiconv"
-PREFERRED_PROVIDER_virtual/libintl ?= "gettext"
-PREFERRED_PROVIDER_virtual/libintl_avr32 = "proxy-libintl"
-PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}libc-for-gcc = "uclibc"
-PREFERRED_PROVIDER_virtual/arm-${TARGET_VENDOR}-linux-uclibcgnueabi-libc-for-gcc = "uclibc-initial"
-PREFERRED_PROVIDER_virtual/armeb-${TARGET_VENDOR}-linux-uclibcgnueabi-libc-for-gcc = "uclibc-initial"
PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}binutils = "binutils-cross"
PREFERRED_PROVIDER_linux-libc-headers = "linux-libc-headers"
diff --git a/conf/distro/include/sane-toolchain-uclinux-uclibc.inc b/conf/distro/include/sane-toolchain-uclinux-uclibc.inc
index 85ccddf704..b757efb55a 100644
--- a/conf/distro/include/sane-toolchain-uclinux-uclibc.inc
+++ b/conf/distro/include/sane-toolchain-uclinux-uclibc.inc
@@ -1,10 +1,6 @@
# Originally brought to you by the Angstrom Distribution
# uclibc:
-#fix some iconv issues, needs to be adjusted when doing uclibc builds
-PREFERRED_PROVIDER_virtual/libc = "uclibc"
-PREFERRED_PROVIDER_virtual/libiconv ?= "libiconv"
-PREFERRED_PROVIDER_virtual/libintl ?= "gettext"
USE_NLS ?= "no"
USE_NLS_glib-2.0 = "yes"
diff --git a/conf/distro/include/sane-toolchain.inc b/conf/distro/include/sane-toolchain.inc
index f70e98ee17..dff4b9f081 100644
--- a/conf/distro/include/sane-toolchain.inc
+++ b/conf/distro/include/sane-toolchain.inc
@@ -115,9 +115,10 @@ TARGET_CC_ARCH_pn-cairo_armv5te = "-march=armv4t"
#############################################################################
# Can be "glibc", "eglibc" or "uclibc"
-PREFERRED_LIBC ?= "glibc"
-PSTAGE_EXTRAPATH = "${PREFERRED_LIBC}"
-require conf/distro/include/sane-toolchain-${PREFERRED_LIBC}.inc
+LIBC ?= "glibc"
+require conf/distro/include/${LIBC}.inc
+PSTAGE_EXTRAPATH = "${LIBC}"
+require conf/distro/include/sane-toolchain-${LIBC}.inc
# Generate locales on the buildsystem instead of on the target. Speeds up first boot, set to "1" to enable
PREFERRED_PROVIDER_qemu-native = "qemu-native"
diff --git a/conf/distro/include/slugos.inc b/conf/distro/include/slugos.inc
index 51ca9f34b1..b1b89b9870 100644
--- a/conf/distro/include/slugos.inc
+++ b/conf/distro/include/slugos.inc
@@ -120,13 +120,6 @@ PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}gcc-intermediate = "gcc-cross-interme
PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}gcc = "gcc-cross"
PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}g++ = "gcc-cross"
-#Set preferred provider for the C library that is used to build the crosscompiler (NPTL voodoo)
-PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}libc-for-gcc = "glibc"
-PREFERRED_PROVIDER_virtual/arm-linux-libc-for-gcc = "glibc"
-PREFERRED_PROVIDER_virtual/armeb-linux-libc-for-gcc = "glibc"
-PREFERRED_PROVIDER_virtual/arm-linux-gnueabi-libc-for-gcc = "glibc"
-PREFERRED_PROVIDER_virtual/armeb-linux-gnueabi-libc-for-gcc = "glibc"
-
# Set the preferred provider for a few toolchain-related items, otherwise
# these may be selected from the external-toolchain instead.
PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}binutils = "binutils-cross"
diff --git a/conf/distro/include/uclibc.inc b/conf/distro/include/uclibc.inc
index bb2e2be71f..979b7f1539 100644
--- a/conf/distro/include/uclibc.inc
+++ b/conf/distro/include/uclibc.inc
@@ -4,6 +4,8 @@ OVERRIDES .= ":uclibc"
# The things uclibc can provide. We default to wanting uclibc to provide them.
PREFERRED_PROVIDER_virtual/libiconv ?= "libiconv"
PREFERRED_PROVIDER_virtual/libintl ?= "gettext"
+#fix some iconv issues, needs to be adjusted when doing uclibc builds
+PREFERRED_PROVIDER_virtual/libintl_avr32 = "proxy-libintl"
PREFERRED_PROVIDER_virtual/libc = "uclibc"
PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}libc-initial = "uclibc-initial"
PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}libc-for-gcc = "uclibc"
diff --git a/conf/distro/jlime-2009.1.conf b/conf/distro/jlime-2009.1.conf
index 85d460d7a4..7488ddec3e 100644
--- a/conf/distro/jlime-2009.1.conf
+++ b/conf/distro/jlime-2009.1.conf
@@ -70,12 +70,8 @@ TARGET_FPU_arm = "soft"
TARGET_FPU_armeb = "soft"
LIBC = "glibc"
-PREFERRED_PROVIDER_virtual/libiconv = "glibc"
-PREFERRED_PROVIDER_virtual/libintl = "glibc"
-PREFERRED_PROVIDER_virtual/libc = "glibc"
-PREFERRED_PROVIDER_virtual/arm-linux-libc-for-gcc = "glibc"
-PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}-libc-for-gcc = "glibc"
-PREFERRED_PROVIDER_virtual/${TARGET_ARCH}-${TARGET_OS}-libc-for-gcc = "glibc"
+require conf/distro/include/${LIBC}.inc
+
PREFERRED_VERSION_linux-libc-headers = "2.6.18"
PREFERRED_VERSION_glibc = "2.5"
diff --git a/conf/distro/jlime-donkey.conf b/conf/distro/jlime-donkey.conf
index ff1c1cafc5..db964f00bc 100644
--- a/conf/distro/jlime-donkey.conf
+++ b/conf/distro/jlime-donkey.conf
@@ -24,8 +24,7 @@ PREFERRED_PROVIDERS += "virtual/${TARGET_PREFIX}gcc-intermediate:gcc-cross-inte
PREFERRED_PROVIDERS += "virtual/${TARGET_PREFIX}gcc:gcc-cross"
PREFERRED_PROVIDERS += "virtual/${TARGET_PREFIX}g++:gcc-cross"
LIBC = "glibc"
-PREFERRED_PROVIDER_virtual/sh3-linux-libc-for-gcc = "glibc"
-PREFERRED_PROVIDER_virtual/arm-linux-libc-for-gcc = "glibc"
+require conf/distro/include/${LIBC}.inc
#<>----------------------------------------------------------------->
#<> We want this so we can crosscompile the kernel using gcc 3.4.3
diff --git a/conf/distro/jlime-henchman.conf b/conf/distro/jlime-henchman.conf
index 8ae89017bb..14ea57d18c 100644
--- a/conf/distro/jlime-henchman.conf
+++ b/conf/distro/jlime-henchman.conf
@@ -69,12 +69,8 @@ TARGET_FPU_arm = "fixed"
TARGET_FPU_armeb = "fixed"
LIBC = "glibc"
-PREFERRED_PROVIDER_virtual/libiconv = "glibc"
-PREFERRED_PROVIDER_virtual/libintl = "glibc"
-PREFERRED_PROVIDER_virtual/libc = "glibc"
-PREFERRED_PROVIDER_virtual/arm-linux-libc-for-gcc = "glibc"
-PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}-libc-for-gcc = "glibc"
-PREFERRED_PROVIDER_virtual/${TARGET_ARCH}-${TARGET_OS}-libc-for-gcc = "glibc"
+require conf/distro/include/${LIBC}.inc
+
PREFERRED_VERSION_linux-libc-headers = "2.6.23"
PREFERRED_VERSION_glibc = "2.5"
diff --git a/conf/distro/jlime-mongo.conf b/conf/distro/jlime-mongo.conf
index 5eeb1dd049..2e6c43462e 100644
--- a/conf/distro/jlime-mongo.conf
+++ b/conf/distro/jlime-mongo.conf
@@ -70,12 +70,8 @@ TARGET_FPU_arm = "soft"
TARGET_FPU_armeb = "soft"
LIBC = "glibc"
-PREFERRED_PROVIDER_virtual/libiconv = "glibc"
-PREFERRED_PROVIDER_virtual/libintl = "glibc"
-PREFERRED_PROVIDER_virtual/libc = "glibc"
-PREFERRED_PROVIDER_virtual/arm-linux-libc-for-gcc = "glibc"
-PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}-libc-for-gcc = "glibc"
-PREFERRED_PROVIDER_virtual/${TARGET_ARCH}-${TARGET_OS}-libc-for-gcc = "glibc"
+require conf/distro/include/${LIBC}.inc
+
PREFERRED_VERSION_linux-libc-headers = "2.6.18"
PREFERRED_VERSION_glibc = "2.5"
diff --git a/conf/distro/jlime-shrek.conf b/conf/distro/jlime-shrek.conf
index 8f1b81a812..98844d76a4 100644
--- a/conf/distro/jlime-shrek.conf
+++ b/conf/distro/jlime-shrek.conf
@@ -16,7 +16,7 @@ PREFERRED_PROVIDERS = "virtual/${TARGET_PREFIX}gcc-intermediate:gcc-cross-inte
PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}gcc:gcc-cross"
PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}g++:gcc-cross"
LIBC = "glibc"
-PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}libc-for-gcc:glibc"
+require conf/distro/include/${LIBC}.inc
PREFERRED_PROVIDER_virtual/kernel = "jlime-kernel-${TARGET_ARCH}"
PREFERRED_PROVIDER_xserver = "xserver-kdrive"
diff --git a/conf/distro/mamona.conf b/conf/distro/mamona.conf
index e176b9c147..648d327677 100644
--- a/conf/distro/mamona.conf
+++ b/conf/distro/mamona.conf
@@ -54,23 +54,13 @@ PREFERRED_VERSION_binutils-cross-sdk ?= "2.18"
# *libc
TARGET_OS = "linux-gnueabi"
LIBC = "glibc"
-PREFERRED_PROVIDER_virtual/libiconv = "glibc"
-PREFERRED_PROVIDER_virtual/libintl = "glibc"
-PREFERRED_PROVIDER_virtual/libc = "glibc"
-PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}libc-initial ?= "glibc-initial"
+require conf/distro/include/${LIBC}.inc
PREFERRED_VERSION_glibc ?= "2.5"
PREFERRED_VERSION_glibc-intermediate ?= "2.5"
PREFERRED_VERSION_glibc-initial ?= "2.5"
PREFERRED_VERSION_uclibc ?= "0.9.29"
-# NPTL stuff
-PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}libc-for-gcc = "glibc"
-PREFERRED_PROVIDER_virtual/arm-mamona-linux-gnueabi-libc-for-gcc = "glibc"
-PREFERRED_PROVIDER_virtual/armeb-mamona-linux-gnueabi-libc-for-gcc = "glibc"
-PREFERRED_PROVIDER_virtual/arm-mamona-linux-libc-for-gcc = "glibc"
-PREFERRED_PROVIDER_virtual/i586-mamona-linux-libc-for-gcc = "glibc"
-
# Other Packages
# ==============
diff --git a/conf/distro/minimal-uclibc.conf b/conf/distro/minimal-uclibc.conf
index 94d671b258..34f92119b2 100644
--- a/conf/distro/minimal-uclibc.conf
+++ b/conf/distro/minimal-uclibc.conf
@@ -8,8 +8,6 @@
#@COMMENT: It bases on conservative settings and should always be buildable.
#-----------------------------------------------------------------------------
-require conf/distro/minimal.conf
-
#
# Header
#
@@ -21,12 +19,11 @@ DISTRO_NAME = "minimal-uclibc"
TARGET_OS = "linux-uclibc"
TARGET_FPU_arm = "soft"
TARGET_FPU_armeb = "soft"
-LIBC = "uclibc"
-PREFERRED_PROVIDER_virtual/libc = "uclibc"
-PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}libc-for-gcc = "uclibc"
PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}binutils = "binutils-cross"
PREFERRED_PROVIDER_linux-libc-headers = "linux-libc-headers"
-PREFERRED_PROVIDER_virtual/libiconv = "libiconv"
+
+# Override the default virtual/libintl
+LIBC = "uclibc"
PREFERRED_PROVIDER_virtual/libintl = "proxy-libintl"
USE_NLS ?= "no"
@@ -37,3 +34,4 @@ USE_NLS_gcc-cross = "no"
PREFERRED_VERSION_uclibc = "0.9.30"
PREFERRED_VERSION_uclibc-initial = "0.9.30"
+require conf/distro/minimal.conf
diff --git a/conf/distro/minimal.conf b/conf/distro/minimal.conf
index 35c3368451..f1f04e5e6a 100644
--- a/conf/distro/minimal.conf
+++ b/conf/distro/minimal.conf
@@ -10,7 +10,7 @@
#############################################################################
# NAME and VERSION
#############################################################################
-DISTRO_NAME = "minimal"
+DISTRO_NAME ?= "minimal"
DISTRO_VERSION = ".dev-snapshot-${SRCDATE}"
#DISTRO_TYPE = "release"
DISTRO_TYPE = "debug"
@@ -56,9 +56,9 @@ IPKG_VARIANT = "opkg-nogpg"
# IMAGES
#############################################################################
# Name the generated images in a sane way
-IMAGE_NAME = "${DISTRO_NAME}-${IMAGE_BASENAME}-${PREFERRED_LIBC}-${PREFERRED_PKG_FORMAT}-${DISTRO_VERSION}-${MACHINE}"
-CACHE ?= "${TMPDIR}/cache/${PREFERRED_LIBC}/${MACHINE}"
-DEPLOY_DIR ?= "${TMPDIR}/deploy/${PREFERRED_LIBC}"
+IMAGE_NAME = "${DISTRO_NAME}-${IMAGE_BASENAME}-${LIBC}-${PREFERRED_PKG_FORMAT}-${DISTRO_VERSION}-${MACHINE}"
+CACHE ?= "${TMPDIR}/cache/${LIBC}/${MACHINE}"
+DEPLOY_DIR ?= "${TMPDIR}/deploy/${LIBC}"
DEPLOY_DIR_IMAGE = "${DEPLOY_DIR}/images/${MACHINE}"
#############################################################################
@@ -70,7 +70,7 @@ MACHINE_KERNEL_VERSION = "2.6"
#############################################################################
# TOOLCHAIN
#############################################################################
-PREFERRED_LIBC = "glibc"
+LIBC ?= "glibc"
require conf/distro/include/sane-toolchain.inc
#############################################################################
diff --git a/conf/distro/nylon.conf b/conf/distro/nylon.conf
index ff98de0cd8..3670f725de 100644
--- a/conf/distro/nylon.conf
+++ b/conf/distro/nylon.conf
@@ -17,11 +17,11 @@ INHERIT += "package_ipk debian nylon-mirrors"
INHERIT += "linux-kernel-base"
LIBC = "glibc"
+require conf/distro/include/${LIBC}.inc
PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}gcc-initial:gcc-cross-initial"
PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}gcc-intermediate:gcc-cross-intermediate"
PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}gcc:gcc-cross"
PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}g++:gcc-cross"
-PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}libc-for-gcc:glibc"
PREFERRED_PROVIDERS += " virtual/libx11:diet-x11"
PREFERRED_PROVIDERS += " python:python-curses"
PREFERRED_PROVIDER_classpath = "classpath-minimal"
diff --git a/conf/distro/openmn.conf b/conf/distro/openmn.conf
index 421b0576a3..c4a4ccfaee 100644
--- a/conf/distro/openmn.conf
+++ b/conf/distro/openmn.conf
@@ -14,6 +14,7 @@ INHERIT += "package_ipk"
INHERIT += "debian"
PACKAGE_EXTRA_ARCHS = "armv5te openmn"
LIBC = "glibc"
+require conf/distro/include/${LIBC}.inc
FEED_URIS = "mnci54##http://www.mn-solutions.de/feed/mnci54/base"
diff --git a/conf/distro/openmoko.conf b/conf/distro/openmoko.conf
index 0d3c88ede5..4d73b8ff84 100644
--- a/conf/distro/openmoko.conf
+++ b/conf/distro/openmoko.conf
@@ -19,6 +19,7 @@ DISTRO = "openmoko"
OVERRIDES = "local:${MACHINE}:openmoko:angstrom:${TARGET_OS}:${TARGET_ARCH}:build-${BUILD_OS}:fail-fast:pn-${PN}"
LIBC = "glibc"
+require conf/distro/include/${LIBC}.inc
INHERIT += "packaged-staging"
diff --git a/conf/distro/openprotium.conf b/conf/distro/openprotium.conf
index 37e53b7c0b..4e0f472675 100644
--- a/conf/distro/openprotium.conf
+++ b/conf/distro/openprotium.conf
@@ -63,14 +63,8 @@ PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}gcc-intermediate = "gcc-cross-interme
PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}gcc = "gcc-cross"
PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}g++ = "gcc-cross"
-PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}libc-for-gcc = "glibc"
-PREFERRED_PROVIDER_virtual/powerpc-linux-libc-for-gcc = "glibc"
-PREFERRED_PROVIDER_virtual/powerpc-linux-libc-initial = "glibc-initial"
-
LIBC = "glibc"
-PREFERRED_PROVIDER_virtual/libc = "glibc"
-PREFERRED_PROVIDER_virtual/libiconv = "glibc"
-PREFERRED_PROVIDER_virtual/libintl = "glibc"
+require conf/distro/include/${LIBC}.inc
#silence a warning message...
PREFERRED_PROVIDER_linux-libc-headers = "linux-libc-headers"
diff --git a/conf/distro/oplinux-uclibc.conf b/conf/distro/oplinux-uclibc.conf
index 20e7df5a99..b8617cc763 100644
--- a/conf/distro/oplinux-uclibc.conf
+++ b/conf/distro/oplinux-uclibc.conf
@@ -29,9 +29,8 @@ DISTRO_TYPE = "debug"
# Target OS & FPU system
#
TARGET_OS = "linux-uclibc"
-PREFERRED_PROVIDER_virtual/libiconv = "libiconv"
-PREFERRED_PROVIDER_virtual/libintl = "gettext"
LIBC = "uclibc"
+require conf/distro/include/${LIBC}.inc
#
# Kernel
diff --git a/conf/distro/oplinux.conf b/conf/distro/oplinux.conf
index 4e4b59fee9..43e8fad61c 100644
--- a/conf/distro/oplinux.conf
+++ b/conf/distro/oplinux.conf
@@ -47,21 +47,7 @@ PREFERRED_PROVIDER_esound ?= "pulseaudio"
# glibc:
LIBC ?= "glibc"
-PREFERRED_PROVIDER_virtual/libiconv ?= "glibc"
-PREFERRED_PROVIDER_virtual/libintl ?= "glibc"
-PREFERRED_PROVIDER_virtual/libc ?= "glibc"
-
-
-PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}libc-for-gcc = "glibc"
-PREFERRED_PROVIDER_virtual/arm-oplinux-linux-gnueabi-libc-for-gcc = "glibc"
-PREFERRED_PROVIDER_virtual/armeb-oplinux-linux-gnueabi-libc-for-gcc = "glibc"
-PREFERRED_PROVIDER_virtual/arm-linux-libc-for-gcc = "glibc"
-PREFERRED_PROVIDER_virtual/armeb-linux-libc-for-gcc = "glibc"
-PREFERRED_PROVIDER_virtual/powerpc-oplinux-linux-libc-for-gcc = "glibc"
-PREFERRED_PROVIDER_virtual/mipsel-oplinux-linux-libc-for-gcc = "glibc"
-PREFERRED_PROVIDER_virtual/sparc-oplinux-linux-libc-for-gcc = "glibc"
-
-
+require conf/distro/include/${LIBC}.inc
# Virtuals:
PREFERRED_PROVIDER_virtual/db ?= "db"
diff --git a/conf/distro/slugos.conf b/conf/distro/slugos.conf
index eb661b9634..d82be5d2b5 100644
--- a/conf/distro/slugos.conf
+++ b/conf/distro/slugos.conf
@@ -19,7 +19,4 @@ require conf/distro/include/slugos.inc
# glibc:
LIBC ?= "glibc"
-PREFERRED_PROVIDER_virtual/libiconv ?= "glibc"
-PREFERRED_PROVIDER_virtual/libintl ?= "glibc"
-PREFERRED_PROVIDER_virtual/libc ?= "glibc"
-PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}libc-initial ?= "glibc-initial"
+require conf/distro/include/${LIBC}.inc
diff --git a/conf/distro/ucslugc.conf b/conf/distro/ucslugc.conf
index e47173513c..df8cde8973 100644
--- a/conf/distro/ucslugc.conf
+++ b/conf/distro/ucslugc.conf
@@ -9,6 +9,7 @@ ARM_INSTRUCTION_SET = "thumb"
THUMB_INTERWORK = "yes"
TARGET_OS = "linux-uclibc"
LIBC = "uclibc"
+require conf/distro/include/${LIBC}.inc
PREFERRED_VERSION_gcc-cross-initial = "3.4.4"
PREFERRED_VERSION_gcc-cross-intermediate = "3.4.4"
diff --git a/conf/distro/wrt54oe.conf b/conf/distro/wrt54oe.conf
index f60f927304..0cea34912a 100644
--- a/conf/distro/wrt54oe.conf
+++ b/conf/distro/wrt54oe.conf
@@ -13,12 +13,12 @@ INHERIT += "package_ipk debian"
TARGET_OS = "linux-uclibc"
LIBC = "uclibc"
+require conf/distro/include/${LIBC}.inc
PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}gcc-initial:gcc-cross-initial"
PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}gcc-intermediate:gcc-cross-intermediate"
PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}gcc:gcc-cross"
PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}g++:gcc-cross"
-PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}libc-for-gcc:uclibc"
PREFERRED_VERSION_gcc-cross-initial = "3.4.4"
PREFERRED_VERSION_gcc-cross-intermediate = "3.4.4"