about summary refs log tree commit diff
path: root/nptl/sysdeps/unix
diff options
context:
space:
mode:
Diffstat (limited to 'nptl/sysdeps/unix')
-rw-r--r--nptl/sysdeps/unix/sysv/linux/alpha/Versions7
-rw-r--r--nptl/sysdeps/unix/sysv/linux/alpha/aio_cancel.c33
-rw-r--r--nptl/sysdeps/unix/sysv/linux/alpha/timer_create.c1
-rw-r--r--nptl/sysdeps/unix/sysv/linux/alpha/timer_delete.c1
-rw-r--r--nptl/sysdeps/unix/sysv/linux/alpha/timer_getoverr.c1
-rw-r--r--nptl/sysdeps/unix/sysv/linux/alpha/timer_gettime.c1
-rw-r--r--nptl/sysdeps/unix/sysv/linux/alpha/timer_settime.c1
7 files changed, 45 insertions, 0 deletions
diff --git a/nptl/sysdeps/unix/sysv/linux/alpha/Versions b/nptl/sysdeps/unix/sysv/linux/alpha/Versions
new file mode 100644
index 0000000000..3b111ddb51
--- /dev/null
+++ b/nptl/sysdeps/unix/sysv/linux/alpha/Versions
@@ -0,0 +1,7 @@
+librt {
+  GLIBC_2.3.3 {
+    # Changed timer_t.
+    timer_create; timer_delete; timer_getoverrun; timer_gettime;
+    timer_settime;
+  }
+}
diff --git a/nptl/sysdeps/unix/sysv/linux/alpha/aio_cancel.c b/nptl/sysdeps/unix/sysv/linux/alpha/aio_cancel.c
new file mode 100644
index 0000000000..0d6da82919
--- /dev/null
+++ b/nptl/sysdeps/unix/sysv/linux/alpha/aio_cancel.c
@@ -0,0 +1,33 @@
+#include <shlib-compat.h>
+
+#define aio_cancel64 XXX
+#include <aio.h>
+#undef aio_cancel64
+#include <errno.h>
+
+extern __typeof (aio_cancel) __new_aio_cancel;
+extern __typeof (aio_cancel) __old_aio_cancel;
+
+#define aio_cancel	__new_aio_cancel
+
+#include <sysdeps/pthread/aio_cancel.c>
+
+#undef aio_cancel
+strong_alias (__new_aio_cancel, __new_aio_cancel64);
+versioned_symbol (librt, __new_aio_cancel, aio_cancel, GLIBC_2_3);
+versioned_symbol (librt, __new_aio_cancel64, aio_cancel64, GLIBC_2_3);
+
+#if SHLIB_COMPAT (librt, GLIBC_2_1, GLIBC_2_3)
+
+#undef ECANCELED
+#define aio_cancel	__old_aio_cancel
+#define ECANCELED	125
+
+#include <sysdeps/pthread/aio_cancel.c>
+
+#undef aio_cancel
+strong_alias (__old_aio_cancel, __old_aio_cancel64);
+compat_symbol (librt, __old_aio_cancel, aio_cancel, GLIBC_2_1);
+compat_symbol (librt, __old_aio_cancel64, aio_cancel64, GLIBC_2_1);
+
+#endif
diff --git a/nptl/sysdeps/unix/sysv/linux/alpha/timer_create.c b/nptl/sysdeps/unix/sysv/linux/alpha/timer_create.c
new file mode 100644
index 0000000000..172223af3f
--- /dev/null
+++ b/nptl/sysdeps/unix/sysv/linux/alpha/timer_create.c
@@ -0,0 +1 @@
+#include "../x86_64/timer_create.c"
diff --git a/nptl/sysdeps/unix/sysv/linux/alpha/timer_delete.c b/nptl/sysdeps/unix/sysv/linux/alpha/timer_delete.c
new file mode 100644
index 0000000000..537516e0aa
--- /dev/null
+++ b/nptl/sysdeps/unix/sysv/linux/alpha/timer_delete.c
@@ -0,0 +1 @@
+#include "../x86_64/timer_delete.c"
diff --git a/nptl/sysdeps/unix/sysv/linux/alpha/timer_getoverr.c b/nptl/sysdeps/unix/sysv/linux/alpha/timer_getoverr.c
new file mode 100644
index 0000000000..3f21a73c98
--- /dev/null
+++ b/nptl/sysdeps/unix/sysv/linux/alpha/timer_getoverr.c
@@ -0,0 +1 @@
+#include "../x86_64/timer_getoverr.c"
diff --git a/nptl/sysdeps/unix/sysv/linux/alpha/timer_gettime.c b/nptl/sysdeps/unix/sysv/linux/alpha/timer_gettime.c
new file mode 100644
index 0000000000..a50143adc5
--- /dev/null
+++ b/nptl/sysdeps/unix/sysv/linux/alpha/timer_gettime.c
@@ -0,0 +1 @@
+#include "../x86_64/timer_gettime.c"
diff --git a/nptl/sysdeps/unix/sysv/linux/alpha/timer_settime.c b/nptl/sysdeps/unix/sysv/linux/alpha/timer_settime.c
new file mode 100644
index 0000000000..37baeffacc
--- /dev/null
+++ b/nptl/sysdeps/unix/sysv/linux/alpha/timer_settime.c
@@ -0,0 +1 @@
+#include "../x86_64/timer_settime.c"