patches/glibc/ports-2.10.1/390-cross-compile-nptl.patch
author "Yann E. MORIN" <yann.morin.1998@free.fr>
Wed Dec 05 20:31:43 2012 +0100 (2012-12-05)
changeset 3134 863723936e24
permissions -rw-r--r--
scripts/xldd: use user's sed and grep

xldd uses sed and grep as detected by ./configure. This works well if is
used on the machine that build the toolchain.

But if the user moves the toolchain to another machine where sed and grep
are not in the same directory (eg. /bin/sed vs. /usr/bin/sed), then xldd
will stop functionning.

Fix that by using ${SED} and ${GREP} if they are set in the environment.

Reported-by: Samuel Martin <s.martin49@gmail.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
     1 A little hack for cross-compiling NPTL
     2 
     3 http://sourceware.org/ml/libc-alpha/2005-02/msg00043.html
     4 
     5 diff -durN glibc-2.10.1.orig/nptl/sysdeps/pthread/configure glibc-2.10.1/nptl/sysdeps/pthread/configure
     6 --- glibc-2.10.1.orig/nptl/sysdeps/pthread/configure	2009-05-17 14:19:31.000000000 +0200
     7 +++ glibc-2.10.1/nptl/sysdeps/pthread/configure	2009-11-13 00:50:43.000000000 +0100
     8 @@ -78,6 +78,10 @@
     9  fi
    10  { echo "$as_me:$LINENO: result: $libc_cv_forced_unwind" >&5
    11  echo "${ECHO_T}$libc_cv_forced_unwind" >&6; }
    12 +if test $libc_cv_forced_unwind = no -a $build_cpu != $host_cpu; then
    13 +  echo "$as_me:$LINENO: forcing libc_cv_forced_unwind = yes for cross-compile"
    14 +  libc_cv_forced_unwind=yes
    15 +fi
    16  if test $libc_cv_forced_unwind = yes; then
    17    cat >>confdefs.h <<\_ACEOF
    18  #define HAVE_FORCED_UNWIND 1
    19 @@ -141,6 +145,10 @@
    20  { echo "$as_me:$LINENO: result: $libc_cv_c_cleanup" >&5
    21  echo "${ECHO_T}$libc_cv_c_cleanup" >&6; }
    22    CFLAGS="$old_CFLAGS"
    23 +  if test $libc_cv_c_cleanup = no -a $build_cpu != $host_cpu; then
    24 +    echo "$as_me:$LINENO: result: forcing libc_cv_c_cleanup = yes for cross-compile"
    25 +    libc_cv_c_cleanup=yes
    26 +  fi
    27    if test $libc_cv_c_cleanup = no; then
    28      { { echo "$as_me:$LINENO: error: the compiler must support C cleanup handling" >&5
    29  echo "$as_me: error: the compiler must support C cleanup handling" >&2;}
    30 diff -durN glibc-2.10.1.orig/nptl/sysdeps/pthread/configure.in glibc-2.10.1/nptl/sysdeps/pthread/configure.in
    31 --- glibc-2.10.1.orig/nptl/sysdeps/pthread/configure.in	2003-12-03 07:50:01.000000000 +0100
    32 +++ glibc-2.10.1/nptl/sysdeps/pthread/configure.in	2009-11-13 00:50:43.000000000 +0100
    33 @@ -28,6 +28,9 @@
    34  struct _Unwind_Context *context;
    35  _Unwind_GetCFA (context)],
    36  libc_cv_forced_unwind=yes, libc_cv_forced_unwind=no)])
    37 +if test $libc_cv_forced_unwind = no -a $build_cpu != $host_cpu; then
    38 +  libc_cv_forced_unwind=yes
    39 +fi
    40  if test $libc_cv_forced_unwind = yes; then
    41    AC_DEFINE(HAVE_FORCED_UNWIND)
    42  dnl Check for C cleanup handling.
    43 @@ -41,6 +44,9 @@
    44    puts ("test")],
    45  libc_cv_c_cleanup=yes, libc_cv_c_cleanup=no)])
    46    CFLAGS="$old_CFLAGS"
    47 +  if test $libc_cv_c_cleanup = no -a $build_cpu != $host_cpu; then
    48 +    libc_cv_c_cleanup=yes
    49 +  fi
    50    if test $libc_cv_c_cleanup = no; then
    51      AC_MSG_ERROR([the compiler must support C cleanup handling])
    52    fi