patches/glibc/ports-2.10.1/390-cross-compile-nptl.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Sun Jan 17 23:06:02 2010 +0100 (2010-01-17)
changeset 1740 c57458bb354d
permissions -rw-r--r--
configure: do not require hg when configuring in an hg clone

When configuring in an hg clone, we need hg to compute the version string.
It can happen that users do not have Mercurial (eg. if they got a snapshot
rather that they did a full clone). In this case, we can still run, of
course, so simply fill the version string with a sufficiently explicit
value, that does not require hg. The date is a good candidate.
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