diff options
author | Ludovic Courtès <ludo@gnu.org> | 2011-02-02 18:55:29 +0100 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2011-02-02 18:55:29 +0100 |
commit | 71d0152e66628dac89d9103c60d91706fb98bba5 (patch) | |
tree | 8971a3e39197f9336b9e116370d5ac1f61295f83 /acinclude.m4 | |
parent | 614b64e102b37a9d3752d1bab1bcaf75717351c3 (diff) |
Disable use of thread-local storage on FreeBSD.
* acinclude.m4 (GUILE_THREAD_LOCAL_STORAGE): Explicitly require
`AC_CANONICAL_HOST'. Disable on FreeBSD.
Diffstat (limited to 'acinclude.m4')
-rw-r--r-- | acinclude.m4 | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/acinclude.m4 b/acinclude.m4 index 82fa24e65..55b05ed30 100644 --- a/acinclude.m4 +++ b/acinclude.m4 @@ -1,7 +1,7 @@ dnl -*- Autoconf -*- dnl Copyright (C) 1997, 1999, 2000, 2001, 2002, 2004, 2006, -dnl 2007, 2008, 2009, 2010 Free Software Foundation, Inc. +dnl 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc. dnl dnl This file is part of GUILE dnl @@ -360,6 +360,8 @@ dnl GUILE_THREAD_LOCAL_STORAGE dnl dnl Check for compiler thread-local storage (TLS) support. AC_DEFUN([GUILE_THREAD_LOCAL_STORAGE], [ + AC_REQUIRE([AC_CANONICAL_HOST]) + AC_CACHE_CHECK([whether the `__thread' storage class is available], [ac_cv_have_thread_storage_class], [dnl On some systems, e.g., NetBSD 5.0 with GCC 4.1, `__thread' is @@ -373,8 +375,12 @@ AC_DEFUN([GUILE_THREAD_LOCAL_STORAGE], [ dnl Known broken systems includes: dnl - x86_64-unknown-netbsd5.0. dnl - sparc-sun-solaris2.8 - case "x$enable_shared--$host" in - xyes--*netbsd[0-5].[0-9].|xyes--*solaris2.8) + dnl + dnl On `x86_64-unknown-freebsd8.0', thread-local storage appears to + dnl be reclaimed at the wrong time, leading to a segfault when + dnl running `threads.test'. So disable it. + case "x$enable_shared--$host_os" in + xyes--netbsd[0-5].[0-9].|xyes--solaris2.8|xyes--freebsd[0-8]*) ac_cv_have_thread_storage_class="no" ;; *) |