patches/glibc/ports-2.10.1/390-cross-compile-nptl.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Tue Aug 02 18:28:10 2011 +0200 (2011-08-02)
changeset 2590 b64cfb67944e
permissions -rw-r--r--
scripts/functions: svn retrieval first tries the mirror for tarballs

The svn download helper looks for the local tarballs dir to see if it
can find a pre-downloaded tarball, and if it does not find it, does
the actual fetch to upstream via svn.

In the process, it does not even try to get a tarball from the local
mirror, which can be useful if the mirror has been pre-populated
manually (or with a previously downloaded tree).

Fake a tarball get with the standard tarball-download helper, but
without specifying any upstream URL, which makes the helper directly
try the LAN mirror.

Of course, if no mirror is specified, no URL wil be available, and
the standard svn retrieval will kick in.

Reported-by: ANDY KENNEDY <ANDY.KENNEDY@adtran.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
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