signal: Add __libc_sigaction
[platform/upstream/glibc.git] / signal / Makefile
1 # Copyright (C) 1991-2021 Free Software Foundation, Inc.
2 # This file is part of the GNU C Library.
3
4 # The GNU C Library is free software; you can redistribute it and/or
5 # modify it under the terms of the GNU Lesser General Public
6 # License as published by the Free Software Foundation; either
7 # version 2.1 of the License, or (at your option) any later version.
8
9 # The GNU C Library is distributed in the hope that it will be useful,
10 # but WITHOUT ANY WARRANTY; without even the implied warranty of
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
12 # Lesser General Public License for more details.
13
14 # You should have received a copy of the GNU Lesser General Public
15 # License along with the GNU C Library; if not, see
16 # <https://www.gnu.org/licenses/>.
17
18 #
19 #       Makefile for signal routines.
20 #
21 subdir  := signal
22
23 include ../Makeconfig
24
25 headers := signal.h sys/signal.h \
26            bits/signum-generic.h bits/signum-arch.h \
27            bits/sigcontext.h bits/sigaction.h \
28            bits/sigevent-consts.h bits/siginfo-consts.h \
29            bits/sigstack.h bits/sigthread.h bits/ss_flags.h \
30            bits/types/__sigset_t.h bits/types/sig_atomic_t.h \
31            bits/types/sigevent_t.h bits/types/siginfo_t.h \
32            bits/types/sigset_t.h bits/types/sigval_t.h \
33            bits/types/stack_t.h bits/types/struct_sigstack.h \
34            bits/types/__sigval_t.h bits/signal_ext.h \
35            bits/sigstksz.h
36
37 routines        := signal raise killpg \
38                    sigaction libc_sigaction sigprocmask kill \
39                    sigpending sigsuspend sigwait \
40                    sigblock sigsetmask sigpause sigvec \
41                    sigstack sigaltstack sigintr \
42                    sigsetops sigempty sigfillset sigaddset sigdelset sigismem \
43                    sigreturn \
44                    siggetmask sysv_signal \
45                    sigisempty sigandset sigorset \
46                    allocrtsig sigtimedwait sigwaitinfo sigqueue \
47                    sighold sigrelse sigignore sigset
48
49 tests           := tst-signal tst-sigset tst-sigsimple tst-raise tst-sigset2 \
50                    tst-sigwait-eintr tst-sigaction \
51                    tst-minsigstksz-1 tst-minsigstksz-2 tst-minsigstksz-3 \
52                    tst-minsigstksz-3a tst-minsigstksz-4 tst-minsigstksz-5 \
53                    tst-sigisemptyset
54
55 include ../Rules
56
57 CFLAGS-raise.c += -fasynchronous-unwind-tables
58 CFLAGS-sigpause.c += -fexceptions
59 CFLAGS-sigsuspend.c += -fexceptions -fasynchronous-unwind-tables
60 CFLAGS-sigtimedwait.c += -fexceptions -fasynchronous-unwind-tables
61 CFLAGS-sigwait.c += -fexceptions -fasynchronous-unwind-tables
62 CFLAGS-sigwaitinfo.c += -fexceptions -fasynchronous-unwind-tables
63
64 CFLAGS-sigreturn.c += $(no-stack-protector)
65
66 # We don't want to test the lazy resolution stack usage, just the
67 # execution of the handler and the functions.
68 LDFLAGS-tst-minsigstksz-1 = -Wl,-z,now
69 LDFLAGS-tst-minsigstksz-2 = -Wl,-z,now
70 LDFLAGS-tst-minsigstksz-3 = -Wl,-z,now
71 LDFLAGS-tst-minsigstksz-3a = -Wl,-z,now
72 LDFLAGS-tst-minsigstksz-4 = -Wl,-z,now