Support cancellation in librt.
[kopensolaris-gnu/glibc.git] / linuxthreads / sysdeps / unix / sysv / linux / ia64 / sysdep-cancel.h
index af45b19..2545c9f 100644 (file)
@@ -23,7 +23,7 @@
 # include <linuxthreads/internals.h>
 #endif
 
-#if !defined NOT_IN_libc || defined IS_IN_libpthread
+#if !defined NOT_IN_libc || defined IS_IN_libpthread || defined IS_IN_librt
 
 # undef PSEUDO
 # define PSEUDO(name, syscall_name, args)                                    \
@@ -85,9 +85,12 @@ __syscall_error_##args:                                                            \
 # ifdef IS_IN_libpthread
 #  define CENABLE      br.call.sptk.many b0 = __pthread_enable_asynccancel
 #  define CDISABLE     br.call.sptk.many b0 = __pthread_disable_asynccancel
-# else
+# elif !defined NOT_IN_libc
 #  define CENABLE      br.call.sptk.many b0 = __libc_enable_asynccancel
 #  define CDISABLE     br.call.sptk.many b0 = __libc_disable_asynccancel
+# else
+#  define CENABLE      br.call.sptk.many b0 = __librt_enable_asynccancel
+#  define CDISABLE     br.call.sptk.many b0 = __librt_disable_asynccancel
 # endif
 
 #define COPY_ARGS_0    /* Nothing */