diff options
author | hpa <hpa> | 1999-09-26 06:32:41 +0000 |
---|---|---|
committer | hpa <hpa> | 1999-09-26 06:32:41 +0000 |
commit | 09f975fa4c82f89cdae255845599399e61c0c4ad (patch) | |
tree | de26ed72ebc25c152a7759d73919cb165c7de4b2 /aclocal.m4 | |
download | tftp-hpa-09f975fa4c82f89cdae255845599399e61c0c4ad.tar.gz |
Initial revision
Diffstat (limited to 'aclocal.m4')
-rw-r--r-- | aclocal.m4 | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/aclocal.m4 b/aclocal.m4 new file mode 100644 index 0000000..1a3cfef --- /dev/null +++ b/aclocal.m4 @@ -0,0 +1,67 @@ +dnl -------------------------------------------------------------------------- +dnl PA_ADD_CFLAGS() +dnl +dnl Attempt to add the given option to CFLAGS, if it doesn't break compilation +dnl -------------------------------------------------------------------------- +AC_DEFUN(PA_ADD_CFLAGS, +[AC_MSG_CHECKING([if $CC accepts $1]) + pa_add_cflags__old_cflags="$CFLAGS" + CFLAGS="$CFLAGS $1" + AC_TRY_COMPILE([#include <stdio.h>], + [printf("Hello, World!\n");], + AC_MSG_RESULT([yes]), + AC_MSG_RESULT([no]) + CFLAGS="$pa_add_cflags__old_cflags")]) + +dnl -------------------------------------------------------------------------- +dnl PA_BSD_SIGNAL() +dnl +dnl Test for BSD signal semantics. Set shell variable BSD_SIGNAL=1 if OK. +dnl May modify CFLAGS and/or LIBS. +dnl -------------------------------------------------------------------------- +AC_DEFUN(PA_CHECK_BSD_SIGNAL, +[AC_TRY_RUN([ +#include <unistd.h> +#include <signal.h> +int count=0; +handle() { count++; } +int main() { + int pid=getpid(); + signal(SIGINT, handle); + kill(pid,SIGINT); + kill(pid,SIGINT); + kill(pid,SIGINT); + if (count!=3) return 1; + return 0; +} +], BSD_SIGNAL=1)]) + +AC_DEFUN(PA_BSD_SIGNAL, +[AC_MSG_CHECKING([for BSD signal semantics]) +PA_CHECK_BSD_SIGNAL() +if test -z "$BSD_SIGNAL"; then + AC_MSG_RESULT([no]) + AC_MSG_CHECKING([if -D__USE_BSD_SIGNAL helps]) + pa_bsd_signal__old_cflags="$CFLAGS" + CFLAGS="$CFLAGS -D__USE_BSD_SIGNAL" + PA_CHECK_BSD_SIGNAL() + if test -z "$BSD_SIGNAL"; then + AC_MSG_RESULT([no]) + CFLAGS="$pa_bsd_signal__old_cflags" + AC_MSG_CHECKING([if -lbsd helps]) + pa_bsd_signal__old_libs="$LIBS" + LIBS="$LIBS -lbsd" + PA_CHECK_BSD_SIGNAL() + if test -z "$BSD_SIGNAL"; then + AC_MSG_RESULT([no]) + LIBS="$pa_bsd_signal__old_libs" + else + AC_MSG_RESULT([yes]) + fi + else + AC_MSG_RESULT([yes]) + fi +else + AC_MSG_RESULT([yes]) +fi +]) |