1 dnl test whether dirent has a d_off member
2 AC_DEFUN(AC_DIRENT_D_OFF,
3 [AC_CACHE_CHECK([for d_off in dirent], ac_cv_dirent_d_off,
7 #include <dirent.h>], [struct dirent d; d.d_off;],
8 ac_cv_dirent_d_off=yes, ac_cv_dirent_d_off=no)])
9 if test $ac_cv_dirent_d_off = yes; then
10 AC_DEFINE(HAVE_DIRENT_D_OFF,1,[Whether dirent has a d_off member])
14 dnl Mark specified module as shared
15 dnl SMB_MODULE(name,static_files,shared_files,subsystem,whatif-static,whatif-shared)
18 AC_MSG_CHECKING([how to build $1])
19 if test "$[MODULE_][$1]"; then
21 elif test "$[MODULE_]translit([$4], [A-Z], [a-z])" -a "$[MODULE_DEFAULT_][$1]"; then
22 DEST=$[MODULE_]translit([$4], [A-Z], [a-z])
24 DEST=$[MODULE_DEFAULT_][$1]
27 if test x"$DEST" = xSHARED; then
28 AC_DEFINE([$1][_init], [init_module], [Whether to build $1 as shared module])
29 $4_MODULES="$$4_MODULES $3"
30 AC_MSG_RESULT([shared])
32 string_shared_modules="$string_shared_modules $1"
33 elif test x"$DEST" = xSTATIC; then
34 [init_static_modules_]translit([$4], [A-Z], [a-z])="$[init_static_modules_]translit([$4], [A-Z], [a-z]) $1_init();"
35 [decl_static_modules_]translit([$4], [A-Z], [a-z])="$[decl_static_modules_]translit([$4], [A-Z], [a-z]) extern NTSTATUS $1_init(void);"
36 string_static_modules="$string_static_modules $1"
37 $4_STATIC="$$4_STATIC $2"
40 AC_MSG_RESULT([static])
42 string_ignored_modules="$string_ignored_modules $1"
47 AC_DEFUN(SMB_SUBSYSTEM,
51 AC_DEFINE_UNQUOTED([static_init_]translit([$1], [A-Z], [a-z]), [{$init_static_modules_]translit([$1], [A-Z], [a-z])[}], [Static init functions])
52 AC_DEFINE_UNQUOTED([static_decl_]translit([$1], [A-Z], [a-z]), [$decl_static_modules_]translit([$1], [A-Z], [a-z]), [Decl of Static init functions])
53 ifelse([$2], , :, [rm -f $2])
59 dnl configure build and use of an (internal) shared library
61 AC_DEFUN([SMB_LIBRARY],
63 m4_pushdef([LIBNAME], [lib$1])
64 m4_pushdef([LIBUC], [m4_toupper(LIBNAME)])
65 m4_pushdef([LIBLIBS], [-l$1])
67 LIBUC[_SHARED_TARGET]=bin/LIBNAME.$SHLIBEXT
68 LIBUC[_STATIC_TARGET]=bin/LIBNAME.a
73 AC_SUBST(LIBUC[_SHARED_TARGET])
74 AC_SUBST(LIBUC[_STATIC_TARGET])
75 AC_SUBST(LIBUC[_SHARED])
76 AC_SUBST(LIBUC[_STATIC])
77 AC_SUBST(LIBUC[_LIBS])
79 AC_MSG_CHECKING([whether to build the LIBNAME shared library])
81 AS_HELP_STRING([--with-]LIBNAME,
82 [Build the LIBNAME shared library (default=yes if shared libs supported)]),
95 # if unspecified, default is to build it if possible.
100 if eval test x"$build_lib" = "xyes" -a $BLDSHARED = true; then
101 LIBUC[_SHARED]=$LIBUC[_SHARED_TARGET]
103 if test x"$USESHARED" != x"true" -o x"$[LINK_]LIBUC" = "xSTATIC" ; then
104 LIBUC[_STATIC]=$LIBUC[_STATIC_TARGET]
110 AC_MSG_RESULT(no shared library support -- will supply static library)
112 if test $enable_static = yes; then
113 LIBUC[_STATIC]=$LIBUC[_STATIC_TARGET]
123 dnl AC_LIBTESTFUNC(lib, function, [actions if found], [actions if not found])
124 dnl Check for a function in a library, but don't keep adding the same library
125 dnl to the LIBS variable. Check whether the function is available in the
126 dnl current LIBS before adding the library which prevents us spuriously
127 dnl adding libraries for symbols that are in libc.
129 dnl On success, the default actions ensure that HAVE_FOO is defined. The lib
130 dnl is always added to $LIBS if it was found to be necessary. The caller
131 dnl can use SMB_REMOVE_LIB to strp this if necessary.
132 AC_DEFUN([AC_LIBTESTFUNC],
136 # $2 was found in libc or existing $LIBS
142 AC_DEFINE(translit([HAVE_$2], [a-z], [A-Z]), 1,
143 [Whether $2 is available])
147 # $2 was not found, try adding lib$1
155 # $2 was not found and we already had lib$1
156 # nothing to do here by default
161 # $2 was not found, try adding lib$1
170 AC_DEFINE(translit([HAVE_$2], [a-z], [A-Z]), 1,
171 [Whether $2 is available])
180 # $2 was not found in lib$1
181 # nothing to do here by default
190 # AC_CHECK_LIB_EXT(LIBRARY, [EXT_LIBS], [FUNCTION],
191 # [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND],
192 # [ADD-ACTION-IF-FOUND],[OTHER-LIBRARIES])
193 # ------------------------------------------------------
195 # Use a cache variable name containing both the library and function name,
196 # because the test really is for library $1 defining function $3, not
197 # just for library $1. Separate tests with the same $1 and different $3s
198 # may have different results.
200 # Note that using directly AS_VAR_PUSHDEF([ac_Lib], [ac_cv_lib_$1_$3])
201 # is asking for trouble, since AC_CHECK_LIB($lib, fun) would give
202 # ac_cv_lib_$lib_fun, which is definitely not what was meant. Hence
203 # the AS_LITERAL_IF indirection.
205 # FIXME: This macro is extremely suspicious. It DEFINEs unconditionally,
206 # whatever the FUNCTION, in addition to not being a *S macro. Note
207 # that the cache does depend upon the function we are looking for.
209 # It is on purpose we used `ac_check_lib_ext_save_LIBS' and not just
210 # `ac_save_LIBS': there are many macros which don't want to see `LIBS'
211 # changed but still want to use AC_CHECK_LIB_EXT, so they save `LIBS'.
212 # And ``ac_save_LIBS' is too tempting a name, so let's leave them some
214 AC_DEFUN([AC_CHECK_LIB_EXT],
216 AH_CHECK_LIB_EXT([$1])
217 ac_check_lib_ext_save_LIBS=$LIBS
218 LIBS="-l$1 $$2 $7 $LIBS"
220 [AS_VAR_PUSHDEF([ac_Lib_ext], [ac_cv_lib_ext_$1])],
221 [AS_VAR_PUSHDEF([ac_Lib_ext], [ac_cv_lib_ext_$1''])])dnl
225 AH_CHECK_FUNC_EXT([$3])
227 [AS_VAR_PUSHDEF([ac_Lib_func], [ac_cv_lib_ext_$1_$3])],
228 [AS_VAR_PUSHDEF([ac_Lib_func], [ac_cv_lib_ext_$1''_$3])])dnl
229 AC_CACHE_CHECK([for $3 in -l$1], ac_Lib_func,
230 [AC_TRY_LINK_FUNC($3,
231 [AS_VAR_SET(ac_Lib_func, yes);
232 AS_VAR_SET(ac_Lib_ext, yes)],
233 [AS_VAR_SET(ac_Lib_func, no);
234 AS_VAR_SET(ac_Lib_ext, no)])
236 AS_IF([test AS_VAR_GET(ac_Lib_func) = yes],
237 [AC_DEFINE_UNQUOTED(AS_TR_CPP(HAVE_$3))])dnl
238 AS_VAR_POPDEF([ac_Lib_func])dnl
240 AC_CACHE_CHECK([for -l$1], ac_Lib_ext,
241 [AC_TRY_LINK_FUNC([main],
242 [AS_VAR_SET(ac_Lib_ext, yes)],
243 [AS_VAR_SET(ac_Lib_ext, no)])
246 LIBS=$ac_check_lib_ext_save_LIBS
248 AS_IF([test AS_VAR_GET(ac_Lib_ext) = yes],
250 [AC_DEFINE_UNQUOTED(AS_TR_CPP(HAVE_LIB$1))
261 AS_VAR_POPDEF([ac_Lib_ext])dnl
264 # AH_CHECK_LIB_EXT(LIBNAME)
265 # ---------------------
266 m4_define([AH_CHECK_LIB_EXT],
267 [AH_TEMPLATE(AS_TR_CPP(HAVE_LIB$1),
268 [Define to 1 if you have the `]$1[' library (-l]$1[).])])
270 # AC_CHECK_FUNCS_EXT(FUNCTION, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
271 # -----------------------------------------------------------------
272 dnl check for a function in a $LIBS and $OTHER_LIBS libraries variable.
273 dnl AC_CHECK_FUNC_EXT(func,OTHER_LIBS,IF-TRUE,IF-FALSE)
274 AC_DEFUN([AC_CHECK_FUNC_EXT],
276 AH_CHECK_FUNC_EXT($1)
277 ac_check_func_ext_save_LIBS=$LIBS
279 AS_VAR_PUSHDEF([ac_var], [ac_cv_func_ext_$1])dnl
280 AC_CACHE_CHECK([for $1], ac_var,
281 [AC_LINK_IFELSE([AC_LANG_FUNC_LINK_TRY([$1])],
282 [AS_VAR_SET(ac_var, yes)],
283 [AS_VAR_SET(ac_var, no)])])
284 LIBS=$ac_check_func_ext_save_LIBS
285 AS_IF([test AS_VAR_GET(ac_var) = yes],
286 [AC_DEFINE_UNQUOTED(AS_TR_CPP([HAVE_$1])) $3],
288 AS_VAR_POPDEF([ac_var])dnl
291 # AH_CHECK_FUNC_EXT(FUNCNAME)
292 # ---------------------
293 m4_define([AH_CHECK_FUNC_EXT],
294 [AH_TEMPLATE(AS_TR_CPP(HAVE_$1),
295 [Define to 1 if you have the `]$1[' function.])])
297 dnl Define an AC_DEFINE with ifndef guard.
298 dnl AC_N_DEFINE(VARIABLE [, VALUE])
300 [cat >> confdefs.h <<\EOF
302 [#define] $1 ifelse($#, 2, [$2], $#, 3, [$2], 1)
308 dnl AC_ADD_INCLUDE(VARIABLE)
309 define(AC_ADD_INCLUDE,
310 [cat >> confdefs.h <<\EOF
315 dnl Copied from libtool.m4
316 AC_DEFUN(AC_PROG_LD_GNU,
317 [AC_CACHE_CHECK([if the linker ($LD) is GNU ld], ac_cv_prog_gnu_ld,
318 [# I'd rather use --version here, but apparently some GNU ld's only accept -v.
319 if $LD -v 2>&1 </dev/null | egrep '(GNU|with BFD)' 1>&5; then
320 ac_cv_prog_gnu_ld=yes
326 dnl Removes -I/usr/include/? from given variable
327 AC_DEFUN(CFLAGS_REMOVE_USR_INCLUDE,[
331 -I/usr/include|-I/usr/include/) ;;
332 *) ac_new_flags="[$]ac_new_flags [$]i" ;;
338 dnl Removes '-L/usr/lib[/]', '-Wl,-rpath,/usr/lib[/]'
339 dnl and '-Wl,-rpath -Wl,/usr/lib[/]' from given variable
340 AC_DEFUN(LIB_REMOVE_USR_LIB,[
347 -Wl,-rpath,/usr/lib) ;;
348 -Wl,-rpath,/usr/lib/) ;;
350 -Wl,-rpath-Wl,/usr/lib) l="";;
351 -Wl,-rpath-Wl,/usr/lib/) l="";;
354 if test x"[$]ac_new_flags" = x""; then
357 if test x"[$]l" = x""; then
358 ac_new_flags="[$]ac_new_flags[$]s[$]i";
360 ac_new_flags="[$]ac_new_flags[$]s[$]l [$]i";
369 dnl From Bruno Haible.
373 dnl Some systems have iconv in libc, some have it in libiconv (OSF/1 and
374 dnl those with the standalone portable libiconv installed).
375 AC_MSG_CHECKING(for iconv in $1)
376 jm_cv_func_iconv="no"
381 dnl Check for include in funny place but no lib needed
382 if test "$jm_cv_func_iconv" != yes; then
383 AC_TRY_LINK([#include <stdlib.h>
384 #include <giconv.h>],
385 [iconv_t cd = iconv_open("","");
386 iconv(cd,NULL,NULL,NULL,NULL);
389 jm_cv_include="giconv.h"
393 dnl Standard iconv.h include, lib in glibc or libc ...
394 if test "$jm_cv_func_iconv" != yes; then
395 AC_TRY_LINK([#include <stdlib.h>
397 [iconv_t cd = iconv_open("","");
398 iconv(cd,NULL,NULL,NULL,NULL);
400 jm_cv_include="iconv.h"
404 if test "$jm_cv_lib_iconv" != yes; then
406 LIBS="$LIBS -lgiconv"
407 AC_TRY_LINK([#include <stdlib.h>
408 #include <giconv.h>],
409 [iconv_t cd = iconv_open("","");
410 iconv(cd,NULL,NULL,NULL,NULL);
414 jm_cv_include="giconv.h"
416 jm_cv_lib_iconv="giconv")
420 if test "$jm_cv_func_iconv" != yes; then
423 AC_TRY_LINK([#include <stdlib.h>
425 [iconv_t cd = iconv_open("","");
426 iconv(cd,NULL,NULL,NULL,NULL);
428 jm_cv_include="iconv.h"
430 jm_cv_lib_iconv="iconv")
433 if test "$jm_cv_lib_iconv" != yes; then
435 LIBS="$LIBS -lbiconv"
436 AC_TRY_LINK([#include <stdlib.h>
437 #include <biconv.h>],
438 [iconv_t cd = iconv_open("","");
439 iconv(cd,NULL,NULL,NULL,NULL);
443 jm_cv_include="biconv.h"
445 jm_cv_lib_iconv="biconv")
453 if test "$jm_cv_func_iconv" = yes; then
454 if test "$jm_cv_giconv" = yes; then
455 AC_DEFINE(HAVE_GICONV, 1, [What header to include for iconv() function: giconv.h])
459 if test "$jm_cv_biconv" = yes; then
460 AC_DEFINE(HAVE_BICONV, 1, [What header to include for iconv() function: biconv.h])
464 AC_DEFINE(HAVE_ICONV, 1, [What header to include for iconv() function: iconv.h])
474 AC_DEFUN(rjs_CHARSET,[
475 dnl Find out if we can convert from $1 to UCS2-LE
476 AC_MSG_CHECKING([can we convert from $1 to UCS2-LE?])
478 #include <$jm_cv_include>
480 iconv_t cd = iconv_open("$1", "UCS-2LE");
481 if (cd == 0 || cd == (iconv_t)-1) {
486 ],ICONV_CHARSET=$1,ICONV_CHARSET=no,ICONV_CHARSET=cross)
487 AC_MSG_RESULT($ICONV_CHARSET)
490 dnl AC_ENABLE_SHARED - implement the --enable-shared flag
491 dnl Usage: AC_ENABLE_SHARED[(DEFAULT)]
492 dnl Where DEFAULT is either `yes' or `no'. If omitted, it defaults to
494 AC_DEFUN([AC_ENABLE_SHARED],
495 [define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl
496 AC_ARG_ENABLE(shared,
497 changequote(<<, >>)dnl
498 << --enable-shared[=PKGS] build shared libraries [default=>>AC_ENABLE_SHARED_DEFAULT],
500 [p=${PACKAGE-default}
502 yes) enable_shared=yes ;;
503 no) enable_shared=no ;;
506 # Look at the argument we got. We use all the common list separators.
507 IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
508 for pkg in $enableval; do
509 if test "X$pkg" = "X$p"; then
517 enable_shared=AC_ENABLE_SHARED_DEFAULT)dnl
520 dnl AC_ENABLE_STATIC - implement the --enable-static flag
521 dnl Usage: AC_ENABLE_STATIC[(DEFAULT)]
522 dnl Where DEFAULT is either `yes' or `no'. If omitted, it defaults to
524 AC_DEFUN([AC_ENABLE_STATIC],
525 [define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl
526 AC_ARG_ENABLE(static,
527 changequote(<<, >>)dnl
528 << --enable-static[=PKGS] build static libraries [default=>>AC_ENABLE_STATIC_DEFAULT],
530 [p=${PACKAGE-default}
532 yes) enable_static=yes ;;
533 no) enable_static=no ;;
536 # Look at the argument we got. We use all the common list separators.
537 IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
538 for pkg in $enableval; do
539 if test "X$pkg" = "X$p"; then
546 enable_static=AC_ENABLE_STATIC_DEFAULT)dnl
549 dnl AC_DISABLE_STATIC - set the default static flag to --disable-static
550 AC_DEFUN([AC_DISABLE_STATIC],
551 [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
552 AC_ENABLE_STATIC(no)])
554 dnl AC_TRY_RUN_STRICT(PROGRAM,CFLAGS,CPPFLAGS,LDFLAGS,
555 dnl [ACTION-IF-TRUE],[ACTION-IF-FALSE],
556 dnl [ACTION-IF-CROSS-COMPILING = RUNTIME-ERROR])
557 AC_DEFUN( [AC_TRY_RUN_STRICT],
559 old_CFLAGS="$CFLAGS";
562 old_CPPFLAGS="$CPPFLAGS";
565 old_LDFLAGS="$LDFLAGS";
568 AC_TRY_RUN([$1],[$5],[$6],[$7])
569 CFLAGS="$old_CFLAGS";
572 CPPFLAGS="$old_CPPFLAGS";
575 LDFLAGS="$old_LDFLAGS";
580 dnl SMB_CHECK_SYSCONF(varname)
581 dnl Tests whether the sysconf(3) variable "varname" is available.
582 AC_DEFUN([SMB_CHECK_SYSCONF],
584 AC_CACHE_CHECK([for sysconf($1)],
587 AC_TRY_LINK([#include <unistd.h>],
588 [ return sysconf($1) == -1 ? 1 : 0; ],
589 [ samba_cv_SYSCONF$1=yes ],
590 [ samba_cv_SYSCONF$1=no ])
593 if test x"$samba_cv_SYSCONF$1" = x"yes" ; then
594 AC_DEFINE(SYSCONF$1, 1, [Whether sysconf($1) is available])
598 dnl SMB_IS_LIBPTHREAD_LINKED([actions if true], [actions if false])
599 dnl Test whether the current LIBS results in libpthread being present.
600 dnl Execute the corresponding user action list.
601 AC_DEFUN([SMB_IS_LIBPTHREAD_LINKED],
603 AC_MSG_CHECKING(if libpthread is linked)
605 [return pthread_create(0, 0, 0, 0);],
616 dnl SMB_REMOVE_LIB(lib)
617 dnl Remove the given library from $LIBS
618 AC_DEFUN([SMB_REMOVE_LIB],
620 LIBS=`echo $LIBS | sed '-es/-l$1//g'`
623 dnl SMB_CHECK_DMAPI([actions if true], [actions if false])
624 dnl Check whether DMAPI is available and is a version that we know
625 dnl how to deal with. The default truth action is to set samba_dmapi_libs
626 dnl to the list of necessary libraries, and to define USE_DMAPI.
627 AC_DEFUN([SMB_CHECK_DMAPI],
631 if test x"$samba_dmapi_libs" = x"" ; then
632 AC_CHECK_LIB(dm, dm_get_eventlist,
633 [ samba_dmapi_libs="-ldm"], [])
636 if test x"$samba_dmapi_libs" = x"" ; then
637 AC_CHECK_LIB(jfsdm, dm_get_eventlist,
638 [samba_dmapi_libs="-ljfsdm"], [])
641 if test x"$samba_dmapi_libs" = x"" ; then
642 AC_CHECK_LIB(xdsm, dm_get_eventlist,
643 [samba_dmapi_libs="-lxdsm"], [])
646 if test x"$samba_dmapi_libs" = x"" ; then
647 AC_CHECK_LIB(dmapi, dm_get_eventlist,
648 [samba_dmapi_libs="-ldmapi"], [])
652 # Only bother to test ehaders if we have a candidate DMAPI library
653 if test x"$samba_dmapi_libs" != x"" ; then
654 AC_CHECK_HEADERS(sys/dmi.h xfs/dmapi.h sys/jfsdmapi.h sys/dmapi.h dmapi.h)
657 if test x"$samba_dmapi_libs" != x"" ; then
658 samba_dmapi_save_LIBS="$LIBS"
659 LIBS="$LIBS $samba_dmapi_libs"
662 #include <time.h> /* needed by Tru64 */
663 #include <sys/types.h> /* needed by AIX */
664 #ifdef HAVE_XFS_DMAPI_H
665 #include <xfs/dmapi.h>
666 #elif defined(HAVE_SYS_DMI_H)
668 #elif defined(HAVE_SYS_JFSDMAPI_H)
669 #include <sys/jfsdmapi.h>
670 #elif defined(HAVE_SYS_DMAPI_H)
671 #include <sys/dmapi.h>
672 #elif defined(HAVE_DMAPI_H)
677 /* This link test is designed to fail on IRI 6.4, but should
678 * succeed on Linux, IRIX 6.5 and AIX.
681 dm_eventset_t events;
682 /* This doesn't take an argument on IRIX 6.4. */
683 dm_init_service(&version);
684 /* IRIX 6.4 expects events to be a pointer. */
685 DMEV_ISSET(DM_EVENT_READ, events);
688 true # DMAPI link test succeeded
694 LIBS="$samba_dmapi_save_LIBS"
697 if test x"$samba_dmapi_libs" = x"" ; then
698 # DMAPI detection failure actions begin
701 AC_ERROR(Failed to detect a supported DMAPI implementation)
706 # DMAPI detection failure actions end
708 # DMAPI detection success actions start
711 AC_DEFINE(USE_DMAPI, 1,
712 [Whether we should build DMAPI integration components])
713 AC_MSG_NOTICE(Found DMAPI support in $samba_dmapi_libs)
718 # DMAPI detection success actions end
723 dnl SMB_CHECK_CLOCK_ID(clockid)
724 dnl Test whether the specified clock_gettime clock ID is available. If it
725 dnl is, we define HAVE_clockid
726 AC_DEFUN([SMB_CHECK_CLOCK_ID],
728 AC_MSG_CHECKING(for $1)
730 #if TIME_WITH_SYS_TIME
731 # include <sys/time.h>
735 # include <sys/time.h>
746 AC_DEFINE(HAVE_$1, 1,
747 [Whether the clock_gettime clock ID $1 is available])
754 dnl SMB_IF_RTSIGNAL_BUG([actions if true],
755 dnl [actions if false],
756 dnl [actions if cross compiling])
757 dnl Test whether we can call sigaction with RT_SIGNAL_NOTIFY and
758 dnl RT_SIGNAL_LEASE (also RT_SIGNAL_AIO for good measure, though
759 dnl I don't believe that triggers any bug.
761 dnl See the samba-technical thread titled "Failed to setup
762 dnl RT_SIGNAL_NOTIFY handler" for details on the bug in question.
763 AC_DEFUN([SMB_IF_RTSIGNAL_BUG],
765 rt_signal_notify_works=yes
766 rt_signal_lease_works=yes
767 rt_signal_aio_works=yes
769 AC_MSG_CHECKING(if sigaction works with realtime signals)
772 #include <sys/types.h>
776 /* from smbd/notify_kernel.c */
777 #ifndef RT_SIGNAL_NOTIFY
778 #define RT_SIGNAL_NOTIFY (SIGRTMIN+2)
781 /* from smbd/aio.c */
782 #ifndef RT_SIGNAL_AIO
783 #define RT_SIGNAL_AIO (SIGRTMIN+3)
786 /* from smbd/oplock_linux.c */
787 #ifndef RT_SIGNAL_LEASE
788 #define RT_SIGNAL_LEASE (SIGRTMIN+1)
791 static void signal_handler(int sig, siginfo_t *info, void *unused)
799 struct sigaction act = {0};
801 act.sa_sigaction = signal_handler;
802 act.sa_flags = SA_SIGINFO;
803 sigemptyset( &act.sa_mask );
805 if (sigaction(RT_SIGNAL_LEASE, &act, 0) != 0) {
806 /* Failed to setup RT_SIGNAL_LEASE handler */
810 if (sigaction(RT_SIGNAL_NOTIFY, &act, 0) != 0) {
811 /* Failed to setup RT_SIGNAL_NOTIFY handler */
815 if (sigaction(RT_SIGNAL_AIO, &act, 0) != 0) {
816 /* Failed to setup RT_SIGNAL_AIO handler */
820 /* zero on success */
831 1|11|101|111) rt_signal_lease_ok=no ;;
834 10|11|110|111) rt_signal_notify_ok=no ;;
837 100|110|101|111) rt_signal_aio_ok=no ;;
847 m4_include(lib/replace/libreplace.m4)