From e96e82cd7ee95d712e2c68f2f9540bdfe727645b Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Fri, 25 Jul 2008 01:12:06 +0000 Subject: Change the toolchain build sequence. Helps in reproducable toolchains components when recompiled. Also same sequence for all different combinations (uclibc/nptl/eglibc/glibc/linuxthreads). Also fixes and patches that I worked to get various ancient compilers working. --- conf/distro/angstrom-2008.1.conf | 15 +- conf/distro/celinux-test.conf | 2 + conf/distro/chinook-compat.conf | 7 +- conf/distro/gmustix.conf | 2 + conf/distro/include/angstrom-2007-for-openmoko.inc | 23 +- .../include/angstrom-2008-preferred-versions.inc | 2 - conf/distro/include/angstrom-eglibc.inc | 14 +- conf/distro/include/angstrom-glibc.inc | 16 +- conf/distro/include/angstrom-uclibc.inc | 2 +- conf/distro/include/insane-srcrevs.inc | 1 - conf/distro/include/sane-srcrevs.inc | 1 - conf/distro/include/slugos.inc | 9 +- conf/distro/jlime-donkey.conf | 7 +- conf/distro/jlime-henchman.conf | 9 +- conf/distro/jlime-mongo.conf | 9 +- conf/distro/jlime-shrek.conf | 2 + conf/distro/mamona.conf | 16 +- conf/distro/minimal.conf | 5 +- conf/distro/nylon.conf | 4 + conf/distro/openprotium.conf | 7 +- conf/distro/oplinux-uclibc.conf | 2 + conf/distro/oplinux.conf | 19 +- conf/distro/sharprom-compatible.conf | 1 + conf/distro/ucslugc.conf | 1 + conf/distro/unslung.conf | 2 + conf/distro/wrt54oe.conf | 2 + conf/local.conf.sample | 1 + conf/machine/native.conf | 2 +- packages/eglibc/eglibc-initial.inc | 16 +- packages/eglibc/eglibc-intermediate.inc | 12 - packages/eglibc/eglibc-intermediate_svn.bb | 8 - packages/eglibc/eglibc.inc | 6 +- packages/eglibc/eglibc_svn.bb | 2 +- packages/gcc/gcc-3.4.4.inc | 10 +- packages/gcc/gcc-3.4.4/gcc-cross-fixincl.patch | 77 +++++++ .../gcc/gcc-3.4.4/gcc-libgcc2-inhibit-libc.patch | 251 +++++++++++++++++++++ packages/gcc/gcc-configure-cross.inc | 4 - packages/gcc/gcc-configure-sdk.inc | 1 + packages/gcc/gcc-cross-initial.inc | 8 +- packages/gcc/gcc-cross-intermediate.inc | 21 ++ packages/gcc/gcc-cross-intermediate_3.3.3.bb | 2 + packages/gcc/gcc-cross-intermediate_3.3.4.bb | 2 + packages/gcc/gcc-cross-intermediate_3.4.3.bb | 2 + packages/gcc/gcc-cross-intermediate_3.4.4.bb | 2 + packages/gcc/gcc-cross-intermediate_4.0.2.bb | 4 + packages/gcc/gcc-cross-intermediate_4.1.0.bb | 5 + packages/gcc/gcc-cross-intermediate_4.1.1.bb | 6 + packages/gcc/gcc-cross-intermediate_4.1.2.bb | 5 + packages/gcc/gcc-cross-intermediate_4.2.1.bb | 5 + packages/gcc/gcc-cross-intermediate_4.2.2.bb | 5 + packages/gcc/gcc-cross-intermediate_4.2.3.bb | 5 + packages/gcc/gcc-cross-intermediate_4.2.4.bb | 5 + packages/gcc/gcc-cross-intermediate_4.3.1.bb | 14 ++ .../gcc/gcc-cross-intermediate_csl-arm-2005q3.bb | 2 + .../gcc/gcc-cross-intermediate_csl-arm-2006q1.bb | 7 + .../gcc/gcc-cross-intermediate_csl-arm-2007q3.bb | 12 + .../gcc/gcc-cross-intermediate_csl-arm-2008q1.bb | 12 + .../gcc/gcc-cross-kernel-3.4.4_csl-arm-2005q3.bb | 2 +- packages/gcc/gcc-cross-sdk_3.3.4.bb | 2 +- packages/gcc/gcc-cross-sdk_3.4.3.bb | 2 +- packages/gcc/gcc-cross-sdk_3.4.4.bb | 8 +- packages/gcc/gcc-cross-sdk_4.1.0.bb | 2 +- packages/gcc/gcc-cross-sdk_4.1.1.bb | 2 +- packages/gcc/gcc-cross-sdk_4.1.2.bb | 2 +- packages/gcc/gcc-cross-sdk_4.2.2.bb | 2 +- packages/gcc/gcc-cross-sdk_4.2.3.bb | 2 +- packages/gcc/gcc-cross-sdk_4.2.4.bb | 2 +- packages/gcc/gcc-cross-sdk_4.3.1.bb | 2 +- packages/gcc/gcc-cross_3.3.3.bb | 2 +- packages/gcc/gcc-cross_3.3.4.bb | 2 +- packages/gcc/gcc-cross_3.4.3.bb | 2 +- packages/gcc/gcc-cross_3.4.4.bb | 2 +- packages/gcc/gcc-cross_4.0.0.bb | 2 +- packages/gcc/gcc-cross_4.0.2.bb | 2 +- packages/gcc/gcc-cross_4.1.0.bb | 2 +- packages/gcc/gcc-cross_4.1.1.bb | 2 +- packages/gcc/gcc-cross_4.1.2.bb | 2 +- packages/gcc/gcc-cross_4.2.1.bb | 2 +- packages/gcc/gcc-cross_4.2.2.bb | 2 +- packages/gcc/gcc-cross_4.2.3.bb | 2 +- packages/gcc/gcc-cross_4.2.4.bb | 2 +- packages/gcc/gcc-cross_4.3.1.bb | 2 +- packages/gcc/gcc-cross_csl-arm-2005q3.bb | 2 +- packages/gcc/gcc-cross_csl-arm-2006q1.bb | 2 +- packages/gcc/gcc-cross_csl-arm-2007q3.bb | 2 +- packages/gcc/gcc-cross_csl-arm-2008q1.bb | 2 +- packages/gcc/gcc-native_3.4.4.bb | 2 +- packages/gcc/gcc-native_3.4.6.bb | 2 +- packages/gcc/gcc_3.3.3.bb | 2 +- packages/gcc/gcc_3.3.4.bb | 2 +- packages/gcc/gcc_3.4.3.bb | 2 +- packages/gcc/gcc_3.4.4.bb | 2 +- packages/gcc/gcc_4.0.0.bb | 2 +- packages/gcc/gcc_4.0.2.bb | 2 +- packages/gcc/gcc_4.1.0.bb | 2 +- packages/gcc/gcc_4.1.1.bb | 2 +- packages/gcc/gcc_4.1.2.bb | 2 +- packages/gcc/gcc_4.2.1.bb | 2 +- packages/gcc/gcc_4.2.2.bb | 2 +- packages/gcc/gcc_4.2.3.bb | 2 +- packages/gcc/gcc_4.2.4.bb | 2 +- packages/gcc/gcc_4.3.1.bb | 2 +- packages/gcc/gcc_csl-arm-2005q3.bb | 2 +- packages/gcc/gcc_csl-arm-2006q1.bb | 2 +- packages/gcc/gcc_csl-arm-2007q3.bb | 2 +- packages/gcc/gcc_csl-arm-2008q1.bb | 2 +- .../files/glibc-2.6.1-use-short-for-fnstsw.patch | 30 +++ .../glibc-2.3.6-linuxthreads-pthread-raise.patch | 37 +++ .../glibc-2.3.6/glibc-arm-socket-weakalias.patch | 45 ++++ .../glibc/glibc-2.3.6/glibc-cross_sunrpc.patch | 79 +++++++ packages/glibc/glibc-2.3.6/glibc-memusage.patch | 44 ++++ .../glibc/glibc-2.3.6/glibc-rtld-libcc-eh.patch | 25 ++ packages/glibc/glibc-2.7/.mtn2git_empty | 0 packages/glibc/glibc-2.7/all_glibc-i586-chk.patch | 33 +++ packages/glibc/glibc-initial.inc | 14 +- packages/glibc/glibc-initial_2.5.bb | 2 +- packages/glibc/glibc-intermediate.inc | 12 - .../glibc/glibc-intermediate_2.3.2+cvs20040726.bb | 6 - packages/glibc/glibc-intermediate_2.3.6.bb | 2 - packages/glibc/glibc-intermediate_2.4.bb | 4 - packages/glibc/glibc-intermediate_2.5.bb | 7 - packages/glibc/glibc-intermediate_2.6.1.bb | 8 - packages/glibc/glibc-intermediate_2.7.bb | 8 - packages/glibc/glibc-intermediate_cvs.bb | 6 - packages/glibc/glibc-stage.inc | 7 +- packages/glibc/glibc.inc | 6 +- packages/glibc/glibc_2.2.5.bb | 2 +- packages/glibc/glibc_2.3.2+cvs20040726.bb | 2 +- packages/glibc/glibc_2.3.2.bb | 2 +- packages/glibc/glibc_2.3.3+cvs20041128.bb | 2 +- packages/glibc/glibc_2.3.3+cvs20050221.bb | 2 +- packages/glibc/glibc_2.3.3+cvs20050420.bb | 2 +- packages/glibc/glibc_2.3.3.bb | 2 +- packages/glibc/glibc_2.3.5+cvs20050627.bb | 2 +- packages/glibc/glibc_2.3.6.bb | 11 +- packages/glibc/glibc_2.4.bb | 2 +- packages/glibc/glibc_2.5.bb | 3 +- packages/glibc/glibc_2.6.1.bb | 3 +- packages/glibc/glibc_2.7.bb | 6 +- packages/glibc/glibc_cvs.bb | 2 +- packages/meta/external-toolchain.bb | 1 + .../sharprom-toolchain-native_1.0.bb | 1 + packages/uclibc/bfin-uclibc_svn.bb | 2 +- .../uclibc-0.9.27/uclibc-makevars-in-quotes.patch | 25 ++ .../uclibc/uclibc-0.9.28/uclibc-libgcc-eh.patch | 38 ++++ packages/uclibc/uclibc-initial_0.9.26.bb | 16 +- packages/uclibc/uclibc-initial_0.9.27.bb | 17 +- packages/uclibc/uclibc-initial_0.9.28.bb | 17 +- packages/uclibc/uclibc-initial_0.9.29.bb | 9 +- packages/uclibc/uclibc-initial_svn.bb | 10 +- packages/uclibc/uclibc.inc | 5 +- packages/uclibc/uclibc_0.9.26.bb | 2 +- packages/uclibc/uclibc_0.9.27.bb | 3 +- packages/uclibc/uclibc_0.9.28.bb | 3 +- packages/uclibc/uclibc_0.9.29.bb | 4 +- packages/uclibc/uclibc_svn.bb | 2 +- 156 files changed, 1094 insertions(+), 277 deletions(-) delete mode 100644 packages/eglibc/eglibc-intermediate.inc delete mode 100644 packages/eglibc/eglibc-intermediate_svn.bb create mode 100644 packages/gcc/gcc-3.4.4/gcc-cross-fixincl.patch create mode 100644 packages/gcc/gcc-3.4.4/gcc-libgcc2-inhibit-libc.patch create mode 100644 packages/gcc/gcc-cross-intermediate.inc create mode 100644 packages/gcc/gcc-cross-intermediate_3.3.3.bb create mode 100644 packages/gcc/gcc-cross-intermediate_3.3.4.bb create mode 100644 packages/gcc/gcc-cross-intermediate_3.4.3.bb create mode 100644 packages/gcc/gcc-cross-intermediate_3.4.4.bb create mode 100644 packages/gcc/gcc-cross-intermediate_4.0.2.bb create mode 100644 packages/gcc/gcc-cross-intermediate_4.1.0.bb create mode 100644 packages/gcc/gcc-cross-intermediate_4.1.1.bb create mode 100644 packages/gcc/gcc-cross-intermediate_4.1.2.bb create mode 100644 packages/gcc/gcc-cross-intermediate_4.2.1.bb create mode 100644 packages/gcc/gcc-cross-intermediate_4.2.2.bb create mode 100644 packages/gcc/gcc-cross-intermediate_4.2.3.bb create mode 100644 packages/gcc/gcc-cross-intermediate_4.2.4.bb create mode 100644 packages/gcc/gcc-cross-intermediate_4.3.1.bb create mode 100644 packages/gcc/gcc-cross-intermediate_csl-arm-2005q3.bb create mode 100644 packages/gcc/gcc-cross-intermediate_csl-arm-2006q1.bb create mode 100644 packages/gcc/gcc-cross-intermediate_csl-arm-2007q3.bb create mode 100644 packages/gcc/gcc-cross-intermediate_csl-arm-2008q1.bb create mode 100644 packages/glibc/files/glibc-2.6.1-use-short-for-fnstsw.patch create mode 100644 packages/glibc/glibc-2.3.6/glibc-2.3.6-linuxthreads-pthread-raise.patch create mode 100644 packages/glibc/glibc-2.3.6/glibc-arm-socket-weakalias.patch create mode 100644 packages/glibc/glibc-2.3.6/glibc-cross_sunrpc.patch create mode 100644 packages/glibc/glibc-2.3.6/glibc-memusage.patch create mode 100644 packages/glibc/glibc-2.3.6/glibc-rtld-libcc-eh.patch create mode 100644 packages/glibc/glibc-2.7/.mtn2git_empty create mode 100644 packages/glibc/glibc-2.7/all_glibc-i586-chk.patch delete mode 100644 packages/glibc/glibc-intermediate.inc delete mode 100644 packages/glibc/glibc-intermediate_2.3.2+cvs20040726.bb delete mode 100644 packages/glibc/glibc-intermediate_2.3.6.bb delete mode 100644 packages/glibc/glibc-intermediate_2.4.bb delete mode 100644 packages/glibc/glibc-intermediate_2.5.bb delete mode 100644 packages/glibc/glibc-intermediate_2.6.1.bb delete mode 100644 packages/glibc/glibc-intermediate_2.7.bb delete mode 100644 packages/glibc/glibc-intermediate_cvs.bb create mode 100644 packages/uclibc/uclibc-0.9.27/uclibc-makevars-in-quotes.patch create mode 100644 packages/uclibc/uclibc-0.9.28/uclibc-libgcc-eh.patch diff --git a/conf/distro/angstrom-2008.1.conf b/conf/distro/angstrom-2008.1.conf index 004d6e9811..7dd416b102 100644 --- a/conf/distro/angstrom-2008.1.conf +++ b/conf/distro/angstrom-2008.1.conf @@ -71,8 +71,9 @@ PREFERRED_VERSION_linux-libc-headers = "2.6.23" #Prefer glibc 2.6 and uclibc 0.9.29, these have had the most testing. PREFERRED_VERSION_glibc ?= "2.6.1" -PREFERRED_VERSION_glibc-intermediate ?= "2.6.1" PREFERRED_VERSION_glibc-initial ?= "2.6.1" +PREFERRED_VERSION_uclibc ?= "0.9.29" +PREFERRED_VERSION_uclibc-initial ?= "0.9.29" #Prefer a newer GTK+ and friends PREFERRED_VERSION_gtk+ ?= "2.12.3" @@ -104,11 +105,14 @@ ANGSTROM_GCC_VERSION_avr32 ?= "4.2.2" #Everybody else can just use this: ANGSTROM_GCC_VERSION ?= "4.2.4" +PREFERRED_VERSION_binutils-cross ?= "2.18.50.0.7" +PREFERRED_VERSION_binutils-cross-sdk ?= "2.18.50.0.7" -PREFERRED_VERSION_gcc ?= "${ANGSTROM_GCC_VERSION}" -PREFERRED_VERSION_gcc-cross ?= "${ANGSTROM_GCC_VERSION}" -PREFERRED_VERSION_gcc-cross-sdk ?= "${ANGSTROM_GCC_VERSION}" -PREFERRED_VERSION_gcc-cross-initial ?= "${ANGSTROM_GCC_VERSION}" +PREFERRED_VERSION_gcc ?= "${ANGSTROM_GCC_VERSION}" +PREFERRED_VERSION_gcc-cross ?= "${ANGSTROM_GCC_VERSION}" +PREFERRED_VERSION_gcc-cross-sdk ?= "${ANGSTROM_GCC_VERSION}" +PREFERRED_VERSION_gcc-cross-initial ?= "${ANGSTROM_GCC_VERSION}" +PREFERRED_VERSION_gcc-cross-intermediate ?= "${ANGSTROM_GCC_VERSION}" #Loads preferred versions from files, these have weak assigments (?=), so put them at the bottom require conf/distro/include/preferred-e-versions.inc @@ -122,6 +126,7 @@ PREFERRED_VERSION_binutils-cross-sdk_avr32 = "2.17" # Virtuals: PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}binutils = "binutils-cross" PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}gcc-initial = "gcc-cross-initial" +PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}gcc-intermediate = "gcc-cross-intermediate" PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}gcc = "gcc-cross" PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}g++ = "gcc-cross" diff --git a/conf/distro/celinux-test.conf b/conf/distro/celinux-test.conf index ad7a34d97c..0787ff2bca 100644 --- a/conf/distro/celinux-test.conf +++ b/conf/distro/celinux-test.conf @@ -35,6 +35,7 @@ SRCDATE ?= "20060927" # toolchain # 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}binutils:binutils-cross" @@ -46,6 +47,7 @@ PREFERRED_VERSION_binutils-cross = "2.16" PREFERRED_VERSION_gcc = "3.4.4" PREFERRED_VERSION_gcc-cross = "3.4.4" PREFERRED_VERSION_gcc-cross-initial = "3.4.4" +PREFERRED_VERSION_gcc-cross-intermediate = "3.4.4" PREFERRED_VERSION_glibc = "2.3.5+cvs20050627" diff --git a/conf/distro/chinook-compat.conf b/conf/distro/chinook-compat.conf index 0d7e1b3f75..24a90e4e59 100644 --- a/conf/distro/chinook-compat.conf +++ b/conf/distro/chinook-compat.conf @@ -42,14 +42,15 @@ KERNEL = "kernel26" MACHINE_KERNEL_VERSION = "2.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_PROVIDER_virtual/libc = "glibc" # NPTL stuff -PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}libc-for-gcc = "glibc-intermediate" -PREFERRED_PROVIDER_virtual/arm-linux-gnueabi-libc-for-gcc = "glibc-intermediate" +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" @@ -64,6 +65,7 @@ PREFERRED_VERSION_binutils-cross = "2.18" PREFERRED_VERSION_gcc = "3.4.4cs2005q3.2" PREFERRED_VERSION_gcc-cross = "3.4.4cs2005q3.2" PREFERRED_VERSION_gcc-cross-initial = "4.1.1" +PREFERRED_VERSION_gcc-cross-intermediate = "4.1.1" #PREFERRED_VERSION_gcc-cross-initial = "3.4.4cs2005q3.2" @@ -71,7 +73,6 @@ PREFERRED_VERSION_gcc-cross-initial = "4.1.1" PREFERRED_VERSION_linux-libc-headers = "2.6.20" PREFERRED_VERSION_glibc = "2.5" -PREFERRED_VERSION_glibc-intermediate = "2.5" PREFERRED_VERSION_glibc-initial = "2.5" PREFERRED_VERSION_libtool = "1.5.6" diff --git a/conf/distro/gmustix.conf b/conf/distro/gmustix.conf index b359c926b0..a47de7c100 100644 --- a/conf/distro/gmustix.conf +++ b/conf/distro/gmustix.conf @@ -8,6 +8,7 @@ TARGET_FPU = "soft" IMAGE_FSTYPES = "jffs2" 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" @@ -15,6 +16,7 @@ PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}libc-for-gcc:uclibc" PREFERRED_PROVIDER_classpath = "classpath-minimal" PREFERRED_VERSION_gcc-cross-initial = "3.4.4" +PREFERRED_VERSION_gcc-cross-intermediate = "3.4.4" PREFERRED_VERSION_gcc-cross = "3.4.4" PREFERRED_VERSION_gcc-cross-sdk = "3.4.4" PREFERRED_VERSION_gcc = "3.4.4" diff --git a/conf/distro/include/angstrom-2007-for-openmoko.inc b/conf/distro/include/angstrom-2007-for-openmoko.inc index 92c44fe630..c9003128aa 100644 --- a/conf/distro/include/angstrom-2007-for-openmoko.inc +++ b/conf/distro/include/angstrom-2007-for-openmoko.inc @@ -89,21 +89,25 @@ PREFERRED_VERSION_gcc ?= "4.1.2" PREFERRED_VERSION_gcc-cross ?= "4.1.2" PREFERRED_VERSION_gcc-cross-sdk ?= "4.1.2" PREFERRED_VERSION_gcc-cross-initial ?= "4.1.2" +PREFERRED_VERSION_gcc-cross-intermediate ?= "4.1.2" PREFERRED_VERSION_gcc_dht-walnut ?= "4.1.1" PREFERRED_VERSION_gcc-cross_dht-walnut ?= "4.1.1" PREFERRED_VERSION_gcc-cross-sdk_dht-walnut ?= "4.1.1" PREFERRED_VERSION_gcc-cross-initial_dht-walnut ?= "4.1.1" +PREFERRED_VERSION_gcc-cross-intermediate_dht-walnut ?= "4.1.1" PREFERRED_VERSION_gcc_xilinx-ml403 ?= "4.1.1" PREFERRED_VERSION_gcc-cross_xilinx-ml403 ?= "4.1.1" PREFERRED_VERSION_gcc-cross-sdk_xilinx-ml403 ?= "4.1.1" PREFERRED_VERSION_gcc-cross-initial_xilinx-ml403 ?= "4.1.1" +PREFERRED_VERSION_gcc-cross-intermediate_xilinx-ml403 ?= "4.1.1" PREFERRED_VERSION_gcc_mpc8323e-rdb ?= "4.1.1" PREFERRED_VERSION_gcc-cross_mpc8323e-rdb ?= "4.1.1" PREFERRED_VERSION_gcc-cross-sdk_mpc8323e-rdb ?= "4.1.1" PREFERRED_VERSION_gcc-cross-initial_mpc8323e-rdb ?= "4.1.1" +PREFERRED_VERSION_gcc-cross-intermediate_mpc8323e-rdb ?= "4.1.1" PREFERRED_VERSION_binutils ?= "2.18" PREFERRED_VERSION_binutils-cross ?= "2.18" @@ -115,6 +119,7 @@ PREFERRED_VERSION_avr32-gcc = "4.1.2" PREFERRED_VERSION_avr32-gcc-cross = "4.1.2" PREFERRED_VERSION_gcc-cross-sdk_avr32 = "4.0.2" PREFERRED_VERSION_gcc-cross-initial_avr32 = "4.0.2" +PREFERRED_VERSION_gcc-cross-intermediate_avr32 = "4.0.2" PREFERRED_VERSION_binutils_avr32 = "2.17" PREFERRED_VERSION_binutils-cross_avr32 = "2.17" @@ -133,9 +138,6 @@ PREFERRED_VERSION_uclibc-initial ?= "0.9.29" PREFERRED_VERSION_uclibc_avr32 = "0.9.28" PREFERRED_VERSION_uclibc-initial_avr32 = "0.9.28" -PREFERRED_VERSION_glibc-intermediate_i686 ?= "2.4" -PREFERRED_VERSION_glibc-intermediate ?= "2.5" - PREFERRED_VERSION_glibc-initial ?= "2.5" # To use an EABI compatible version 3 series gcc, either uncomment @@ -143,6 +145,7 @@ PREFERRED_VERSION_glibc-initial ?= "2.5" # # PREFERRED_VERSION_gcc-cross = "3.4.4+csl-arm-2005q3" # PREFERRED_VERSION_gcc-cross-initial = "3.4.4+csl-arm-2005q3" +# PREFERRED_VERSION_gcc-cross-intermediate = "3.4.4+csl-arm-2005q3" #Loads preferred versions from files, these have weak assigments (?=), so put them at the bottom require conf/distro/include/preferred-xorg-versions.inc @@ -153,17 +156,17 @@ require conf/distro/include/preferred-e-versions.inc # Virtuals: PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}binutils = "binutils-cross" PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}gcc-initial = "gcc-cross-initial" +PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}gcc-intermediate = "gcc-cross-intermediate" 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-intermediate" -PREFERRED_PROVIDER_virtual/arm-angstrom-linux-gnueabi-libc-for-gcc = "glibc-intermediate" -PREFERRED_PROVIDER_virtual/armeb-angstrom-linux-gnueabi-libc-for-gcc = "glibc-intermediate" -PREFERRED_PROVIDER_virtual/arm-angstrom-linux-libc-for-gcc = "glibc-intermediate" -PREFERRED_PROVIDER_virtual/powerpc-angstrom-linux-libc-for-gcc = "glibc-intermediate" -PREFERRED_PROVIDER_virtual/mipsel-angstrom-linux-libc-for-gcc = "glibc-intermediate" -PREFERRED_PROVIDER_virtual/sparc-angstrom-linux-libc-for-gcc = "glibc-intermediate" +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" +PREFERRED_PROVIDER_virtual/mipsel-angstrom-linux-libc-for-gcc = "glibc" +PREFERRED_PROVIDER_virtual/sparc-angstrom-linux-libc-for-gcc = "glibc" PREFERRED_PROVIDER_virtual/arm-angstrom-linux-uclibcgnueabi-libc-for-gcc = "uclibc-initial" PREFERRED_PROVIDER_virtual/armeb-angstrom-linux-uclibcgnueabi-libc-for-gcc = "uclibc-initial" diff --git a/conf/distro/include/angstrom-2008-preferred-versions.inc b/conf/distro/include/angstrom-2008-preferred-versions.inc index 7707215847..2ebb06d5c0 100644 --- a/conf/distro/include/angstrom-2008-preferred-versions.inc +++ b/conf/distro/include/angstrom-2008-preferred-versions.inc @@ -17,7 +17,5 @@ PREFERRED_VERSION_pkgconfig = "0.23" PREFERRED_VERSION_pkgconfig-native = "0.23" PREFERRED_VERSION_pulseaudio = "0.9.10" PREFERRED_VERSION_tiff = "3.8.2+4.0.0beta2" -PREFERRED_VERSION_uclibc ?= "0.9.29" -PREFERRED_VERSION_uclibc-initial ?= "0.9.29" PREFERRED_VERSION_udev = "118" PREFERRED_VERSION_xserver-kdrive = "1.4.0.90" diff --git a/conf/distro/include/angstrom-eglibc.inc b/conf/distro/include/angstrom-eglibc.inc index 07873fe700..66efa9f651 100644 --- a/conf/distro/include/angstrom-eglibc.inc +++ b/conf/distro/include/angstrom-eglibc.inc @@ -4,13 +4,13 @@ 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-intermediate" -PREFERRED_PROVIDER_virtual/arm${TARGET_VENDOR}-linux-gnueabi-libc-for-gcc = "eglibc-intermediate" -PREFERRED_PROVIDER_virtual/armeb${TARGET_VENDOR}-linux-gnueabi-libc-for-gcc = "eglibc-intermediate" -PREFERRED_PROVIDER_virtual/arm${TARGET_VENDOR}-linux-libc-for-gcc = "eglibc-intermediate" -PREFERRED_PROVIDER_virtual/powerpc${TARGET_VENDOR}-linux-libc-for-gcc = "eglibc-intermediate" -PREFERRED_PROVIDER_virtual/mipsel${TARGET_VENDOR}-linux-libc-for-gcc = "eglibc-intermediate" -PREFERRED_PROVIDER_virtual/sparc${TARGET_VENDOR}-linux-libc-for-gcc = "eglibc-intermediate" +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']]}" diff --git a/conf/distro/include/angstrom-glibc.inc b/conf/distro/include/angstrom-glibc.inc index 8c76de6f1a..6b9348db72 100644 --- a/conf/distro/include/angstrom-glibc.inc +++ b/conf/distro/include/angstrom-glibc.inc @@ -6,13 +6,13 @@ 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-intermediate" -PREFERRED_PROVIDER_virtual/arm-angstrom-linux-gnueabi-libc-for-gcc = "glibc-intermediate" -PREFERRED_PROVIDER_virtual/armeb-angstrom-linux-gnueabi-libc-for-gcc = "glibc-intermediate" -PREFERRED_PROVIDER_virtual/arm-angstrom-linux-libc-for-gcc = "glibc-intermediate" -PREFERRED_PROVIDER_virtual/powerpc-angstrom-linux-libc-for-gcc = "glibc-intermediate" -PREFERRED_PROVIDER_virtual/mipsel-angstrom-linux-libc-for-gcc = "glibc-intermediate" -PREFERRED_PROVIDER_virtual/sparc-angstrom-linux-libc-for-gcc = "glibc-intermediate" +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" 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']]}" @@ -25,13 +25,11 @@ TARGET_OS = "linux${@['','-gnueabi'][bb.data.getVar('TARGET_ARCH',d,1) in ['arm' FULL_OPTIMIZATION = "-fexpensive-optimizations -frename-registers -fomit-frame-pointer -Os" FULL_OPTIMIZATION_pn-perl = "-fexpensive-optimizations -fomit-frame-pointer -frename-registers -O1" -FULL_OPTIMIZATION_pn-glibc-intermediate = "-O2" FULL_OPTIMIZATION_pn-glibc = "-fexpensive-optimizations -fomit-frame-pointer -O2" FULL_OPTIMIZATION_sparc = "-fexpensive-optimizations -fomit-frame-pointer -frename-registers -O2" BUILD_OPTIMIZATION = "-Os" BUILD_OPTIMIZATION_pn-perl = "-O1" -BUILD_OPTIMIZATION_pn-glibc-intermediate = "-O2" BUILD_OPTIMIZATION_pn-glibc = "-O2" BUILD_OPTIMIZATION_sparc = "-O2" diff --git a/conf/distro/include/angstrom-uclibc.inc b/conf/distro/include/angstrom-uclibc.inc index 4b68293faf..cc2c3b100d 100644 --- a/conf/distro/include/angstrom-uclibc.inc +++ b/conf/distro/include/angstrom-uclibc.inc @@ -14,7 +14,7 @@ USE_NLS ?= "no" USE_NLS_glib-2.0 = "yes" TARGET_OS_UC = "linux${@['-uclibc','-uclibcgnueabi'][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 = "${@['${TARGET_OS_UC}', 'uclinux-uclibc'][bb.data.getVar('TARGET_ARCH',d) in ['bfin']]}" +TARGET_OS ?= "${@['${TARGET_OS_UC}', 'uclinux-uclibc'][bb.data.getVar('TARGET_ARCH',d) in ['bfin']]}" #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 diff --git a/conf/distro/include/insane-srcrevs.inc b/conf/distro/include/insane-srcrevs.inc index f9941c8a9a..337f305c7a 100644 --- a/conf/distro/include/insane-srcrevs.inc +++ b/conf/distro/include/insane-srcrevs.inc @@ -4,7 +4,6 @@ SRCREV_pn-dfu-util-native ?= "${AUTOREV}" SRCREV_pn-eds-dbus ?= "${AUTOREV}" SRCREV_pn-eglibc ?= "${AUTOREV}" SRCREV_pn-eglibc-initial ?= "${AUTOREV}" -SRCREV_pn-eglibc-intermediate ?= "${AUTOREV}" SRCREV_pn-ezxd ?= "${AUTOREV}" SRCREV_pn-fbgrab-viewer-native ?= "${AUTOREV}" SRCREV_pn-fstests ?= "${AUTOREV}" diff --git a/conf/distro/include/sane-srcrevs.inc b/conf/distro/include/sane-srcrevs.inc index 0a7251ec50..4490907774 100644 --- a/conf/distro/include/sane-srcrevs.inc +++ b/conf/distro/include/sane-srcrevs.inc @@ -28,7 +28,6 @@ SRCREV_pn-diversity-nav ?= "340" SRCREV_pn-eds-dbus ?= "659" SRCREV_pn-eglibc ?= "6229" SRCREV_pn-eglibc-initial ?= "6229" -SRCREV_pn-eglibc-intermediate ?= "6229" SRCREV_pn-enlazar ?= "37" SRCREV_pn-exalt ?= "79" SRCREV_pn-exalt-daemon ?= "78" diff --git a/conf/distro/include/slugos.inc b/conf/distro/include/slugos.inc index b149f65f11..b998e4a015 100644 --- a/conf/distro/include/slugos.inc +++ b/conf/distro/include/slugos.inc @@ -96,13 +96,14 @@ DISTRO_EXTRA_RRECOMMENDS ?= "" # Virtuals: PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}gcc-initial = "gcc-cross-initial" +PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}gcc-intermediate = "gcc-cross-intermediate" 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-intermediate" -PREFERRED_PROVIDER_virtual/arm-linux-libc-for-gcc = "glibc-intermediate" -PREFERRED_PROVIDER_virtual/armeb-linux-libc-for-gcc = "glibc-intermediate" +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" # Set the preferred provider for a few toolchain-related items, otherwise # these may be selected from the external-toolchain instead. @@ -118,8 +119,8 @@ PREFERRED_VERSION_gcc ?= "4.1.2" PREFERRED_VERSION_gcc-cross ?= "4.1.2" PREFERRED_VERSION_gcc-cross-sdk ?= "4.1.2" PREFERRED_VERSION_gcc-cross-initial ?= "4.1.2" +PREFERRED_VERSION_gcc-cross-intermediate ?= "4.1.2" PREFERRED_VERSION_glibc ?= "2.5" -PREFERRED_VERSION_glibc-intermediate ?= "2.5" PREFERRED_VERSION_glibc-initial ?= "2.5" # Select the smallest provider of x11 libraries diff --git a/conf/distro/jlime-donkey.conf b/conf/distro/jlime-donkey.conf index d5b994c55c..dad1f1fd05 100644 --- a/conf/distro/jlime-donkey.conf +++ b/conf/distro/jlime-donkey.conf @@ -20,10 +20,11 @@ PREFERRED_PROVIDER_task-bootstrap = "task-bootstrap" #<> We will set CVS DATE when things are known to work. #<>-----------------------------------------------------------------< 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_PROVIDER_virtual/sh3-linux-libc-for-gcc = "glibc-intermediate" -PREFERRED_PROVIDER_virtual/arm-linux-libc-for-gcc = "glibc-intermediate" +PREFERRED_PROVIDER_virtual/sh3-linux-libc-for-gcc = "glibc" +PREFERRED_PROVIDER_virtual/arm-linux-libc-for-gcc = "glibc" #<>-----------------------------------------------------------------> #<> We want this so we can crosscompile the kernel using gcc 3.4.3 @@ -51,10 +52,10 @@ PREFERRED_VERSION_binutils-cross-sdk = "2.18" PREFERRED_VERSION_gcc = "4.2.2" PREFERRED_VERSION_gcc-cross = "4.2.2" PREFERRED_VERSION_gcc-cross-initial = "4.2.2" +PREFERRED_VERSION_gcc-cross-intermediate = "4.2.2" PREFERRED_VERSION_linux-libc-headers = "2.6.23" PREFERRED_VERSION_glibc = "2.6.1" PREFERRED_VERSION_glibc-initial = "2.6.1" -PREFERRED_VERSION_glibc-intermediate = "2.6.1" #<>------------------------------------------------------------------> #<> diff --git a/conf/distro/jlime-henchman.conf b/conf/distro/jlime-henchman.conf index 646d335390..5a99ef2d79 100644 --- a/conf/distro/jlime-henchman.conf +++ b/conf/distro/jlime-henchman.conf @@ -50,12 +50,14 @@ MACHINE_KERNEL_VERSION = "2.6" # Binutils & Compiler # 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_VERSION_gcc = "4.2.2" PREFERRED_VERSION_gcc-cross = "4.2.2" PREFERRED_VERSION_gcc-cross-initial = "4.2.2" +PREFERRED_VERSION_gcc-cross-intermediate = "4.2.2" PREFERRED_VERSION_binutils = "2.18" PREFERRED_VERSION_binutils-cross = "2.18" @@ -69,12 +71,11 @@ TARGET_FPU_armeb = "fixed" PREFERRED_PROVIDER_virtual/libiconv = "glibc" PREFERRED_PROVIDER_virtual/libintl = "glibc" PREFERRED_PROVIDER_virtual/libc = "glibc" -PREFERRED_PROVIDER_virtual/arm-linux-libc-for-gcc = "glibc-intermediate" -PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}-libc-for-gcc = "glibc-intermediate" -PREFERRED_PROVIDER_virtual/${TARGET_ARCH}-${TARGET_OS}-libc-for-gcc = "glibc-intermediate" +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" PREFERRED_VERSION_linux-libc-headers = "2.6.23" PREFERRED_VERSION_glibc = "2.5" -PREFERRED_VERSION_glibc-intermediate = "2.5" # # Bootstrap & Init diff --git a/conf/distro/jlime-mongo.conf b/conf/distro/jlime-mongo.conf index e2b2e8b7db..1ffda5e47d 100644 --- a/conf/distro/jlime-mongo.conf +++ b/conf/distro/jlime-mongo.conf @@ -51,12 +51,14 @@ MACHINE_KERNEL_VERSION = "2.6" # Binutils & Compiler # 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_VERSION_gcc = "4.2.2" PREFERRED_VERSION_gcc-cross = "4.2.2" PREFERRED_VERSION_gcc-cross-initial = "4.2.2" +PREFERRED_VERSION_gcc-cross-intermediate = "4.2.2" PREFERRED_VERSION_binutils = "2.18" PREFERRED_VERSION_binutils-cross = "2.18" @@ -70,12 +72,11 @@ TARGET_FPU_armeb = "soft" PREFERRED_PROVIDER_virtual/libiconv = "glibc" PREFERRED_PROVIDER_virtual/libintl = "glibc" PREFERRED_PROVIDER_virtual/libc = "glibc" -PREFERRED_PROVIDER_virtual/arm-linux-libc-for-gcc = "glibc-intermediate" -PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}-libc-for-gcc = "glibc-intermediate" -PREFERRED_PROVIDER_virtual/${TARGET_ARCH}-${TARGET_OS}-libc-for-gcc = "glibc-intermediate" +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" PREFERRED_VERSION_linux-libc-headers = "2.6.18" PREFERRED_VERSION_glibc = "2.5" -PREFERRED_VERSION_glibc-intermediate = "2.5" # # Bootstrap & Init diff --git a/conf/distro/jlime-shrek.conf b/conf/distro/jlime-shrek.conf index 3a7c7ee549..7928387390 100644 --- a/conf/distro/jlime-shrek.conf +++ b/conf/distro/jlime-shrek.conf @@ -12,6 +12,7 @@ export FEED_URLS_jlime = "shrek##http://www.jlime.com/downloads/Releases/shrek/$ SRCDATE = "20050518" 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" @@ -24,6 +25,7 @@ PREFERRED_VERSION_binutils-cross-sdk = "2.15.94.0.1" PREFERRED_VERSION_gcc = "3.4.3" PREFERRED_VERSION_gcc-cross = "3.4.3" PREFERRED_VERSION_gcc-cross-initial = "3.4.3" +PREFERRED_VERSION_gcc-cross-intermediate = "3.4.3" PREFERRED_VERSION_linux-libc-headers = "2.6.7.0" PREFERRED_VERSION_glib-2.0-native = "2.6.2" PREFERRED_VERSION_glib-2.0 = "2.6.2" diff --git a/conf/distro/mamona.conf b/conf/distro/mamona.conf index fd4dba600a..264a064521 100644 --- a/conf/distro/mamona.conf +++ b/conf/distro/mamona.conf @@ -34,6 +34,7 @@ PREFERRED_VERSION_linux-libc-headers_nokia770 = "2.6.16.osso7" # gcc 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" @@ -41,6 +42,7 @@ PREFERRED_VERSION_gcc ?= "4.1.2" PREFERRED_VERSION_gcc-cross ?= "4.1.2" PREFERRED_VERSION_gcc-cross-sdk ?= "4.1.2" PREFERRED_VERSION_gcc-cross-initial ?= "4.1.2" +PREFERRED_VERSION_gcc-cross-intermediate ?= "4.1.2" # binutils PREFERRED_VERSION_binutils ?= "2.18" @@ -55,17 +57,15 @@ PREFERRED_PROVIDER_virtual/libc = "glibc" PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}libc-initial ?= "glibc-initial" PREFERRED_VERSION_glibc ?= "2.5" -PREFERRED_VERSION_glibc-intermediate_i686 ?= "2.4" -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-intermediate" -PREFERRED_PROVIDER_virtual/arm-mamona-linux-gnueabi-libc-for-gcc = "glibc-intermediate" -PREFERRED_PROVIDER_virtual/armeb-mamona-linux-gnueabi-libc-for-gcc = "glibc-intermediate" -PREFERRED_PROVIDER_virtual/arm-mamona-linux-libc-for-gcc = "glibc-intermediate" -PREFERRED_PROVIDER_virtual/i586-mamona-linux-libc-for-gcc = "glibc-intermediate" +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 # ============== @@ -82,4 +82,4 @@ PREFERRED_PROVIDER_gconf = "gconf-dbus" PREFERRED_VERSION_apt = "0.7.6" PREFERRED_VERSION_gpsd ?= "2.33" -PREFERRED_VERSION_hal_nokia770 = "0.5.7" \ No newline at end of file +PREFERRED_VERSION_hal_nokia770 = "0.5.7" diff --git a/conf/distro/minimal.conf b/conf/distro/minimal.conf index e86cf5cd4f..3ca22b128c 100644 --- a/conf/distro/minimal.conf +++ b/conf/distro/minimal.conf @@ -37,6 +37,7 @@ MACHINE_KERNEL_VERSION = "2.6" # Binutils & Compiler # PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}gcc-initial = "gcc-cross-initial" +PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}gcc-intermediate = "gcc-cross-intermediate" PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}gcc = "gcc-cross" PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}g++ = "gcc-cross" PREFERRED_PROVIDER_virtual/arm-linux-binutils = "binutils-cross" @@ -45,6 +46,7 @@ PREFERRED_PROVIDER_linux-libc-headers = "linux-libc-headers" PREFERRED_VERSION_gcc ?= "4.1.1" PREFERRED_VERSION_gcc-cross ?= "4.1.1" PREFERRED_VERSION_gcc-cross-initial ?= "4.1.1" +PREFERRED_VERSION_gcc-cross-intermediate ?= "4.1.1" PREFERRED_VERSION_binutils ?= "2.18" PREFERRED_VERSION_binutils-cross ?= "2.18" @@ -61,11 +63,10 @@ TARGET_FPU_armeb = "soft" PREFERRED_PROVIDER_virtual/libiconv = "glibc" PREFERRED_PROVIDER_virtual/libintl = "glibc" PREFERRED_PROVIDER_virtual/libc = "glibc" -PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}libc-for-gcc = "glibc-intermediate" +PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}libc-for-gcc = "glibc" PREFERRED_PROVIDER_linux-libc-headers = "linux-libc-headers" PREFERRED_VERSION_linux-libc-headers ?= "2.6.23" PREFERRED_VERSION_glibc ?= "2.5" -PREFERRED_VERSION_glibc-intermediate ?= "2.5" # # Bootstrap & Init diff --git a/conf/distro/nylon.conf b/conf/distro/nylon.conf index 0623ce6dd0..3d1f0579f0 100644 --- a/conf/distro/nylon.conf +++ b/conf/distro/nylon.conf @@ -17,6 +17,7 @@ INHERIT += "package_ipk debian nylon-mirrors" INHERIT += "linux-kernel-base" 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" @@ -35,6 +36,7 @@ PREFERRED_VERSION_mtd-utils = "0.0.0+cvs20060223" PREFERRED_VERSION_kismet = "2005-01-R1" PREFERRED_VERSION_gcc-cross-initial = "3.3.4" +PREFERRED_VERSION_gcc-cross-intermediate = "3.3.4" PREFERRED_VERSION_gcc-cross = "3.3.4" PREFERRED_VERSION_gcc-cross-sdk = "3.3.4" PREFERRED_VERSION_gcc = "3.3.4" @@ -50,6 +52,7 @@ KERNEL_VERSION_mtx-2 = "2.4.27" #PREFERRED_VERSION_glibc_mtx-3 = "2.3.5+cvs20050627" PREFERRED_VERSION_gcc-cross-initial_mtx-3 = "3.4.4" +PREFERRED_VERSION_gcc-cross-intermediate_mtx-3 = "3.4.4" PREFERRED_VERSION_gcc-cross_mtx-3 = "3.4.4" PREFERRED_VERSION_gcc-cross-sdk_mtx-3 = "3.4.4" PREFERRED_VERSION_gcc_mtx-3 = "3.4.4" @@ -71,6 +74,7 @@ PREFERRED_PROVIDER_virtual/kernel_mtx-3a = "linux-mtx-3a" #PREFERRED_VERSION_glibc_mtx-3a = "2.3.5+cvs20050627" PREFERRED_VERSION_gcc-cross-initial_mtx-3a = "3.4.4" +PREFERRED_VERSION_gcc-cross-intermediate_mtx-3a = "3.4.4" PREFERRED_VERSION_gcc-cross_mtx-3a = "3.4.4" PREFERRED_VERSION_gcc-cross-sdk_mtx-3a = "3.4.4" PREFERRED_VERSION_gcc_mtx-3a = "3.4.4" diff --git a/conf/distro/openprotium.conf b/conf/distro/openprotium.conf index 4b620fe6be..b794d4a4ec 100644 --- a/conf/distro/openprotium.conf +++ b/conf/distro/openprotium.conf @@ -45,9 +45,9 @@ PREFERRED_VERSION_gcc ?= "4.1.1" PREFERRED_VERSION_gcc-cross ?= "4.1.2" PREFERRED_VERSION_gcc-cross-sdk ?= "4.1.2" PREFERRED_VERSION_gcc-cross-initial ?= "4.1.2" +PREFERRED_VERSION_gcc-cross-intermediate ?= "4.1.2" PREFERRED_VERSION_glibc = "2.6.1" -PREFERRED_VERSION_glibc-intermediate = "2.6.1" PREFERRED_VERSION_glibc-initial = "2.6.1" PREFERRED_VERSION_linux-libc-headers = "2.6.11.1" @@ -59,11 +59,12 @@ PREFERRED_VERSION_linux-libc-headers = "2.6.11.1" # PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}binutils = "binutils-cross" PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}gcc-initial = "gcc-cross-initial" +PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}gcc-intermediate = "gcc-cross-intermediate" 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-intermediate" -PREFERRED_PROVIDER_virtual/powerpc-linux-libc-for-gcc = "glibc-intermediate" +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" PREFERRED_PROVIDER_virtual/libc = "glibc" diff --git a/conf/distro/oplinux-uclibc.conf b/conf/distro/oplinux-uclibc.conf index 9967a953f2..3a97c36aa6 100644 --- a/conf/distro/oplinux-uclibc.conf +++ b/conf/distro/oplinux-uclibc.conf @@ -43,12 +43,14 @@ MACHINE_KERNEL_VERSION = "2.6" # Binutils & Compiler # 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_VERSION_gcc ?= "4.1.1" PREFERRED_VERSION_gcc-cross ?= "4.1.1" PREFERRED_VERSION_gcc-cross-initial ?= "4.1.1" +PREFERRED_VERSION_gcc-cross-intermediate ?= "4.1.1" PREFERRED_VERSION_binutils ?= "2.17.50.0.5" PREFERRED_VERSION_binutils-cross ?= "2.17.50.0.5" diff --git a/conf/distro/oplinux.conf b/conf/distro/oplinux.conf index 03e56b0148..d4986bdc84 100644 --- a/conf/distro/oplinux.conf +++ b/conf/distro/oplinux.conf @@ -35,6 +35,7 @@ DISTRO_TYPE = "debug" TARGET_OS = "linux" 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" @@ -51,14 +52,14 @@ PREFERRED_PROVIDER_virtual/libintl ?= "glibc" PREFERRED_PROVIDER_virtual/libc ?= "glibc" -PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}libc-for-gcc = "glibc-intermediate" -PREFERRED_PROVIDER_virtual/arm-oplinux-linux-gnueabi-libc-for-gcc = "glibc-intermediate" -PREFERRED_PROVIDER_virtual/armeb-oplinux-linux-gnueabi-libc-for-gcc = "glibc-intermediate" -PREFERRED_PROVIDER_virtual/arm-linux-libc-for-gcc = "glibc-intermediate" -PREFERRED_PROVIDER_virtual/armeb-linux-libc-for-gcc = "glibc-intermediate" -PREFERRED_PROVIDER_virtual/powerpc-oplinux-linux-libc-for-gcc = "glibc-intermediate" -PREFERRED_PROVIDER_virtual/mipsel-oplinux-linux-libc-for-gcc = "glibc-intermediate" -PREFERRED_PROVIDER_virtual/sparc-oplinux-linux-libc-for-gcc = "glibc-intermediate" +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" @@ -84,6 +85,7 @@ PREFERRED_VERSION_gcc ?= "4.1.1" PREFERRED_VERSION_gcc-cross ?= "4.1.1" PREFERRED_VERSION_gcc-cross-sdk ?= "4.1.1" PREFERRED_VERSION_gcc-cross-initial ?= "4.1.1" +PREFERRED_VERSION_gcc-cross-intermediate ?= "4.1.1" PREFERRED_VERSION_binutils ?= "2.17.50.0.5" PREFERRED_VERSION_binutils-cross ?= "2.17.50.0.5" @@ -96,7 +98,6 @@ PREFERRED_VERSION_linux-libc-headers_powerpc ?= "2.6.18" PREFERRED_VERSION_linux-libc-headers ?= "2.6.18" PREFERRED_VERSION_glibc-initial ?= "2.5" -PREFERRED_VERSION_glibc-intermediate ?= "2.5" PREFERRED_VERSION_glibc ?= "2.5" PCMCIA_MANAGER = "pcmciautils" diff --git a/conf/distro/sharprom-compatible.conf b/conf/distro/sharprom-compatible.conf index 245bf77d6d..ef198acef3 100644 --- a/conf/distro/sharprom-compatible.conf +++ b/conf/distro/sharprom-compatible.conf @@ -41,6 +41,7 @@ PREFERRED_PROVIDER_virtual/libintl = "sharprom-toolchain-native" PREFERRED_PROVIDER_virtual/arm-linux-gcc = "sharprom-toolchain-native" PREFERRED_PROVIDER_linux-libc-headers = "linux-libc-headers" PREFERRED_PROVIDER_virtual/arm-linux-gcc-initial = "sharprom-toolchain-native" +PREFERRED_PROVIDER_virtual/arm-linux-gcc-intermediate = "sharprom-toolchain-native" PREFERRED_VERSION_glibc = "2.2.5" diff --git a/conf/distro/ucslugc.conf b/conf/distro/ucslugc.conf index 441c3484ef..e3fa0166ed 100644 --- a/conf/distro/ucslugc.conf +++ b/conf/distro/ucslugc.conf @@ -10,6 +10,7 @@ THUMB_INTERWORK = "yes" TARGET_OS = "linux-uclibc" PREFERRED_VERSION_gcc-cross-initial = "3.4.4" +PREFERRED_VERSION_gcc-cross-intermediate = "3.4.4" PREFERRED_VERSION_gcc-cross = "3.4.4" PREFERRED_VERSION_gcc = "3.4.4" diff --git a/conf/distro/unslung.conf b/conf/distro/unslung.conf index b5d28f9024..b59057b6ff 100644 --- a/conf/distro/unslung.conf +++ b/conf/distro/unslung.conf @@ -42,6 +42,7 @@ UNSLUNG_EXTRA_INSTALL ?= "${UNSLUNG_EXTRA_RDEPENDS}" # Select between multiple alternative providers, if more than one is eligible. 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" @@ -54,6 +55,7 @@ PREFERRED_PROVIDER_libc6-unslung = "glibc" PREFERRED_VERSION_binutils ?= "2.15.94.0.1" PREFERRED_VERSION_binutils-cross ?= "2.15.94.0.1" PREFERRED_VERSION_gcc-cross-initial ?= "3.4.4" +PREFERRED_VERSION_gcc-cross-intermediate ?= "3.4.4" PREFERRED_VERSION_gcc-cross ?= "3.4.4" PREFERRED_VERSION_gcc ?= "3.4.4" PREFERRED_VERSION_glibc ?= "2.2.5" diff --git a/conf/distro/wrt54oe.conf b/conf/distro/wrt54oe.conf index 90babfdc1a..4d18407333 100644 --- a/conf/distro/wrt54oe.conf +++ b/conf/distro/wrt54oe.conf @@ -14,11 +14,13 @@ INHERIT += "package_ipk debian" TARGET_OS = "linux-uclibc" 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" PREFERRED_VERSION_gcc-cross = "3.4.4" PREFERRED_VERSION_gcc-cross-sdk = "3.4.4" PREFERRED_VERSION_gcc = "3.4.4" diff --git a/conf/local.conf.sample b/conf/local.conf.sample index 213ed12fae..194e204e79 100644 --- a/conf/local.conf.sample +++ b/conf/local.conf.sample @@ -51,6 +51,7 @@ BBMASK = "" PREFERRED_PROVIDERS = "virtual/qte:qte virtual/libqpe:libqpe-opie" PREFERRED_PROVIDERS += " virtual/libsdl:libsdl-x11" 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" diff --git a/conf/machine/native.conf b/conf/machine/native.conf index 04939da36e..8f782d75f1 100644 --- a/conf/machine/native.conf +++ b/conf/machine/native.conf @@ -7,7 +7,7 @@ TARGET_PREFIX = "" VENDOR = "-oe" PREFERRED_PROVIDER_virtual/kernel = "native-kernel" -ASSUME_PROVIDED += "virtual/gcc-initial virtual/gcc virtual/g++ virtual/libc virtual/libintl virtual/libiconv" +ASSUME_PROVIDED += "virtual/gcc-initial virtual/gcc-intermediate virtual/gcc virtual/g++" ASSUME_PROVIDED += "binutils-cross" ASSUME_PROVIDED += "virtual/libiconv virtual/libintl virtual/libc" diff --git a/packages/eglibc/eglibc-initial.inc b/packages/eglibc/eglibc-initial.inc index 342711c157..5fbb5dbda5 100644 --- a/packages/eglibc/eglibc-initial.inc +++ b/packages/eglibc/eglibc-initial.inc @@ -1,5 +1,5 @@ SECTION = "libs" -DEPENDS = "linux-libc-headers" +DEPENDS = "linux-libc-headers virtual/${TARGET_PREFIX}gcc-initial" PROVIDES = "virtual/${TARGET_PREFIX}libc-initial" FILESPATH = "${@base_set_filespath([ '${FILE_DIRNAME}/eglibc', '${FILE_DIRNAME}/files', '${FILE_DIRNAME}' ], d)}" @@ -9,11 +9,13 @@ PACKAGES_DYNAMIC = "" do_configure () { sed -ie 's,{ (exit 1); exit 1; }; },{ (exit 0); }; },g' ${S}/configure chmod +x ${S}/configure - CC="${BUILD_CC}" CPP="${BUILD_CPP}" LD="${BUILD_LD}" \ + (cd ${S} && gnu-configize) || die "failure in running gnu-configize" + find ${S} -name "configure" | xargs touch ${S}/configure --host=${TARGET_SYS} --build=${BUILD_SYS} \ + --prefix=/usr \ --without-cvs --disable-sanity-checks \ --with-headers=${STAGING_DIR_TARGET}${layout_includedir} \ - --enable-hacker-mode + --enable-hacker-mode --enable-addons } do_compile () { @@ -22,8 +24,14 @@ do_compile () { do_stage () { oe_runmake cross-compiling=yes install_root=${STAGING_DIR_HOST} \ - includedir='${layout_includedir}' prefix='${layout_prefix}' install-headers + includedir='${layout_includedir}' prefix='${layout_prefix}' install-headers \ + install-bootstrap-headers=yes + oe_runmake csu/subdir_lib + mkdir -p ${STAGING_DIR_TARGET}${layout_libdir} + install -m 644 csu/crt[1in].o ${STAGING_DIR_TARGET}${layout_libdir} + ${CC} -nostdlib -nostartfiles -shared -x c /dev/null \ + -o ${STAGING_DIR_TARGET}${layout_libdir}/libc.so } do_install () { diff --git a/packages/eglibc/eglibc-intermediate.inc b/packages/eglibc/eglibc-intermediate.inc deleted file mode 100644 index c226d8658d..0000000000 --- a/packages/eglibc/eglibc-intermediate.inc +++ /dev/null @@ -1,12 +0,0 @@ -SECTION = "libs" -PACKAGES = "" -PACKAGES_DYNAMIC = "" -PROVIDES = "virtual/${TARGET_PREFIX}libc-for-gcc" -DEPENDS = "virtual/${TARGET_PREFIX}gcc-initial linux-libc-headers" - -do_install () { - : -} - -GLIBC_ADDONS = "nptl,ports" -GLIBC_EXTRA_OECONF = "" diff --git a/packages/eglibc/eglibc-intermediate_svn.bb b/packages/eglibc/eglibc-intermediate_svn.bb deleted file mode 100644 index 7150f56d26..0000000000 --- a/packages/eglibc/eglibc-intermediate_svn.bb +++ /dev/null @@ -1,8 +0,0 @@ -require eglibc_${PV}.bb -require eglibc-intermediate.inc - -# gcc uses -Werror which break on a "you have no thumb interwork" _warning_ -do_configure_prepend() { - find ${S} -name "configure" | xargs touch - sed -i s:-Werror:: ${S}/configure -} diff --git a/packages/eglibc/eglibc.inc b/packages/eglibc/eglibc.inc index e1559e46e4..5d531a7915 100644 --- a/packages/eglibc/eglibc.inc +++ b/packages/eglibc/eglibc.inc @@ -4,12 +4,12 @@ SECTION = "libs" PRIORITY = "required" LICENSE = "LGPL" # nptl needs unwind support in gcc, which can't be built without glibc. -DEPENDS = "${@['virtual/${TARGET_PREFIX}gcc-initial', 'virtual/${TARGET_PREFIX}gcc']['nptl' in '${GLIBC_ADDONS}']} linux-libc-headers" +DEPENDS = "virtual/${TARGET_PREFIX}gcc-intermediate linux-libc-headers" #this leads to circular deps, so lets not add it yet #RDEPENDS_ldd += " bash" # nptl needs libgcc but dlopens it, so our shlibs code doesn't detect this -RDEPENDS += "${@['','libgcc']['nptl' in '${GLIBC_ADDONS}']}" -PROVIDES = "virtual/libc ${@['virtual/${TARGET_PREFIX}libc-for-gcc', '']['nptl' in '${GLIBC_ADDONS}']}" +#RDEPENDS += "${@['','libgcc']['nptl' in '${GLIBC_ADDONS}']}" +PROVIDES = "virtual/libc virtual/${TARGET_PREFIX}libc-for-gcc" PROVIDES += "virtual/libintl virtual/libiconv" inherit autotools diff --git a/packages/eglibc/eglibc_svn.bb b/packages/eglibc/eglibc_svn.bb index e7a4a1ba75..1be10c13ad 100644 --- a/packages/eglibc/eglibc_svn.bb +++ b/packages/eglibc/eglibc_svn.bb @@ -3,7 +3,7 @@ require eglibc.inc # DEFAULT_PREFERENCE = "-1" FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/eglibc-svn" PV = "2.8+svnr${SRCREV}" -PR = "r6" +PR = "r7" SRC_URI = "svn://svn.eglibc.org;module=trunk \ file://eglibc-svn-arm-lowlevellock-include-tls.patch;patch=1 \ file://etc/ld.so.conf \ diff --git a/packages/gcc/gcc-3.4.4.inc b/packages/gcc/gcc-3.4.4.inc index 704d9bc5c8..34204f10fa 100644 --- a/packages/gcc/gcc-3.4.4.inc +++ b/packages/gcc/gcc-3.4.4.inc @@ -17,8 +17,10 @@ SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \ file://always-fixincperm.patch;patch=1 \ file://GCOV_PREFIX_STRIP-cross-profile_3.4.patch;patch=1 \ file://zecke-xgcc-cpp.patch;patch=1 \ - file://gcc4-mtune-compat.patch;patch=1" - -SRC_URI += "file://gcc34-configure.in.patch;patch=1" -SRC_URI += "file://gcc34-thumb-support.patch;patch=1" + file://gcc-libgcc2-inhibit-libc.patch;patch=1 \ + file://gcc4-mtune-compat.patch;patch=1 \ + file://gcc34-configure.in.patch;patch=1 \ + file://gcc34-thumb-support.patch;patch=1 \ + file://gcc-cross-fixincl.patch;patch=1 \ + " SRC_URI_append_fail-fast = " file://zecke-no-host-includes.patch;patch=1 " diff --git a/packages/gcc/gcc-3.4.4/gcc-cross-fixincl.patch b/packages/gcc/gcc-3.4.4/gcc-cross-fixincl.patch new file mode 100644 index 0000000000..365485497c --- /dev/null +++ b/packages/gcc/gcc-3.4.4/gcc-cross-fixincl.patch @@ -0,0 +1,77 @@ +See http://gcc.gnu.org/PR22541 + +From: Dan Kegel + +When building gcc-3.4.3 or gcc-4.0.0 as a cross into a clean $PREFIX +(the only two I've tried like this), the configure script happily copies +the glibc include files from include to sys-include; here's the line +from the log file (with $PREFIX instead of the real prefix): + +Copying $PREFIX/i686-unknown-linux-gnu/include to $PREFIX/i686-unknown-linux-gnu/sys-include + +But later, when running fixincludes, it gives the error message + The directory that should contain system headers does not exist: + $PREFIX/lib/gcc/i686-unknown-linux-gnu/3.4.3/../../../../i686-unknown-linux-gnu/sys-include + +Nevertheless, it continues building; the header files it installs in + $PREFIX/lib/gcc/i686-unknown-linux-gnu/3.4.3/include +do not include the boilerplate that would cause it to #include_next the +glibc headers in the system header directory. +Thus the resulting toolchain can't compile the following program: +#include +int x = PATH_MAX; +because its limits.h doesn't include the glibc header. + +That's not nice. I suspect the problem is that gcc/Makefile.in assumes that +it can refer to $PREFIX/i686-unknown-linux-gnu with the path + $PREFIX/lib/../i686-unknown-linux-gnu, but +that fails because the directory $PREFIX/lib doesn't exist during 'make all'; +it is only created later, during 'make install'. (Which makes this problem +confusing, since one only notices the breakage well after 'make install', +at which point the path configure complained about does exist, and has the +right stuff in it.) + +A possible fix is to replace the line in gcc/Makefile.in that says + SYSTEM_HEADER_DIR = @SYSTEM_HEADER_DIR@ +with a version that gets rid of extra ..'s, e.g. + SYSTEM_HEADER_DIR = `echo @SYSTEM_HEADER_DIR@ | sed -e :a -e "s,[^/]*/\.\.\/,,;ta"` +(hey, that's the first time I've ever used a label in a sed script; thanks to the sed faq +for explaining the :a ... ta method of looping to repeat a search-and-replace until it doesn't match.) + + +--- + gcc/Makefile.in | 10 ++++++++-- + 1 file changed, 8 insertions(+), 2 deletions(-) + +Index: gcc-3.4.4/gcc/Makefile.in +=================================================================== +--- gcc-3.4.4.orig/gcc/Makefile.in 2008-07-23 23:44:15.000000000 -0700 ++++ gcc-3.4.4/gcc/Makefile.in 2008-07-23 23:46:54.000000000 -0700 +@@ -350,7 +350,10 @@ NATIVE_SYSTEM_HEADER_DIR = /usr/include + CROSS_SYSTEM_HEADER_DIR = @CROSS_SYSTEM_HEADER_DIR@ + + # autoconf sets SYSTEM_HEADER_DIR to one of the above. +-SYSTEM_HEADER_DIR = @SYSTEM_HEADER_DIR@ ++# Purge it of unneccessary internal relative paths ++# to directories that might not exist yet. ++# The sed idiom for this is to repeat the search-and-replace until it doesn't match, using :a ... ta. ++SYSTEM_HEADER_DIR = `echo @SYSTEM_HEADER_DIR@ | sed -e :a -e "s,[^/]*/\.\.\/,," -e ta` + + # Control whether to run fixproto and fixincludes. + STMP_FIXPROTO = @STMP_FIXPROTO@ +@@ -2548,11 +2551,14 @@ install-gcc-tooldir: + $(SHELL) ${srcdir}/mkinstalldirs $(DESTDIR)$(gcc_tooldir) + + # Build fixed copies of system files. ++# Abort if no system headers available, unless building a crosscompiler. ++# FIXME: abort unless building --without-headers would be more accurate and less ugly ++ + stmp-fixinc: fixinc.sh gsyslimits.h + @if ! $(inhibit_libc) && test ! -d ${SYSTEM_HEADER_DIR}; then \ + echo The directory that should contain system headers does not exist: >&2 ; \ + echo " ${SYSTEM_HEADER_DIR}" >&2 ; \ +- if test "x${SYSTEM_HEADER_DIR}" = "x${gcc_tooldir}/sys-include"; \ ++ if test "x${SYSTEM_HEADER_DIR}" = "x`echo "${gcc_tooldir}/sys-include" | sed -e :a -e "s,[^/]*/\.\.\/,," -e ta`"; \ + then sleep 1; else exit 1; fi; \ + fi + rm -rf include; mkdir include diff --git a/packages/gcc/gcc-3.4.4/gcc-libgcc2-inhibit-libc.patch b/packages/gcc/gcc-3.4.4/gcc-libgcc2-inhibit-libc.patch new file mode 100644 index 0000000000..4e2b5667ff --- /dev/null +++ b/packages/gcc/gcc-3.4.4/gcc-libgcc2-inhibit-libc.patch @@ -0,0 +1,251 @@ +--- + gcc/Makefile.in | 25 ++++++++++++++++--------- + gcc/configure | 22 ++++++++++++++++++---- + gcc/configure.ac | 15 ++++++++++++--- + gcc/gcc.c | 9 +++++++++ + 4 files changed, 55 insertions(+), 16 deletions(-) + +Index: gcc-3.4.4/gcc/configure.ac +=================================================================== +--- gcc-3.4.4.orig/gcc/configure.ac 2008-07-23 23:53:04.000000000 -0700 ++++ gcc-3.4.4/gcc/configure.ac 2008-07-23 23:53:05.000000000 -0700 +@@ -567,6 +567,10 @@ AC_ARG_ENABLE(shared, + ], [enable_shared=yes]) + AC_SUBST(enable_shared) + ++AC_ARG_WITH(build-sysroot, ++ [ --with-build-sysroot=sysroot ++ use sysroot as the system root during the build]) ++ + AC_ARG_WITH(sysroot, + [ --with-sysroot[=DIR] Search for usr/lib, usr/include, et al, within DIR.], + [ +@@ -577,6 +581,11 @@ AC_ARG_WITH(sysroot, + + TARGET_SYSTEM_ROOT_DEFINE='-DTARGET_SYSTEM_ROOT=\"$(TARGET_SYSTEM_ROOT)\"' + CROSS_SYSTEM_HEADER_DIR='$(TARGET_SYSTEM_ROOT)$(NATIVE_SYSTEM_HEADER_DIR)' ++ if test "x$with_build_sysroot" != x; then ++ build_system_header_dir=$with_build_sysroot'$(NATIVE_SYSTEM_HEADER_DIR)' ++ else ++ build_system_header_dir='$(CROSS_SYSTEM_HEADER_DIR)' ++ fi + + if test "x$exec_prefix" = xNONE; then + if test "x$prefix" = xNONE; then +@@ -1453,7 +1462,7 @@ if test x$host != x$target + then + CROSS="-DCROSS_COMPILE" + ALL=all.cross +- SYSTEM_HEADER_DIR='$(CROSS_SYSTEM_HEADER_DIR)' ++ SYSTEM_HEADER_DIR=$build_system_header_dir + case "$host","$target" in + # Darwin crosses can use the host system's libraries and headers, + # because of the fat library support. Of course, it must be the +@@ -1487,11 +1496,11 @@ fi + # then define inhibit_libc in LIBGCC2_CFLAGS. + # This prevents libgcc2 from containing any code which requires libc + # support. +-inhibit_libc= ++inhibit_libc=false + if { { test x$host != x$target && test "x$with_sysroot" = x ; } || + test x$with_newlib = xyes ; } && + { test "x$with_headers" = x || test "x$with_headers" = xno ; } ; then +- inhibit_libc=-Dinhibit_libc ++ inhibit_libc=true + fi + AC_SUBST(inhibit_libc) + +Index: gcc-3.4.4/gcc/Makefile.in +=================================================================== +--- gcc-3.4.4.orig/gcc/Makefile.in 2005-02-24 01:26:57.000000000 -0800 ++++ gcc-3.4.4/gcc/Makefile.in 2008-07-24 00:08:18.000000000 -0700 +@@ -291,7 +291,7 @@ GCC_FOR_TARGET = $(STAGE_CC_WRAPPER) ./x + # This is used instead of ALL_CFLAGS when compiling with GCC_FOR_TARGET. + # It omits XCFLAGS, and specifies -B./. + # It also specifies -isystem ./include to find, e.g., stddef.h. +-GCC_CFLAGS=$(INTERNAL_CFLAGS) $(X_CFLAGS) $(T_CFLAGS) $(LOOSE_WARN) -Wold-style-definition $($@-warn) -isystem ./include $(TCFLAGS) ++GCC_CFLAGS=$(CFLAGS_FOR_TARGET) $(INTERNAL_CFLAGS) $(X_CFLAGS) $(T_CFLAGS) $(LOOSE_WARN) -Wold-style-definition $($@-warn) -isystem ./include $(TCFLAGS) + + # --------------------------------------------------- + # Programs which produce files for the target machine +@@ -485,10 +485,17 @@ GGC_LIB= + LIBGCC = libgcc.a + INSTALL_LIBGCC = install-libgcc + ++# "true" if the target C library headers are unavailable; "false" ++# otherwise. ++inhibit_libc = @inhibit_libc@ ++ifeq ($(inhibit_libc),true) ++INHIBIT_LIBC_CFLAGS = -Dinhibit_libc ++endif ++ + # Options to use when compiling libgcc2.a. + # + LIBGCC2_DEBUG_CFLAGS = -g +-LIBGCC2_CFLAGS = -O2 $(LIBGCC2_INCLUDES) $(GCC_CFLAGS) $(TARGET_LIBGCC2_CFLAGS) $(LIBGCC2_DEBUG_CFLAGS) $(GTHREAD_FLAGS) -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED @inhibit_libc@ ++LIBGCC2_CFLAGS = -O2 $(LIBGCC2_INCLUDES) $(GCC_CFLAGS) $(TARGET_LIBGCC2_CFLAGS) $(LIBGCC2_DEBUG_CFLAGS) $(GTHREAD_FLAGS) -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED $(I