summaryrefslogtreecommitdiff
path: root/rtkaio/sysdeps/pthread
diff options
context:
space:
mode:
Diffstat (limited to 'rtkaio/sysdeps/pthread')
-rw-r--r--rtkaio/sysdeps/pthread/Makefile39
-rw-r--r--rtkaio/sysdeps/pthread/Versions7
-rw-r--r--rtkaio/sysdeps/pthread/kaio_timer_routines.c1
-rw-r--r--rtkaio/sysdeps/pthread/librtkaio-cancellation.c1
-rw-r--r--rtkaio/sysdeps/pthread/rtkaio-unwind-resume.c1
-rw-r--r--rtkaio/sysdeps/pthread/tst-cancel17.c1
-rw-r--r--rtkaio/sysdeps/pthread/tst-cancelx17.c1
-rw-r--r--rtkaio/sysdeps/pthread/tst-mqueue8x.c1
-rw-r--r--rtkaio/sysdeps/pthread/tst-timer.c1
9 files changed, 53 insertions, 0 deletions
diff --git a/rtkaio/sysdeps/pthread/Makefile b/rtkaio/sysdeps/pthread/Makefile
new file mode 100644
index 0000000000..7ced3eb5a9
--- /dev/null
+++ b/rtkaio/sysdeps/pthread/Makefile
@@ -0,0 +1,39 @@
+ifeq ($(filter nptl,$(sorted-subdirs)),nptl)
+
+ifeq ($(subdir),rtkaio)
+librtkaio-sysdep_routines += kaio_timer_routines librtkaio-cancellation rtkaio-unwind-resume
+librtkaio-shared-only-routines += rtkaio-unwind-resume
+tests += tst-cancel17 tst-cancelx17
+CPPFLAGS-kaio_timer_routines.c = -I../nptl
+CFLAGS-librtkaio-cancellation.c += -fexceptions -fasynchronous-unwind-tables
+CFLAGS-rtkaio-unwind-resume.c += -fexceptions -fasynchronous-unwind-tables
+CFLAGS-tst-cancelx17.c += -fexceptions
+
+ifeq (yes,$(build-shared))
+$(objpfx)tst-timer: $(objpfx)librtkaio.so $(shared-thread-library)
+else
+$(objpfx)tst-timer: $(objpfx)librtkaio.a $(static-thread-library)
+endif
+
+ifeq ($(have-forced-unwind),yes)
+tests += tst-mqueue8x
+CFLAGS-tst-mqueue8x.c += -fexceptions
+endif
+endif
+
+endif
+
+ifeq ($(filter linuxthreads,$(sorted-subdirs)),linuxthreads)
+
+ifeq ($(subdir),rtkaio)
+librtkaio-sysdep_routines += kaio_timer_routines
+CPPFLAGS += -DBROKEN_THREAD_SIGNALS
+
+ifeq (yes,$(build-shared))
+$(objpfx)tst-timer: $(objpfx)librtkaio.so $(shared-thread-library)
+else
+$(objpfx)tst-timer: $(objpfx)librtkaio.a $(static-thread-library)
+endif
+endif
+
+endif
diff --git a/rtkaio/sysdeps/pthread/Versions b/rtkaio/sysdeps/pthread/Versions
new file mode 100644
index 0000000000..7677b76687
--- /dev/null
+++ b/rtkaio/sysdeps/pthread/Versions
@@ -0,0 +1,7 @@
+%ifdef HAVE_FORCED_UNWIND
+librtkaio {
+ GLIBC_2.4 {
+ lio_listio; lio_listio64;
+ }
+}
+%endif
diff --git a/rtkaio/sysdeps/pthread/kaio_timer_routines.c b/rtkaio/sysdeps/pthread/kaio_timer_routines.c
new file mode 100644
index 0000000000..3aa70ede12
--- /dev/null
+++ b/rtkaio/sysdeps/pthread/kaio_timer_routines.c
@@ -0,0 +1 @@
+#include <timer_routines.c>
diff --git a/rtkaio/sysdeps/pthread/librtkaio-cancellation.c b/rtkaio/sysdeps/pthread/librtkaio-cancellation.c
new file mode 100644
index 0000000000..77c0870e32
--- /dev/null
+++ b/rtkaio/sysdeps/pthread/librtkaio-cancellation.c
@@ -0,0 +1 @@
+#include <librt-cancellation.c>
diff --git a/rtkaio/sysdeps/pthread/rtkaio-unwind-resume.c b/rtkaio/sysdeps/pthread/rtkaio-unwind-resume.c
new file mode 100644
index 0000000000..09499a51a9
--- /dev/null
+++ b/rtkaio/sysdeps/pthread/rtkaio-unwind-resume.c
@@ -0,0 +1 @@
+#include <rt-unwind-resume.c>
diff --git a/rtkaio/sysdeps/pthread/tst-cancel17.c b/rtkaio/sysdeps/pthread/tst-cancel17.c
new file mode 100644
index 0000000000..3a7e7ef1ab
--- /dev/null
+++ b/rtkaio/sysdeps/pthread/tst-cancel17.c
@@ -0,0 +1 @@
+#include <nptl/tst-cancel17.c>
diff --git a/rtkaio/sysdeps/pthread/tst-cancelx17.c b/rtkaio/sysdeps/pthread/tst-cancelx17.c
new file mode 100644
index 0000000000..c6c833b60c
--- /dev/null
+++ b/rtkaio/sysdeps/pthread/tst-cancelx17.c
@@ -0,0 +1 @@
+#include "tst-cancel17.c"
diff --git a/rtkaio/sysdeps/pthread/tst-mqueue8x.c b/rtkaio/sysdeps/pthread/tst-mqueue8x.c
new file mode 100644
index 0000000000..1259ebdf50
--- /dev/null
+++ b/rtkaio/sysdeps/pthread/tst-mqueue8x.c
@@ -0,0 +1 @@
+#include_next <tst-mqueue8x.c>
diff --git a/rtkaio/sysdeps/pthread/tst-timer.c b/rtkaio/sysdeps/pthread/tst-timer.c
new file mode 100644
index 0000000000..9f38f9b2da
--- /dev/null
+++ b/rtkaio/sysdeps/pthread/tst-timer.c
@@ -0,0 +1 @@
+#include_next <tst-timer.c>