diff options
author | Stephan Bergmann <sbergman@redhat.com> | 2012-02-20 14:30:13 +0100 |
---|---|---|
committer | Stephan Bergmann <sbergman@redhat.com> | 2012-02-20 14:30:36 +0100 |
commit | f78cb7da33a9f69e865b28b55a212bf1d11b1d7d (patch) | |
tree | 04ccb02a06a036040aba7f1b68a8c9941acdaa07 | |
parent | bcf1edba4eeecba9b47d3ef983e0973b4c737871 (diff) |
Improve check for broken -fthreadsafe-statics
-rw-r--r-- | configure.in | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/configure.in b/configure.in index 50a9b975d015..39fe207ddea5 100644 --- a/configure.in +++ b/configure.in @@ -4282,8 +4282,14 @@ if test "$GCC" = "yes"; then dnl return n; dnl } dnl - dnl Mac OS X up to at least 10.7.1 is known to have this problem: - if test "$_os" = "Darwin"; then + dnl Mac OS X up to at least 10.7.1 is known to have this problem, as is + dnl at least one instance of GCC 4.2.4 (used on a "Linux + dnl ooobuild1.osuosl.org 2.6.9-101.plus.c4smp #1 SMP Thu Jul 21 19:08:15 + dnl EDT 2011 i686 i686 i386 GNU/Linux" machine); see the definition of + dnl __cxa_guard_acquire in GCC's libstdc++-v3/libsupc++/guard.cc for + dnl what #ifdefs actually make a difference there. Conservative advice + dnl from Jakub Jelinek is to assume it working in GCC >= 4.3: + if test "$_os" = "Darwin" -o "${GCCVER?}" -lt 040300; then unset HAVE_THREADSAFE_STATICS AC_MSG_RESULT([broken (i.e., no)]) else |