don't run the `pthread_attr_getstack' check when cross compiling
authorVolker Grabsch <vog@notjusthosting.com>
Wed, 14 Apr 2010 23:01:23 +0000 (01:01 +0200)
committerLudovic Courtès <ludo@gnu.org>
Fri, 28 May 2010 15:02:13 +0000 (17:02 +0200)
* configure.ac: Run the `pthread_attr_getstack' test only when building
  natively.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
configure.ac

index 3877411..b2ed500 100644 (file)
@@ -1410,39 +1410,43 @@ AM_CONDITIONAL([BUILD_PTHREAD_SUPPORT],
 
 if test "$with_threads" = pthreads; then
 
-AC_MSG_CHECKING(whether pthread_attr_getstack works for the main thread)
+AC_MSG_CHECKING([whether pthread_attr_getstack works for the main thread])
 old_CFLAGS="$CFLAGS"
 CFLAGS="$PTHREAD_CFLAGS $CFLAGS"
-AC_RUN_IFELSE([AC_LANG_SOURCE([[
-#if HAVE_PTHREAD_ATTR_GETSTACK
-#include <pthread.h>
-
-int main ()
-{
-  pthread_attr_t attr;
-  void *start, *end;
-  size_t size;
-
-  pthread_getattr_np (pthread_self (), &attr);
-  pthread_attr_getstack (&attr, &start, &size);
-  end = (char *)start + size;
-
-  if ((void *)&attr < start || (void *)&attr >= end)
+if test "$cross_compiling" = "no"; then
+  AC_RUN_IFELSE([AC_LANG_SOURCE([[
+  #if HAVE_PTHREAD_ATTR_GETSTACK
+  #include <pthread.h>
+
+  int main ()
+  {
+    pthread_attr_t attr;
+    void *start, *end;
+    size_t size;
+
+    pthread_getattr_np (pthread_self (), &attr);
+    pthread_attr_getstack (&attr, &start, &size);
+    end = (char *)start + size;
+
+    if ((void *)&attr < start || (void *)&attr >= end)
+      return 1;
+    else
+      return 0;
+  }
+  #else
+  int main ()
+  {
     return 1;
-  else
-    return 0;
-}
-#else
-int main ()
-{
-  return 1;
-}
-#endif
-]])],
-[works=yes
-AC_DEFINE([PTHREAD_ATTR_GETSTACK_WORKS], [1], [Define when pthread_att_get_stack works for the main thread])],
-[works=no],
-[])
+  }
+  #endif
+  ]])],
+  [works=yes
+   AC_DEFINE([PTHREAD_ATTR_GETSTACK_WORKS], [1], [Define when pthread_att_get_stack works for the main thread])],
+  [works=no],
+  [])
+else
+  works="assuming it doesn't"
+fi
 CFLAGS="$old_CFLAGS"
 AC_MSG_RESULT($works)