From 1fde494e69792603263bdf85819831f00d29cee4 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Sun, 15 Jun 2003 20:45:32 +0000 Subject: (LIBC_CANCEL_ASYNC): Also define for librt. (LIBC_CANCEL_RESET): Likewise. Declare __librt_enable_asynccancel and __librt_disable_asynccancel. --- nptl/pthreadP.h | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'nptl/pthreadP.h') diff --git a/nptl/pthreadP.h b/nptl/pthreadP.h index a979f07f0b..e10589c11e 100644 --- a/nptl/pthreadP.h +++ b/nptl/pthreadP.h @@ -152,6 +152,14 @@ __do_cancel (void) # define LIBC_CANCEL_HANDLED() \ __asm (".globl " __SYMBOL_PREFIX "__pthread_enable_asynccancel"); \ __asm (".globl " __SYMBOL_PREFIX "__pthread_disable_asynccancel") +#elif defined NOT_IN_libc && defined IS_IN_librt +# define LIBC_CANCEL_ASYNC() \ + __librt_enable_asynccancel () +# define LIBC_CANCEL_RESET(val) \ + __librt_disable_asynccancel (val) +# define LIBC_CANCEL_HANDLED() \ + __asm (".globl " __SYMBOL_PREFIX "__librt_enable_asynccancel"); \ + __asm (".globl " __SYMBOL_PREFIX "__librt_disable_asynccancel") #else # define LIBC_CANCEL_ASYNC() 0 /* Just a dummy value. */ # define LIBC_CANCEL_RESET(val) ((void)(val)) /* Nothing, but evaluate it. */ @@ -342,6 +350,12 @@ extern int __libc_enable_asynccancel (void) attribute_hidden; extern void __libc_disable_asynccancel (int oldtype) internal_function attribute_hidden; + +/* The two functions are in librt.so and not exported. */ +extern int __librt_enable_asynccancel (void) attribute_hidden; +extern void __librt_disable_asynccancel (int oldtype) + internal_function attribute_hidden; + #ifdef IS_IN_libpthread /* Special versions which use non-exported functions. */ extern void __pthread_cleanup_push (struct _pthread_cleanup_buffer *buffer, -- cgit v1.2.3