X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=m4%2Fsigaction.m4;h=18bfd03c844b0cd16f45784615a3218e807cf4e8;hb=c63a72ef0d158de1d98ca46e510adee2e4299e3b;hp=e936cb3582a09ec4cbfe832b3c18cc9ba396ebc3;hpb=cab269056bb5f3ca4ff6a25516cf63c380dd3a20;p=gnulib.git diff --git a/m4/sigaction.m4 b/m4/sigaction.m4 index e936cb358..18bfd03c8 100644 --- a/m4/sigaction.m4 +++ b/m4/sigaction.m4 @@ -1,5 +1,5 @@ -# sigaction.m4 serial 2 -dnl Copyright (C) 2008 Free Software Foundation, Inc. +# sigaction.m4 serial 7 +dnl Copyright (C) 2008-2012 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -8,14 +8,15 @@ dnl with or without modifications, as long as this notice is preserved. AC_DEFUN([gl_SIGACTION], [ AC_REQUIRE([gl_SIGNAL_H_DEFAULTS]) - dnl Due to autoconf conventions, we can't tell if HAVE_SIGACTION - dnl means we have the type or means we have the function. We assume - dnl that all implementations either have both or neither. - AC_REPLACE_FUNCS([sigaction]) - if test $ac_cv_func_sigaction = no ; then + AC_CHECK_FUNCS_ONCE([sigaction]) + if test $ac_cv_func_sigaction = yes; then + AC_CHECK_MEMBERS([struct sigaction.sa_sigaction], , , + [[#include ]]) + if test $ac_cv_member_struct_sigaction_sa_sigaction = no; then + HAVE_STRUCT_SIGACTION_SA_SIGACTION=0 + fi + else HAVE_SIGACTION=0 - AC_SUBST([HAVE_SIGACTION]) - gl_PREREQ_SIGACTION fi ]) @@ -25,13 +26,15 @@ AC_DEFUN([gl_PREREQ_SIGACTION], AC_REQUIRE([gl_SIGNAL_H_DEFAULTS]) AC_REQUIRE([AC_C_RESTRICT]) AC_REQUIRE([AC_TYPE_UID_T]) + AC_REQUIRE([gl_PREREQ_SIG_HANDLER_H]) AC_CHECK_FUNCS_ONCE([sigaltstack siginterrupt]) AC_CHECK_TYPES([siginfo_t], [], [], [[ #include ]]) if test $ac_cv_type_siginfo_t = no; then HAVE_SIGINFO_T=0 - AC_SUBST([HAVE_SIGINFO_T]) fi - gl_PREREQ_SIG_HANDLER_H ]) + +# Prerequisites of lib/sig-handler.h. +AC_DEFUN([gl_PREREQ_SIG_HANDLER_H], [:])