about summary refs log tree commit diff
path: root/configure.in
diff options
context:
space:
mode:
Diffstat (limited to 'configure.in')
-rw-r--r--configure.in21
1 files changed, 15 insertions, 6 deletions
diff --git a/configure.in b/configure.in
index 2a6bef671f..4b5deb54a4 100644
--- a/configure.in
+++ b/configure.in
@@ -318,11 +318,7 @@ m68k)		base_machine=m68k machine=m68k/m68020 ;;
 m88???)		base_machine=m88k machine=m88k/$machine ;;
 m88k)		base_machine=m88k machine=m88k/m88100 ;;
 mips64*)	base_machine=mips64 machine=mips/mips64/$machine ;;
-mips*)		base_machine=mips
-		case "`uname -m`" in
-		IP22) machine=mips/mips3 ;;
-		*)    machine=mips/$machine ;;
-		esac ;;
+mips*)		base_machine=mips machine=mips/$machine ;;
 s390)           base_machine=s390 machine=s390/s390-32 ;;
 s390x)          base_machine=s390 machine=s390/s390-64 ;;
 sh3*)		base_machine=sh machine=sh/sh3 ;;
@@ -1389,7 +1385,7 @@ fi
 AC_CACHE_CHECK(for DWARF2 unwind info support, libc_cv_gcc_dwarf2_unwind_info,
 [cat > conftest.c <<EOF
 #line __oline__ "configure"
-static char __EH_FRAME_BEGIN__[];
+static char *__EH_FRAME_BEGIN__;
 _start ()
 {
 #ifdef CHECK__register_frame
@@ -1421,6 +1417,19 @@ if AC_TRY_COMMAND([${CC-cc} $CFLAGS -DCHECK__register_frame_info
 else
   libc_cv_gcc_dwarf2_unwind_info=no
 fi
+if AC_TRY_COMMAND([${CC-cc} $CFLAGS -DCHECK__register_frame_info
+                            -nostdlib -nostartfiles
+                            -o conftest conftest.c -lgcc -lgcc_eh >&AC_FD_CC]); then
+  if ${CC-cc} $CFLAGS -DCHECK__register_frame_info -nostdlib -nostartfiles \
+     -o conftest conftest.c -lgcc -lgcc_eh -v 2>&1 >/dev/null \
+     | grep -q -- --eh-frame-hdr; then
+    libc_cv_gcc_dwarf2_unwind_info=no_registry_needed
+  else
+    libc_cv_gcc_dwarf2_unwind_info=static
+  fi
+else
+  libc_cv_gcc_dwarf2_unwind_info=no
+fi
 if test $libc_cv_gcc_dwarf2_unwind_info = no; then
   if AC_TRY_COMMAND([${CC-cc} $CFLAGS -DCHECK__register_frame
 			      -nostdlib -nostartfiles