]> git.ipfire.org Git - thirdparty/glibc.git/blame - sysdeps/gnu/siglist.c
[BZ #2510, BZ #2830, BZ #3137, BZ #3313, BZ #3426, BZ #3465, BZ #3480, BZ #3483,...
[thirdparty/glibc.git] / sysdeps / gnu / siglist.c
CommitLineData
7f12722d 1/* Define list of all signal numbers and their names.
11bf311e 2 Copyright (C) 1997-2000, 2002, 2003, 2006 Free Software Foundation, Inc.
6591c335
UD
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
41bdb6e2
AJ
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
6591c335
UD
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
41bdb6e2 13 Lesser General Public License for more details.
6591c335 14
41bdb6e2
AJ
15 You should have received a copy of the GNU Lesser General Public
16 License along with the GNU C Library; if not, write to the Free
17 Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
18 02111-1307 USA. */
6591c335 19
46ec036d
UD
20#include <stddef.h>
21#include <signal.h>
4360eafd 22#include <libintl.h>
fd091d3f 23#include <shlib-compat.h>
7f12722d 24#include <bits/wordsize.h>
e1586792 25
fd091d3f 26const char *const __new_sys_siglist[NSIG] =
46ec036d 27{
e361ccd9 28#define init_sig(sig, abbrev, desc) [sig] = desc,
7f12722d 29#include <siglist.h>
46ec036d
UD
30#undef init_sig
31};
230491f0 32strong_alias (__new_sys_siglist, _sys_siglist_internal)
46ec036d 33
fd091d3f 34const char *const __new_sys_sigabbrev[NSIG] =
46ec036d 35{
e361ccd9 36#define init_sig(sig, abbrev, desc) [sig] = abbrev,
7f12722d 37#include <siglist.h>
46ec036d
UD
38#undef init_sig
39};
15deb6b3 40strong_alias (__new_sys_sigabbrev, _sys_sigabbrev_internal)
46ec036d 41
2ae13e20 42#if SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_1)
11bf311e
UD
43declare_symbol_alias (__old_sys_siglist, __new_sys_siglist, object,
44 OLD_SIGLIST_SIZE * __WORDSIZE / 8)
582b54aa 45
11bf311e
UD
46declare_symbol_alias (__old_sys_sigabbrev, __new_sys_sigabbrev, object,
47 OLD_SIGLIST_SIZE * __WORDSIZE / 8)
48
49declare_symbol_alias (_old_sys_siglist, __new_sys_siglist, object,
50 OLD_SIGLIST_SIZE * __WORDSIZE / 8)
e1586792 51
2ae13e20
RM
52compat_symbol (libc, __old_sys_siglist, _sys_siglist, GLIBC_2_0);
53compat_symbol (libc, _old_sys_siglist, sys_siglist, GLIBC_2_0);
54compat_symbol (libc, __old_sys_sigabbrev, sys_sigabbrev, GLIBC_2_0);
fd091d3f 55#endif
e1586792 56
582b54aa 57#if SHLIB_COMPAT (libc, GLIBC_2_1, GLIBC_2_3_3) && defined OLD2_SIGLIST_SIZE
11bf311e
UD
58declare_symbol_alias (__old2_sys_siglist, __new_sys_siglist, object,
59 OLD2_SIGLIST_SIZE * __WORDSIZE / 8)
60
61declare_symbol_alias (__old2_sys_sigabbrev, __new_sys_sigabbrev, object,
62 OLD2_SIGLIST_SIZE * __WORDSIZE / 8)
2692deea 63
11bf311e
UD
64declare_symbol_alias (_old2_sys_siglist, __new_sys_siglist, object,
65 OLD2_SIGLIST_SIZE * __WORDSIZE / 8)
582b54aa 66
582b54aa
UD
67compat_symbol (libc, __old2_sys_siglist, _sys_siglist, GLIBC_2_1);
68compat_symbol (libc, _old2_sys_siglist, sys_siglist, GLIBC_2_1);
69compat_symbol (libc, __old2_sys_sigabbrev, sys_sigabbrev, GLIBC_2_1);
70
71strong_alias (__new_sys_siglist, _new_sys_siglist)
72versioned_symbol (libc, __new_sys_siglist, _sys_siglist, GLIBC_2_3_3);
73versioned_symbol (libc, _new_sys_siglist, sys_siglist, GLIBC_2_3_3);
74versioned_symbol (libc, __new_sys_sigabbrev, sys_sigabbrev, GLIBC_2_3_3);
75#else
bd355af0 76strong_alias (__new_sys_siglist, _new_sys_siglist)
fd091d3f
UD
77versioned_symbol (libc, __new_sys_siglist, _sys_siglist, GLIBC_2_1);
78versioned_symbol (libc, _new_sys_siglist, sys_siglist, GLIBC_2_1);
79versioned_symbol (libc, __new_sys_sigabbrev, sys_sigabbrev, GLIBC_2_1);
582b54aa 80#endif