about summary refs log tree commit diff
path: root/sysdeps/unix/sysv/linux/clock_getres.c
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/unix/sysv/linux/clock_getres.c')
-rw-r--r--sysdeps/unix/sysv/linux/clock_getres.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/sysdeps/unix/sysv/linux/clock_getres.c b/sysdeps/unix/sysv/linux/clock_getres.c
index 24b2299938..18a7ce53c0 100644
--- a/sysdeps/unix/sysv/linux/clock_getres.c
+++ b/sysdeps/unix/sysv/linux/clock_getres.c
@@ -26,10 +26,19 @@
 #endif
 #include <sysdep-vdso.h>
 
+#include <shlib-compat.h>
+
 /* Get resolution of clock.  */
 int
 __clock_getres (clockid_t clock_id, struct timespec *res)
 {
   return INLINE_VSYSCALL (clock_getres, 2, clock_id, res);
 }
-weak_alias (__clock_getres, clock_getres)
+
+versioned_symbol (libc, __clock_getres, clock_getres, GLIBC_2_17);
+/* clock_getres moved to libc in version 2.17;
+   old binaries may expect the symbol version it had in librt.  */
+#if SHLIB_COMPAT (libc, GLIBC_2_2, GLIBC_2_17)
+strong_alias (__clock_getres, __clock_getres_2);
+compat_symbol (libc, __clock_getres_2, clock_getres, GLIBC_2_2);
+#endif