• Paul Eggert's avatar
    Assume POSIX 1003.1-1988 or later for signal.h. · d983a10b
    Paul Eggert authored
    Exceptions: do not assume SIGCONT, SIGSTOP, SIGTSTP, SIGTTIN,
    SIGTTOU, SIGUSR1, SIGUSR2, as Microsoft platforms lack these.
    * admin/CPP-DEFINES (SIGALRM, SIGCHLD, SIGHUP, SIGKILL, SIGPIPE, SIGQUIT):
    Remove.
    (SIGTRAP): Remove this one too, as config.h no longer defines it.
    * admin/merge-gnulib (GNULIB_MODULES): Add sig2str.
    * configure.ac (PTY_OPEN, PTY_TTY_NAME_SPRINTF):
    Use SIGCHLD rather than SIGCLD.
    * lib/sig2str.c, lib/sig2str.h, m4/sig2str.m4: New files, from gnulib.
    * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
    * lib/makefile.w32-in (GNULIBOBJS): Add $(BUILD)/sig2str.$(O).
    * src/process.c [subprocesses]: Include <c-ctype.h>, <sig2str.h>.
    (deleted_pid_list, Fdelete_process, create_process)
    (record_child_status_change, handle_child_signal, deliver_child_signal)
    (init_process_emacs, syms_of_process):
    Assume SIGCHLD is defined.
    (parse_signal): Remove.  All uses removed.
    (abbr_to_signal): New static function.
    (Fsignal_process): Use it to convert signal names to ints.
    * src/sysdep.c (sys_suspend) [!DOS_NT]: Use kill (0, ...) rather than
    kill (getpgrp (), ...).
    (emacs_sigaction_init): Assume SIGCHLD is defined.
    (init_signals): Assume SIGALRM, SIGCHLD, SIGHUP, SIGKILL,
    SIGPIPE, and SIGQUIT are defined.  Do not worry about SIGCLD any more.
    * src/syssignal.h (EMACS_KILLPG): Remove.
    All uses replaced by 'kill' with a negative pid.
    (SIGCHLD): Remove definition, as we now assume SIGCHLD.
    * src/w32proc.c (sys_kill): Support negative pids compatibly with POSIX.
    
    Fixes: debbugs:13026
    d983a10b
gnulib-comp.m4 23.4 KB