mirror of
https://sourceware.org/git/glibc.git
synced 2024-11-24 10:22:41 +08:00
cd65836b5f
For XPG4.2, sa_sigaction, SA_ONSTACK, SA_RESETHAND, SA_RESTART and SA_NODEFER should be defined in signal.h, but they are only defined for other standards at present. This patch fixes the various bits/sigaction.h headers accordingly. All the fixes are essentially the same, except those for SPARC and Tile. For SPARC, the header (a) spuriously defined various nonstandard macros for __USE_UNIX98 || defined __USE_XOPEN2K8 and (b) defined some standard macros as aliases of nonstandard ones instead of the other way round. This patch fixes the SPARC header to handle these macros the same way and with the same conditions as those for other architectures, so the standard macros are the primary ones and the other ones are defined only for __USE_MISC and are aliases of the standard ones where applicable. For Tile, the header spuriously defined the nonstandard macro SA_NOPTRACE for __USE_UNIX98 || defined __USE_XOPEN2K8; this is moved to __USE_MISC. (Those nonstandard macros are in a reserved namespace, but it seems desirable to be consistent between architectures as far as possible, and so not define them in standard modes anywhere.) Tested for x86_64, and with build-many-glibcs.py. [BZ #21899] * bits/sigaction.h (struct sigaction): Define sa_handler and sa_sigaction using union also for [__USE_XOPEN_EXTENDED]. (SA_ONSTACK): Change [__USE_UNIX98] condition to [__USE_XOPEN_EXTENDED]. (SA_RESTART): Likewise. (SA_NODEFER): Likewise. (SA_RESETHAND): Likewise. * sysdeps/unix/sysv/linux/alpha/bits/sigaction.h (struct sigaction): Define sa_handler and sa_sigaction using union also for [__USE_XOPEN_EXTENDED]. (SA_ONSTACK): Change [__USE_UNIX98] condition to [__USE_XOPEN_EXTENDED]. (SA_RESTART): Likewise. (SA_NODEFER): Likewise. (SA_RESETHAND): Likewise. * sysdeps/unix/sysv/linux/bits/sigaction.h (struct sigaction): Define sa_handler and sa_sigaction using union also for [__USE_XOPEN_EXTENDED]. (SA_ONSTACK): Change [__USE_UNIX98] condition to [__USE_XOPEN_EXTENDED]. (SA_RESTART): Likewise. (SA_NODEFER): Likewise. (SA_RESETHAND): Likewise. * sysdeps/unix/sysv/linux/hppa/bits/sigaction.h (struct sigaction): Define sa_handler and sa_sigaction using union also for [__USE_XOPEN_EXTENDED]. (SA_ONSTACK): Change [__USE_UNIX98] condition to [__USE_XOPEN_EXTENDED]. (SA_RESTART): Likewise. (SA_NODEFER): Likewise. (SA_RESETHAND): Likewise. * sysdeps/unix/sysv/linux/ia64/bits/sigaction.h (struct sigaction): Define sa_handler and sa_sigaction using union also for [__USE_XOPEN_EXTENDED]. (SA_ONSTACK): Change [__USE_UNIX98] condition to [__USE_XOPEN_EXTENDED]. (SA_RESTART): Likewise. (SA_NODEFER): Likewise. (SA_RESETHAND): Likewise. * sysdeps/unix/sysv/linux/mips/bits/sigaction.h (struct sigaction): Define sa_handler and sa_sigaction using union also for [__USE_XOPEN_EXTENDED]. (SA_ONSTACK): Change [__USE_UNIX98] condition to [__USE_XOPEN_EXTENDED]. (SA_RESTART): Likewise. (SA_NODEFER): Likewise. (SA_RESETHAND): Likewise. * sysdeps/unix/sysv/linux/s390/bits/sigaction.h (struct sigaction): Define sa_handler and sa_sigaction using union also for [__USE_XOPEN_EXTENDED]. (SA_ONSTACK): Change [__USE_UNIX98] condition to [__USE_XOPEN_EXTENDED]. (SA_RESTART): Likewise. (SA_NODEFER): Likewise. (SA_RESETHAND): Likewise. * sysdeps/unix/sysv/linux/sparc/bits/sigaction.h (struct sigaction): Define sa_handler and sa_sigaction using union also for [__USE_XOPEN_EXTENDED]. (SA_ONSTACK): Change [__USE_UNIX98] condition to [__USE_XOPEN_EXTENDED]. (SA_RESTART): Likewise. (SA_NODEFER): Likewise. Define directly rather than as alias. (SA_RESETHAND): Likewise. (SA_INTERRUPT): Define only for [__USE_MISC]. (SA_NOMASK): Define as alias of SA_NODEFER, only for [__USE_MISC]. (SA_ONESHOT): Define as alias of SA_RESETHAND, only for [__USE_MISC]. (SA_STACK): Define only for [__USE_MISC]. * sysdeps/unix/sysv/linux/tile/bits/sigaction.h (struct sigaction): Define sa_handler and sa_sigaction using union also for [__USE_XOPEN_EXTENDED]. (SA_ONSTACK): Change [__USE_UNIX98] condition to [__USE_XOPEN_EXTENDED]. (SA_RESTART): Likewise. (SA_NODEFER): Likewise. (SA_RESETHAND): Likewise. (SA_NOPTRACE): Define only for [__USE_MISC]. |
||
---|---|---|
.. | ||
types | ||
byteswap-16.h | ||
byteswap.h | ||
confname.h | ||
dirent.h | ||
dlfcn.h | ||
elfclass.h | ||
endian.h | ||
environments.h | ||
errno.h | ||
fcntl.h | ||
fenv.h | ||
fenvinline.h | ||
floatn.h | ||
flt-eval-method.h | ||
fp-fast.h | ||
fp-logb.h | ||
huge_val_flt128.h | ||
huge_val.h | ||
huge_valf.h | ||
huge_vall.h | ||
hwcap.h | ||
in.h | ||
inf.h | ||
ioctl-types.h | ||
ioctls.h | ||
ipc.h | ||
ipctypes.h | ||
iscanonical.h | ||
libc-header-start.h | ||
libm-simd-decl-stubs.h | ||
link.h | ||
local_lim.h | ||
long-double.h | ||
math-vector.h | ||
mathdef.h | ||
mathinline.h | ||
mman-linux.h | ||
mman.h | ||
mqueue.h | ||
msq.h | ||
nan.h | ||
netdb.h | ||
param.h | ||
poll.h | ||
posix_opt.h | ||
pthreadtypes.h | ||
resource.h | ||
sched.h | ||
select.h | ||
sem.h | ||
setjmp.h | ||
shm.h | ||
sigaction.h | ||
sigcontext.h | ||
sigevent-consts.h | ||
siginfo-consts.h | ||
signum-generic.h | ||
signum.h | ||
sigstack.h | ||
sigthread.h | ||
sockaddr.h | ||
socket.h | ||
ss_flags.h | ||
stat.h | ||
statfs.h | ||
statvfs.h | ||
stdint-intn.h | ||
stdint-uintn.h | ||
stdlib-bsearch.h | ||
stropts.h | ||
sys_errlist.h | ||
syslog-path.h | ||
sysmacros.h | ||
termios.h | ||
time.h | ||
typesizes.h | ||
uintn-identity.h | ||
uio_lim.h | ||
uio-ext.h | ||
ustat.h | ||
utmp.h | ||
utsname.h | ||
waitflags.h | ||
waitstatus.h | ||
wchar.h | ||
wordsize.h | ||
xtitypes.h |