From 564474a0d9a6c80e8b98391c7ccda0d9b70e2259 Mon Sep 17 00:00:00 2001 From: Christian Wiese Date: Sun, 3 Feb 2008 21:11:35 +0200 Subject: [PATCH] Improved gcc to inject nptl cross-compile tweaks through configcache Note: libc_cv_forced_unwind=yes and libc_cv_c_cleanup=yes" config cache variables are needed for all archs if TLS is enabled, and the config cache approach seems to be more reliable than patching! --- base/glibc/glibc.conf | 7 +++- base/glibc/nptl-force-checks.patch.cross | 42 ------------------------ 2 files changed, 6 insertions(+), 43 deletions(-) delete mode 100644 base/glibc/nptl-force-checks.patch.cross diff --git a/base/glibc/glibc.conf b/base/glibc/glibc.conf index 19b8379b3..6ca10f3e9 100644 --- a/base/glibc/glibc.conf +++ b/base/glibc/glibc.conf @@ -64,7 +64,12 @@ if [ $SDECFG_PKG_GLIBC_TLS = 1 ]; then var_append glibc_addons "," "nptl" var_append extraconfopt " " "--with-tls" var_append extraconfopt " " "--with-__thread" -else + + if atstage cross ; then + var_append configcache ' ' "libc_cv_forced_unwind=yes" + var_append configcache ' ' "libc_cv_c_cleanup=yes" + fi +else var_append glibc_addons "," "linuxthreads" var_append extraconfopt " " "--without-__thread" var_append extraconfopt " " "--disable-sanity-checks" diff --git a/base/glibc/nptl-force-checks.patch.cross b/base/glibc/nptl-force-checks.patch.cross deleted file mode 100644 index 48bc64097..000000000 --- a/base/glibc/nptl-force-checks.patch.cross +++ /dev/null @@ -1,42 +0,0 @@ -# --- SDE-COPYRIGHT-NOTE-BEGIN --- -# This copyright note is auto-generated by ./scripts/Create-CopyPatch. -# -# Filename: package/.../glibc/nptl-force-checks.patch.cross -# Copyright (C) 2004 - 2006 The T2 SDE Project -# -# More information can be found in the files COPYING and README. -# -# This patch file is dual-licensed. It is available under the license the -# patched project is licensed under, as long as it is an OpenSource license -# as defined at http://www.opensource.org/ (e.g. BSD, X11) or under the terms -# of the GNU General Public License as published by the Free Software -# Foundation; either version 2 of the License, or (at your option) any later -# version. -# --- SDE-COPYRIGHT-NOTE-END --- - -Yet another ugly glibc patch for the ugly glibc configure stuff. We -force the nptl checks to succeed during the initial cross tool build, -because without libc the compiler can not link programs that early ... - - - Rene Rebe - ---- libc/nptl/sysdeps/pthread/configure.orig 2003-12-03 07:50:01.000000000 +0100 -+++ libc/nptl/sysdeps/pthread/configure 2004-10-31 00:02:50.526362392 +0200 -@@ -74,7 +74,7 @@ - echo "$as_me: failed program was:" >&5 - sed 's/^/| /' conftest.$ac_ext >&5 - --libc_cv_forced_unwind=no -+libc_cv_forced_unwind=yes - fi - rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -@@ -139,7 +139,7 @@ - echo "$as_me: failed program was:" >&5 - sed 's/^/| /' conftest.$ac_ext >&5 - --libc_cv_c_cleanup=no -+libc_cv_c_cleanup=yes - fi - rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext