yann@1201: Original patch from: gentoo/src/patchsets/glibc/2.9/5070_all_glibc-2.7-cross-compile-nptl.patch yann@1201: yann@1201: -= BEGIN original header =- yann@1201: A little hack for cross-compiling NPTL yann@1201: yann@1201: http://sourceware.org/ml/libc-alpha/2005-02/msg00043.html yann@1201: yann@1201: -= END original header =- yann@1201: yann@1201: diff -durN glibc-2_9.orig/nptl/sysdeps/pthread/configure glibc-2_9/nptl/sysdeps/pthread/configure yann@1201: --- glibc-2_9.orig/nptl/sysdeps/pthread/configure 2007-10-17 00:24:30.000000000 +0200 yann@1201: +++ glibc-2_9/nptl/sysdeps/pthread/configure 2009-02-02 22:01:28.000000000 +0100 yann@1201: @@ -78,6 +78,10 @@ yann@1201: fi yann@1201: { echo "$as_me:$LINENO: result: $libc_cv_forced_unwind" >&5 yann@1201: echo "${ECHO_T}$libc_cv_forced_unwind" >&6; } yann@1201: +if test $libc_cv_forced_unwind = no -a $build_cpu != $host_cpu; then yann@1201: + echo "$as_me:$LINENO: forcing libc_cv_forced_unwind = yes for cross-compile" yann@1201: + libc_cv_forced_unwind=yes yann@1201: +fi yann@1201: if test $libc_cv_forced_unwind = yes; then yann@1201: cat >>confdefs.h <<\_ACEOF yann@1201: #define HAVE_FORCED_UNWIND 1 yann@1201: @@ -141,6 +145,10 @@ yann@1201: { echo "$as_me:$LINENO: result: $libc_cv_c_cleanup" >&5 yann@1201: echo "${ECHO_T}$libc_cv_c_cleanup" >&6; } yann@1201: CFLAGS="$old_CFLAGS" yann@1201: + if test $libc_cv_c_cleanup = no -a $build_cpu != $host_cpu; then yann@1201: + echo "$as_me:$LINENO: result: forcing libc_cv_c_cleanup = yes for cross-compile" yann@1201: + libc_cv_c_cleanup=yes yann@1201: + fi yann@1201: if test $libc_cv_c_cleanup = no; then yann@1201: { { echo "$as_me:$LINENO: error: the compiler must support C cleanup handling" >&5 yann@1201: echo "$as_me: error: the compiler must support C cleanup handling" >&2;} yann@1201: diff -durN glibc-2_9.orig/nptl/sysdeps/pthread/configure.in glibc-2_9/nptl/sysdeps/pthread/configure.in yann@1201: --- glibc-2_9.orig/nptl/sysdeps/pthread/configure.in 2003-12-03 07:50:01.000000000 +0100 yann@1201: +++ glibc-2_9/nptl/sysdeps/pthread/configure.in 2009-02-02 22:01:28.000000000 +0100 yann@1201: @@ -28,6 +28,9 @@ yann@1201: struct _Unwind_Context *context; yann@1201: _Unwind_GetCFA (context)], yann@1201: libc_cv_forced_unwind=yes, libc_cv_forced_unwind=no)]) yann@1201: +if test $libc_cv_forced_unwind = no -a $build_cpu != $host_cpu; then yann@1201: + libc_cv_forced_unwind=yes yann@1201: +fi yann@1201: if test $libc_cv_forced_unwind = yes; then yann@1201: AC_DEFINE(HAVE_FORCED_UNWIND) yann@1201: dnl Check for C cleanup handling. yann@1201: @@ -41,6 +44,9 @@ yann@1201: puts ("test")], yann@1201: libc_cv_c_cleanup=yes, libc_cv_c_cleanup=no)]) yann@1201: CFLAGS="$old_CFLAGS" yann@1201: + if test $libc_cv_c_cleanup = no -a $build_cpu != $host_cpu; then yann@1201: + libc_cv_c_cleanup=yes yann@1201: + fi yann@1201: if test $libc_cv_c_cleanup = no; then yann@1201: AC_MSG_ERROR([the compiler must support C cleanup handling]) yann@1201: fi