]> code.ossystems Code Review - openembedded-core.git/commitdiff
gcc: Add toolchain build process changes from OE which adds gcc-cross-intermediate...
authorRichard Purdie <richard@openedhand.com>
Thu, 24 Jul 2008 20:30:37 +0000 (20:30 +0000)
committerRichard Purdie <richard@openedhand.com>
Thu, 24 Jul 2008 20:30:37 +0000 (20:30 +0000)
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@4943 311d38ba-8fff-0310-9ca6-ca027cbcb966

30 files changed:
meta/conf/distro/include/poky-eabi.inc
meta/conf/distro/include/poky-uclibc.inc
meta/packages/gcc/gcc-3.4.4.inc
meta/packages/gcc/gcc-3.4.4/gcc-libgcc2-inhibit-libc.patch [new file with mode: 0644]
meta/packages/gcc/gcc-configure-cross.inc
meta/packages/gcc/gcc-cross-initial.inc
meta/packages/gcc/gcc-cross-intermediate.inc [new file with mode: 0644]
meta/packages/gcc/gcc-cross-intermediate_3.4.4.bb [new file with mode: 0644]
meta/packages/gcc/gcc-cross-intermediate_4.1.2.bb [new file with mode: 0644]
meta/packages/gcc/gcc-cross-intermediate_4.2.3.bb [new file with mode: 0644]
meta/packages/gcc/gcc-cross-intermediate_4.3.1.bb [new file with mode: 0644]
meta/packages/gcc/gcc-cross-intermediate_csl-arm-2005q3.bb [new file with mode: 0644]
meta/packages/gcc/gcc-cross-intermediate_csl-arm-2006q1.bb [new file with mode: 0644]
meta/packages/gcc/gcc-cross-intermediate_csl-arm-2007q3.bb [new file with mode: 0644]
meta/packages/gcc/gcc-cross-intermediate_csl-arm-2008q1.bb [new file with mode: 0644]
meta/packages/gcc/gcc-cross_3.4.4.bb
meta/packages/gcc/gcc-cross_4.1.2.bb
meta/packages/gcc/gcc-cross_4.2.3.bb
meta/packages/gcc/gcc-cross_4.3.1.bb
meta/packages/glibc/files/glibc-2.6.1-use-short-for-fnstsw.patch [new file with mode: 0644]
meta/packages/glibc/glibc-initial.inc
meta/packages/glibc/glibc-intermediate.inc [deleted file]
meta/packages/glibc/glibc-intermediate_2.4.bb [deleted file]
meta/packages/glibc/glibc-intermediate_2.5.bb [deleted file]
meta/packages/glibc/glibc-intermediate_2.6.1.bb [deleted file]
meta/packages/glibc/glibc-intermediate_csl-2005q3-2.bb [deleted file]
meta/packages/glibc/glibc-stage.inc
meta/packages/glibc/glibc.inc
meta/packages/glibc/glibc_2.5.bb
meta/packages/glibc/glibc_2.6.1.bb

index 7787e3de7d2e9d941d81a3c8bcbd311754fd2439..cf2f336de1e708e3ce73e15523a6e2b1ea94ca62 100644 (file)
@@ -6,9 +6,10 @@
 
 TARGET_VENDOR = "-poky"
 
-PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}libc-for-gcc = "glibc-intermediate"
+PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}libc-for-gcc = "glibc"
 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"
 
@@ -24,10 +25,10 @@ BINUVERSION = "2.18"
 PREFERRED_VERSION_gcc ?= "${GCCVERSION}"
 PREFERRED_VERSION_gcc-cross ?= "${GCCVERSION}"
 PREFERRED_VERSION_gcc-cross-initial ?= "${GCCVERSION}"
+PREFERRED_VERSION_gcc-cross-intermediate ?= "${GCCVERSION}"
 PREFERRED_VERSION_binutils ?= "${BINUVERSION}"
 PREFERRED_VERSION_binutils-cross ?= "${BINUVERSION}"
 PREFERRED_VERSION_linux-libc-headers ?= "2.6.24"
 PREFERRED_VERSION_glibc ?= "2.6.1"
-PREFERRED_VERSION_glibc-intermediate ?= "2.6.1"
 PREFERRED_VERSION_glibc-initial ?= "2.6.1"
 PREFERRED_VERSION_elfutils ?= "0.108"
index fcd65c9963e49de133e8d65e4db687efcd9bfe4d..72e016af6ff1e99a2ba6d93582fb12cd33b106cf 100644 (file)
@@ -3,6 +3,7 @@
 #
 
 PREFERRED_PROVIDER_virtual/libc = "uclibc"
+PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}libc-for-gcc = "uclibc"
 PREFERRED_PROVIDER_virtual/libiconv ?= "libiconv"
 PREFERRED_PROVIDER_virtual/libintl ?= "gettext"
 
index 704d9bc5c8e9656d8e6b29fcc266d4f66f06e585..5700a7c83154ab6806e4bf37a6ab0441de4cac68 100644 (file)
@@ -17,6 +17,7 @@ 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://gcc-libgcc2-inhibit-libc.patch;patch=1 \
           file://gcc4-mtune-compat.patch;patch=1"
 
 SRC_URI += "file://gcc34-configure.in.patch;patch=1"
diff --git a/meta/packages/gcc/gcc-3.4.4/gcc-libgcc2-inhibit-libc.patch b/meta/packages/gcc/gcc-3.4.4/gcc-libgcc2-inhibit-libc.patch
new file mode 100644 (file)
index 0000000..f3f7048
--- /dev/null
@@ -0,0 +1,21 @@
+---
+ gcc/config/i386/linux.h |    2 ++
+ 1 file changed, 2 insertions(+)
+
+Index: gcc-3.4.4/gcc/config/i386/linux.h
+===================================================================
+--- gcc-3.4.4.orig/gcc/config/i386/linux.h     2008-07-17 23:40:00.000000000 -0700
++++ gcc-3.4.4/gcc/config/i386/linux.h  2008-07-17 23:40:41.000000000 -0700
+@@ -218,6 +218,7 @@ Boston, MA 02111-1307, USA.  */
+ /* Do code reading to identify a signal frame, and set the frame
+    state data appropriately.  See unwind-dw2.c for the structs.  */
++#ifndef inhibit_libc
+ #ifdef IN_LIBGCC2
+ /* There's no sys/ucontext.h for some (all?) libc1, so no
+    signal-turned-exceptions for them.  There's also no configure-run for
+@@ -282,3 +283,4 @@ Boston, MA 02111-1307, USA.  */
+   } while (0)
+ #endif /* not USE_GNULIBC_1 */
+ #endif /* IN_LIBGCC2 */
++#endif
index c05cf3dff86e9fbbec4dd8921c63ee7e290069f7..da66e8e851fe1a459ebc1f02837b71553e3ac98e 100644 (file)
@@ -7,10 +7,6 @@ EXTRA_OECONF_PATHS = "--with-local-prefix=${STAGING_DIR_TARGET}${layout_prefix}
                       --with-sysroot=${STAGING_DIR_TARGET} \
                       --with-build-sysroot=${STAGING_DIR_TARGET}"
 
-do_configure_prepend () {
-       rm -f ${CROSS_DIR}/lib/gcc/${TARGET_SYS}/${BINV}/libgcc_eh.a
-}
-
 do_compile_prepend () {
        export CC="${BUILD_CC}"
        export AR_FOR_TARGET="${TARGET_SYS}-ar"
index e0675263eae5944e0858a6c524bb5844f1d0207c..15e5fa62fcb66a9fe24fb0c0eaaf6842bb4b3f9a 100644 (file)
@@ -1,6 +1,4 @@
 DEPENDS = "virtual/${TARGET_PREFIX}binutils"
-# @todo Please add comment on why this is (still?) needed?
-DEPENDS += "${@['virtual/${TARGET_PREFIX}libc-initial',''][bb.data.getVar('TARGET_ARCH', d, 1) in ['arm', 'armeb', 'mips', 'mipsel', 'powerpc']]}"
 PROVIDES = "virtual/${TARGET_PREFIX}gcc-initial"
 PACKAGES = ""
 
@@ -8,6 +6,7 @@ PACKAGES = ""
 # sysroot is needed in case we use libc-initial
 EXTRA_OECONF = "--with-local-prefix=${STAGING_DIR_TARGET}${layout_prefix} \
                --with-newlib \
+               --without-headers \
                --disable-shared \
                --disable-threads \
                --disable-multilib \
@@ -19,11 +18,6 @@ EXTRA_OECONF = "--with-local-prefix=${STAGING_DIR_TARGET}${layout_prefix} \
                --with-build-sysroot=${STAGING_DIR_TARGET} \
                ${@get_gcc_fpu_setting(bb, d)}"
 
-do_stage_prepend () {
-       mkdir -p ${CROSS_DIR}/lib/gcc/${TARGET_SYS}/${BINV}
-       ln -sf libgcc.a ${CROSS_DIR}/lib/gcc/${TARGET_SYS}/${BINV}/libgcc_eh.a
-}
-
 do_install () {
        :
 }
diff --git a/meta/packages/gcc/gcc-cross-intermediate.inc b/meta/packages/gcc/gcc-cross-intermediate.inc
new file mode 100644 (file)
index 0000000..4fa1288
--- /dev/null
@@ -0,0 +1,21 @@
+DEPENDS = "virtual/${TARGET_PREFIX}binutils"
+DEPENDS += "virtual/${TARGET_PREFIX}libc-initial"
+PROVIDES = "virtual/${TARGET_PREFIX}gcc-intermediate"
+PACKAGES = ""
+
+# This is intended to be a -very- basic config
+# sysroot is needed in case we use libc-initial
+EXTRA_OECONF = "--with-local-prefix=${STAGING_DIR_TARGET}${layout_prefix} \
+               --enable-shared \
+               --disable-multilib \
+               --disable-threads \
+               --enable-languages=c \
+               --enable-target-optspace \
+               --program-prefix=${TARGET_PREFIX} \
+               --with-sysroot=${STAGING_DIR_TARGET} \
+               --with-build-sysroot=${STAGING_DIR_TARGET} \
+               ${@get_gcc_fpu_setting(bb, d)}"
+
+do_install () {
+       :
+}
diff --git a/meta/packages/gcc/gcc-cross-intermediate_3.4.4.bb b/meta/packages/gcc/gcc-cross-intermediate_3.4.4.bb
new file mode 100644 (file)
index 0000000..eb59de9
--- /dev/null
@@ -0,0 +1,2 @@
+require gcc-cross_${PV}.bb
+require gcc-cross-intermediate.inc
diff --git a/meta/packages/gcc/gcc-cross-intermediate_4.1.2.bb b/meta/packages/gcc/gcc-cross-intermediate_4.1.2.bb
new file mode 100644 (file)
index 0000000..3e103aa
--- /dev/null
@@ -0,0 +1,5 @@
+require gcc-cross_${PV}.bb
+require gcc-cross-intermediate.inc
+
+EXTRA_OECONF += "--disable-libmudflap \
+               --disable-libssp"
diff --git a/meta/packages/gcc/gcc-cross-intermediate_4.2.3.bb b/meta/packages/gcc/gcc-cross-intermediate_4.2.3.bb
new file mode 100644 (file)
index 0000000..7acca81
--- /dev/null
@@ -0,0 +1,5 @@
+require gcc-cross_${PV}.bb
+require gcc-cross-intermediate.inc
+
+EXTRA_OECONF += "--disable-libmudflap --disable-libgomp \
+               --disable-libssp"
diff --git a/meta/packages/gcc/gcc-cross-intermediate_4.3.1.bb b/meta/packages/gcc/gcc-cross-intermediate_4.3.1.bb
new file mode 100644 (file)
index 0000000..b0932f5
--- /dev/null
@@ -0,0 +1,14 @@
+require gcc-cross_${PV}.bb
+require gcc-cross-intermediate.inc
+
+DEPENDS += "gmp-native mpfr-native"
+
+EXTRA_OECONF += " --disable-libmudflap \
+                 --disable-libgomp \
+                 --disable-libssp"
+
+# Hack till we fix *libc properly
+do_stage_append() {
+        ln -sf ${CROSS_DIR}/lib/gcc/${TARGET_SYS}/${BINV}/include-fixed/* ${CROSS_DIR}/lib/gcc/${TARGET_SYS}/${BINV}/include/
+}
+
diff --git a/meta/packages/gcc/gcc-cross-intermediate_csl-arm-2005q3.bb b/meta/packages/gcc/gcc-cross-intermediate_csl-arm-2005q3.bb
new file mode 100644 (file)
index 0000000..6e9c252
--- /dev/null
@@ -0,0 +1,2 @@
+require gcc-cross_csl-arm-2005q3.bb
+require gcc-cross-intermediate.inc
diff --git a/meta/packages/gcc/gcc-cross-intermediate_csl-arm-2006q1.bb b/meta/packages/gcc/gcc-cross-intermediate_csl-arm-2006q1.bb
new file mode 100644 (file)
index 0000000..2d4b55f
--- /dev/null
@@ -0,0 +1,7 @@
+require gcc-cross_${PV}.bb
+require gcc-cross-intermediate.inc
+
+S = "${WORKDIR}/gcc-2006q1"
+
+EXTRA_OECONF += "--disable-libmudflap \
+               --disable-libssp"
diff --git a/meta/packages/gcc/gcc-cross-intermediate_csl-arm-2007q3.bb b/meta/packages/gcc/gcc-cross-intermediate_csl-arm-2007q3.bb
new file mode 100644 (file)
index 0000000..114d983
--- /dev/null
@@ -0,0 +1,12 @@
+require gcc-cross_${PV}.bb
+require gcc-cross-intermediate.inc
+
+S = "${WORKDIR}/gcc-4.2"
+
+EXTRA_OECONF += "--disable-libssp --disable-bootstrap --disable-libgomp --disable-libmudflap "
+
+# Hack till we fix *libc properly
+do_stage_append() {
+       ln -sf ${CROSS_DIR}/lib/gcc/${TARGET_SYS}/${BINV}/include-fixed/* ${CROSS_DIR}/lib/gcc/${TARGET_SYS}/${BINV}/include/
+}
+
diff --git a/meta/packages/gcc/gcc-cross-intermediate_csl-arm-2008q1.bb b/meta/packages/gcc/gcc-cross-intermediate_csl-arm-2008q1.bb
new file mode 100644 (file)
index 0000000..114d983
--- /dev/null
@@ -0,0 +1,12 @@
+require gcc-cross_${PV}.bb
+require gcc-cross-intermediate.inc
+
+S = "${WORKDIR}/gcc-4.2"
+
+EXTRA_OECONF += "--disable-libssp --disable-bootstrap --disable-libgomp --disable-libmudflap "
+
+# Hack till we fix *libc properly
+do_stage_append() {
+       ln -sf ${CROSS_DIR}/lib/gcc/${TARGET_SYS}/${BINV}/include-fixed/* ${CROSS_DIR}/lib/gcc/${TARGET_SYS}/${BINV}/include/
+}
+
index c9b5cc9924703deaab27b1d77279af2020845513..c7a4cfe857b4b21c2e45550ecc8f5665ac28c492 100644 (file)
@@ -1,4 +1,4 @@
-PR = "r9"
+PR = "r10"
 
 require gcc-${PV}.inc
 require gcc-cross.inc
index 43f21735e7eec2b51b108782ab4272111f02dc96..c9e3279ffc0e0fd527dca176d3f09f124558d693 100644 (file)
@@ -1,4 +1,4 @@
-PR = "r16"
+PR = "r17"
 
 require gcc-${PV}.inc
 require gcc-cross4.inc
index 11e04594fc5de6aad409871aa9a4c726b5e3368f..72f72835c32314ce02188b92a04660fd2a89bfad 100644 (file)
@@ -1,4 +1,4 @@
-PR = "r6"
+PR = "r7"
 
 require gcc-${PV}.inc
 require gcc-cross4.inc
index 9821d3cd832d9af26e7cb6b8a2f6db5ec271f0de..11e04594fc5de6aad409871aa9a4c726b5e3368f 100644 (file)
@@ -1,4 +1,4 @@
-PR = "r5"
+PR = "r6"
 
 require gcc-${PV}.inc
 require gcc-cross4.inc
diff --git a/meta/packages/glibc/files/glibc-2.6.1-use-short-for-fnstsw.patch b/meta/packages/glibc/files/glibc-2.6.1-use-short-for-fnstsw.patch
new file mode 100644 (file)
index 0000000..6979229
--- /dev/null
@@ -0,0 +1,30 @@
+Source: http://sourceware.org/ml/libc-alpha/2008-01/msg00017.html
+
+I am checking this x86 assembler patch:
+
+http://sourceware.org/ml/binutils/2008-01/msg00148.html
+
+to check operand size. fnstsw stores 16bit into %ax. The upper
+16bit of %eax is unchanged.  The new assembler will disallow
+"fnstsw %eax".  Here is a patch for glibc.
+
+
+H.J.
+
+---
+ sysdeps/i386/fpu/ftestexcept.c |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+Index: glibc-2.6.1/sysdeps/i386/fpu/ftestexcept.c
+===================================================================
+--- glibc-2.6.1.orig/sysdeps/i386/fpu/ftestexcept.c    2008-07-19 11:00:45.000000000 -0700
++++ glibc-2.6.1/sysdeps/i386/fpu/ftestexcept.c 2008-07-19 11:01:25.000000000 -0700
+@@ -26,7 +26,7 @@
+ int
+ fetestexcept (int excepts)
+ {
+-  int temp;
++  short temp;
+   int xtemp = 0;
+   /* Get current exceptions.  */
index 0e5db2e72926001c95a4512246c41473bceb035a..143a662d52971f5ec2123b0dd03763d3128625ec 100644 (file)
@@ -1,5 +1,5 @@
 SECTION = "libs"
-DEPENDS = "linux-libc-headers"
+DEPENDS = "virtual/${TARGET_PREFIX}gcc-initial linux-libc-headers"
 PROVIDES = "virtual/${TARGET_PREFIX}libc-initial"
 FILESPATH = "${@base_set_filespath([ '${FILE_DIRNAME}/glibc-2.4', '${FILE_DIRNAME}/glibc', '${FILE_DIRNAME}/files', '${FILE_DIRNAME}' ], d)}"
 
@@ -9,7 +9,8 @@ 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}" ${S}/configure --host=${TARGET_SYS} --build=${BUILD_SYS} \
+       find ${S} -name "configure" | xargs touch
+       ${S}/configure --host=${TARGET_SYS} --build=${BUILD_SYS} \
                --without-cvs --disable-sanity-checks \
                --with-headers=${STAGING_DIR_TARGET}${layout_includedir} \
                --enable-hacker-mode
@@ -30,8 +31,11 @@ do_compile () {
 }
 
 do_stage () {
-       oe_runmake cross-compiling=yes install_root=${STAGING_DIR_HOST} includedir='${layout_includedir}' prefix='${layout_prefix}' install-headers
+       oe_runmake cross-compiling=yes install_root=${STAGING_DIR_HOST} \
+       includedir='${layout_includedir}' prefix='${layout_prefix}' \
+       install-bootstrap-headers=yes install-headers
 
+       oe_runmake csu/subdir_lib
        # Two headers -- stubs.h and features.h -- aren't installed by install-headers,
        # so do them by hand.  We can tolerate an empty stubs.h for the moment.
        # See e.g. http://gcc.gnu.org/ml/gcc/2002-01/msg00900.html
@@ -42,6 +46,10 @@ do_stage () {
        if [ -e ${B}/bits/stdio_lim.h ]; then
                cp ${B}/bits/stdio_lim.h  ${STAGING_INCDIR}/bits/
        fi
+       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/meta/packages/glibc/glibc-intermediate.inc b/meta/packages/glibc/glibc-intermediate.inc
deleted file mode 100644 (file)
index c226d86..0000000
+++ /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/meta/packages/glibc/glibc-intermediate_2.4.bb b/meta/packages/glibc/glibc-intermediate_2.4.bb
deleted file mode 100644 (file)
index f29ffb3..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-require glibc_${PV}.bb
-require glibc-intermediate.inc
-
-DEFAULT_PREFERENCE = "-1"
-
diff --git a/meta/packages/glibc/glibc-intermediate_2.5.bb b/meta/packages/glibc/glibc-intermediate_2.5.bb
deleted file mode 100644 (file)
index 661a69a..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-require glibc_${PV}.bb
-require glibc-intermediate.inc
-
-# gcc uses -Werror which break on a "you have no thumb interwork" _warning_
-do_configure_prepend() {
-       sed -i s:-Werror:: ${S}/configure
-}
diff --git a/meta/packages/glibc/glibc-intermediate_2.6.1.bb b/meta/packages/glibc/glibc-intermediate_2.6.1.bb
deleted file mode 100644 (file)
index 05d6250..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-require glibc_${PV}.bb
-require glibc-intermediate.inc
-
-# gcc uses -Werror which break on a "you have no thumb interwork" _warning_
-do_configure_prepend() {
-       sed -i s:-Werror:: ${S}/configure
-}
-
diff --git a/meta/packages/glibc/glibc-intermediate_csl-2005q3-2.bb b/meta/packages/glibc/glibc-intermediate_csl-2005q3-2.bb
deleted file mode 100644 (file)
index 5d161b1..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-require glibc_${PV}.bb
-require glibc-intermediate.inc
-
-DEFAULT_PREFERENCE = "-1"
-
-GLIBC_ADDONS = "nptl,libidn"
-
-
index a86cf7888edc076b63573341f8ce8865e11d8741..2b7b303c145d26d3e510f51563bf1478213753eb 100644 (file)
@@ -3,7 +3,7 @@ do_stage() {
        oe_runmake 'install_root=${STAGING_DIR_HOST}' \
                   'includedir=${layout_includedir}' 'libdir=${layout_libdir}' 'slibdir=${layout_base_libdir}' \
                   '${STAGING_DIR_HOST}${layout_base_libdir}/libc.so.6' \
-                  install-headers install-lib
+                  install
 
        install -d ${STAGING_INCDIR}/gnu \
                   ${STAGING_INCDIR}/bits \
@@ -15,9 +15,4 @@ do_stage() {
                h=`echo $r|sed -e's,\.x$,.h,'`
                install -m 0644 ${S}/sunrpc/rpcsvc/$h ${STAGING_INCDIR}/rpcsvc/
        done
-       for i in libc.a libc_pic.a libc_nonshared.a; do
-               install -m 0644 ${B}/$i ${STAGING_DIR_HOST}/${layout_base_libdir}/ || die "failed to install $i"
-       done
-       echo 'GROUP ( libpthread.so.0 libpthread_nonshared.a )' > ${STAGING_DIR_HOST}/${layout_base_libdir}/libpthread.so
-       echo 'GROUP ( libc.so.6 libc_nonshared.a )' > ${STAGING_DIR_HOST}/${layout_base_libdir}/libc.so
 }
index 81df03c8dcc174326ac8838aae274645366dc96d..18edf897c514641226e92df31062f38aa22b8bba 100644 (file)
@@ -4,11 +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"
 RDEPENDS_${PN}-dev = "linux-libc-headers-dev"
 #this leads to circular deps, so lets not add it yet
 #RDEPENDS_ldd += " bash"
-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
index 8a46d2fb856e23ca537625ffb5215d28f6d7d2ba..0cab17f128b93e0ccde0ed263175f78937a45b1d 100644 (file)
@@ -48,6 +48,7 @@ SRC_URI = "ftp://ftp.gnu.org/pub/gnu/glibc/glibc-${PV}.tar.bz2 \
 #         file://fixup-aeabi-syscalls.patch;patch=1 \
           file://zecke-sane-readelf.patch;patch=1 \
           file://eabi_kernel_version_hack.patch;patch=1 \
+           file://glibc-2.6.1-use-short-for-fnstsw.patch;patch=1 \
           file://generic-bits_select.h \
           file://generic-bits_types.h \
           file://generic-bits_typesizes.h \
index 2e509e9da85eefb0cde79e6172256688f36c04f9..9e1c4b7b47e40be1106c0de91663c27d63f02266 100644 (file)
@@ -56,6 +56,7 @@ SRC_URI = "\
   file://etc/ld.so.conf \
   file://generate-supported.mk \
   file://glibc-2.6.1-RTLD_SINGLE_THREAD_P-1.patch;patch=1 \
+  file://glibc-2.6.1-use-short-for-fnstsw.patch;patch=1 \
   file://glibc-include-fixed.patch;patch=1;pnum=0 \
 "