patches/glibc/ports-2.10.1/390-cross-compile-nptl.patch
author Anthony Foiani <anthony.foiani@gmail.com>
Thu Apr 26 19:55:59 2012 -0600 (2012-04-26)
changeset 2939 58974be61289
permissions -rw-r--r--
Allow multi-word "install" command.

Autoconf can determine that the correct install command includes flags,
e.g., "/usr/bin/install -c". When using this as a command, we can't
enclose the value in double-quotes, as that makes some shells use the
whole expression as a filename:

# this is the value returned by autoconf and stored in CT_install
$ ins="/usr/bin/install -c"

# if we call it with quotes, the command is not found
$ "${ins}"
bash: /usr/bin/install -c: No such file or directory

# removing the quotes lets it work as expected
$ ${ins}
/usr/bin/install: missing file operand
Try `/usr/bin/install --help' for more information.

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