mirror of
git://sourceware.org/git/glibc.git
synced 2025-03-06 20:58:33 +01:00
Fix unwind.h configure check for bare environment.
This commit is contained in:
parent
2d5976a580
commit
78b984ae2c
3 changed files with 19 additions and 2 deletions
|
@ -1,5 +1,10 @@
|
|||
2014-07-03 Roland McGrath <roland@hack.frob.com>
|
||||
|
||||
* sysdeps/nptl/configure.ac (libc_cv_forced_unwind):
|
||||
Use -Dinhibit_libc=1 for unwind.h check to prevent false failure
|
||||
in a bare environment with no <stdlib.h> installed.
|
||||
* sysdeps/nptl/configure: Regenerated.
|
||||
|
||||
* sysdeps/alpha/fpu/s_nearbyint.c: Include <math_ldbl_opt.h>.
|
||||
|
||||
* sysdeps/unix/sysv/linux/configure.ac: Use AC_TRY_COMPILE rather than
|
||||
|
|
8
sysdeps/nptl/configure
vendored
8
sysdeps/nptl/configure
vendored
|
@ -15,7 +15,12 @@ $as_echo_n "checking for forced unwind support... " >&6; }
|
|||
if ${libc_cv_forced_unwind+:} false; then :
|
||||
$as_echo_n "(cached) " >&6
|
||||
else
|
||||
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
||||
old_CPPFLAGS="$CPPFLAGS"
|
||||
# Without inhibit_libc #define'd, GCC's unwind.h (at least for ia64)
|
||||
# will try to include <stdlib.h>, which doesn't exist yet if we're
|
||||
# building libc in a bare environment.
|
||||
CPPFLAGS="$CPPFLAGS -Dinhibit_libc=1"
|
||||
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
||||
/* end confdefs.h. */
|
||||
#include <unwind.h>
|
||||
int
|
||||
|
@ -35,6 +40,7 @@ else
|
|||
libc_cv_forced_unwind=no
|
||||
fi
|
||||
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
|
||||
CPPFLAGS="$old_CPPFLAGS"
|
||||
fi
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_forced_unwind" >&5
|
||||
$as_echo "$libc_cv_forced_unwind" >&6; }
|
||||
|
|
|
@ -14,11 +14,17 @@ dnl Iff <unwind.h> is available, make sure it is the right one and it
|
|||
dnl contains struct _Unwind_Exception.
|
||||
AC_CACHE_CHECK(dnl
|
||||
for forced unwind support, libc_cv_forced_unwind, [dnl
|
||||
old_CPPFLAGS="$CPPFLAGS"
|
||||
# Without inhibit_libc #define'd, GCC's unwind.h (at least for ia64)
|
||||
# will try to include <stdlib.h>, which doesn't exist yet if we're
|
||||
# building libc in a bare environment.
|
||||
CPPFLAGS="$CPPFLAGS -Dinhibit_libc=1"
|
||||
AC_TRY_COMPILE([#include <unwind.h>], [
|
||||
struct _Unwind_Exception exc;
|
||||
struct _Unwind_Context *context;
|
||||
_Unwind_GetCFA (context)],
|
||||
libc_cv_forced_unwind=yes, libc_cv_forced_unwind=no)])
|
||||
libc_cv_forced_unwind=yes, libc_cv_forced_unwind=no)
|
||||
CPPFLAGS="$old_CPPFLAGS"])
|
||||
if test $libc_cv_forced_unwind = yes; then
|
||||
AC_DEFINE(HAVE_FORCED_UNWIND)
|
||||
dnl Check for C cleanup handling.
|
||||
|
|
Loading…
Add table
Reference in a new issue