about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog9
-rw-r--r--sysdeps/ieee754/ldbl-opt/Versions3
-rw-r--r--sysdeps/ieee754/ldbl-opt/math_ldbl_opt.h9
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sparc32/Versions5
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sparc32/nldbl-abi.h8
5 files changed, 24 insertions, 10 deletions
diff --git a/ChangeLog b/ChangeLog
index 04e51a1ddb..b22df2716e 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+2006-01-14  Roland McGrath  <roland@redhat.com>
+
+	* sysdeps/unix/sysv/linux/sparc/sparc32/nldbl-abi.h: New file.
+	* sysdeps/ieee754/ldbl-opt/math_ldbl_opt.h: #include <nldbl-abi.h>
+	to define LONG_DOUBLE_COMPAT_VERSION.  Use that in place of
+	NLDBL_VERSION.
+	* sysdeps/ieee754/ldbl-opt/Versions: Include <nldbl-abi.h>.
+	* sysdeps/unix/sysv/linux/sparc/sparc32/Versions: Revert last change.
+
 2006-01-14  Jakub Jelinek  <jakub@redhat.com>
 
 	* math/math.h [__NO_LONG_DOUBLE_MATH] (__nldbl_nexttowardf): New
diff --git a/sysdeps/ieee754/ldbl-opt/Versions b/sysdeps/ieee754/ldbl-opt/Versions
index 337db192d6..d22b18ec89 100644
--- a/sysdeps/ieee754/ldbl-opt/Versions
+++ b/sysdeps/ieee754/ldbl-opt/Versions
@@ -1,5 +1,6 @@
+%include <nldbl-abi.h>
 %ifndef NLDBL_VERSION
-% error "CPU-specific sysdeps/.../Version file must %define NLDBL_VERSION"
+% error "nldbl-abi.h must define NLDBL_VERSION"
 %endif
 
 libc {
diff --git a/sysdeps/ieee754/ldbl-opt/math_ldbl_opt.h b/sysdeps/ieee754/ldbl-opt/math_ldbl_opt.h
index c37ed861dc..d6f0214991 100644
--- a/sysdeps/ieee754/ldbl-opt/math_ldbl_opt.h
+++ b/sysdeps/ieee754/ldbl-opt/math_ldbl_opt.h
@@ -1,16 +1,17 @@
 /* -mlong-double-64 compatibility mode macros.  */
 
-#ifndef NLDBL_VERSION
-# define NLDBL_VERSION GLIBC_2_4
+#include <nldbl-abi.h>
+#ifndef LONG_DOUBLE_COMPAT_VERSION
+# error "nldbl-abi.h must define LONG_DOUBLE_COMPAT_VERSION"
 #endif
 
 #include <math.h>
 #include <math/math_private.h>
 #include <shlib-compat.h>
 #define LONG_DOUBLE_COMPAT(lib, introduced) \
-  SHLIB_COMPAT(lib, introduced, NLDBL_VERSION)
+  SHLIB_COMPAT(lib, introduced, LONG_DOUBLE_COMPAT_VERSION)
 #define long_double_symbol(lib, local, symbol) \
-  long_double_symbol_1 (lib, local, symbol, NLDBL_VERSION)
+  long_double_symbol_1 (lib, local, symbol, LONG_DOUBLE_COMPAT_VERSION)
 #if defined HAVE_ELF && defined SHARED && defined DO_VERSIONING
 # define ldbl_hidden_def(local, name) libc_hidden_ver (local, name)
 # define ldbl_strong_alias(name, aliasname) \
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/Versions b/sysdeps/unix/sysv/linux/sparc/sparc32/Versions
index 99458e85a7..c585af3602 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc32/Versions
+++ b/sysdeps/unix/sysv/linux/sparc/sparc32/Versions
@@ -21,8 +21,3 @@ libc {
     posix_fadvise64; posix_fallocate64;
   }
 }
-
-/* This is used by sysdeps/ieee754/ldbl-opt/Versions.  It gives the
-   ABI version where long double == double was replaced with proper
-   long double for libm *l functions and libc functions using long double.  */
-%define NLDBL_VERSION GLIBC_2.4
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/nldbl-abi.h b/sysdeps/unix/sysv/linux/sparc/sparc32/nldbl-abi.h
new file mode 100644
index 0000000000..bd985cc59c
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/sparc/sparc32/nldbl-abi.h
@@ -0,0 +1,8 @@
+/* ABI version for long double switch.
+   This is used by the Versions and math_ldbl_opt.h files in
+   sysdeps/ieee754/ldbl-opt/.  It gives the ABI version where
+   long double == double was replaced with proper long double
+   for libm *l functions and libc functions using long double.  */
+
+#define NLDBL_VERSION			GLIBC_2.4
+#define LONG_DOUBLE_COMPAT_VERSION	GLIBC_2_4