about summary refs log tree commit diff
path: root/sysdeps/mach
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/mach')
-rwxr-xr-xsysdeps/mach/hurd/configure8
-rw-r--r--sysdeps/mach/hurd/configure.in8
-rw-r--r--sysdeps/mach/hurd/i386/Makefile7
-rw-r--r--sysdeps/mach/hurd/i386/Versions3
4 files changed, 24 insertions, 2 deletions
diff --git a/sysdeps/mach/hurd/configure b/sysdeps/mach/hurd/configure
index fb91f88100..36d0c08b6a 100755
--- a/sysdeps/mach/hurd/configure
+++ b/sysdeps/mach/hurd/configure
@@ -9,3 +9,11 @@ inhibit_glue=yes
 if test "x$prefix" != x; then
   echo "configure: warning: --prefix= (empty) is required for GNU/Hurd to work normally" 1>&2
 fi
+
+case "$machine" in
+  i386*)
+    if test -z "$oldest_abi" || test "$oldest_abi" < "2.2.5"; then
+      libc_cv_gcc_unwind_find_fde=yes
+    fi
+    ;;
+esac
diff --git a/sysdeps/mach/hurd/configure.in b/sysdeps/mach/hurd/configure.in
index 7daa188713..b271d4a810 100644
--- a/sysdeps/mach/hurd/configure.in
+++ b/sysdeps/mach/hurd/configure.in
@@ -11,3 +11,11 @@ inhibit_glue=yes
 if test "x$prefix" != x; then
   AC_MSG_WARN([--prefix= (empty) is required for GNU/Hurd to work normally])
 fi
+
+case "$machine" in
+  i386*)
+    if test -z "$oldest_abi" || test "$oldest_abi" < "2.2.5"; then
+      libc_cv_gcc_unwind_find_fde=yes
+    fi
+    ;;
+esac
diff --git a/sysdeps/mach/hurd/i386/Makefile b/sysdeps/mach/hurd/i386/Makefile
new file mode 100644
index 0000000000..61fac29c9a
--- /dev/null
+++ b/sysdeps/mach/hurd/i386/Makefile
@@ -0,0 +1,7 @@
+ifeq ($(subdir),elf)
+ifeq (yes,$(build-shared))
+# This is needed to support g++ v2 and v3.
+sysdep_routines += framestate
+shared-only-routines += framestate
+endif
+endif
diff --git a/sysdeps/mach/hurd/i386/Versions b/sysdeps/mach/hurd/i386/Versions
index 2d3061bad5..5731d9e01e 100644
--- a/sysdeps/mach/hurd/i386/Versions
+++ b/sysdeps/mach/hurd/i386/Versions
@@ -2,7 +2,6 @@ libc {
   GLIBC_2.0 {
     # Exception handling support functions from libgcc
     __register_frame; __register_frame_table; __deregister_frame;
-    __register_frame_info; __deregister_frame_info; __frame_state_for;
-    __register_frame_info_table;
+    __frame_state_for; __register_frame_info_table;
   }
 }