From 32c075e1f01849e161724bbd400ba77244e482cc Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Tue, 31 Jul 2007 13:33:18 +0000 Subject: . --- sysdeps/unix/sysv/linux/i386/sigaction.c | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) (limited to 'sysdeps/unix/sysv/linux/i386/sigaction.c') diff --git a/sysdeps/unix/sysv/linux/i386/sigaction.c b/sysdeps/unix/sysv/linux/i386/sigaction.c index b5c1b98573..299574dac4 100644 --- a/sysdeps/unix/sysv/linux/i386/sigaction.c +++ b/sysdeps/unix/sysv/linux/i386/sigaction.c @@ -1,5 +1,5 @@ /* POSIX.1 `sigaction' call for Linux/i386. - Copyright (C) 1991,1995-2000,2002-2005,2006 Free Software Foundation, Inc. + Copyright (C) 1991,1995-2000,2002-2004,2005 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -46,10 +46,18 @@ int __libc_missing_rt_sigs; /* Using the hidden attribute here does not change the code but it helps to avoid warnings. */ -#ifdef __NR_rt_sigaction +#if defined HAVE_HIDDEN && defined HAVE_VISIBILITY_ATTRIBUTE \ + && !defined HAVE_BROKEN_VISIBILITY_ATTRIBUTE +# ifdef __NR_rt_sigaction extern void restore_rt (void) asm ("__restore_rt") attribute_hidden; -#endif +# endif extern void restore (void) asm ("__restore") attribute_hidden; +#else +# ifdef __NR_rt_sigaction +static void restore_rt (void) asm ("__restore_rt"); +# endif +static void restore (void) asm ("__restore"); +#endif /* If ACT is not NULL, change the action for SIG to *ACT. -- cgit v1.2.3