summaryrefslogtreecommitdiff
path: root/configure.ac
diff options
context:
space:
mode:
authorIvan Maidanski <ivmai@mail.ru>2017-03-23 11:45:31 +0300
committerIvan Maidanski <ivmai@mail.ru>2017-03-23 11:45:41 +0300
commit1468a6f45408ba22e678f7c954b6192cbcbc087a (patch)
tree829e81ac675d199e3734be6c77b15c5f9048c75b /configure.ac
parentee1bc34de304eb6e012750cedd63a534485b5f08 (diff)
downloadbdwgc-1468a6f45408ba22e678f7c954b6192cbcbc087a.tar.gz
Detect sigsetjmp() availability by configure
* configure.ac (AC_TRY_LINK(sigsetjmp)): Add (define GC_NO_SIGSETJMP if sigsetjmp is not available).
Diffstat (limited to 'configure.ac')
-rw-r--r--configure.ac11
1 files changed, 11 insertions, 0 deletions
diff --git a/configure.ac b/configure.ac
index 7561e1fa..94e6fbcc 100644
--- a/configure.ac
+++ b/configure.ac
@@ -795,6 +795,17 @@ if test x"$have_dladdr" = xyes; then
AC_DEFINE([HAVE_DLADDR], 1, [Define to use 'dladdr' function.])
fi
+# sigsetjmp could be a macro (thus AC_CHECK_FUNCS cannot be used).
+AC_MSG_CHECKING(for sigsetjmp)
+old_CFLAGS="$CFLAGS"
+CFLAGS="$CFLAGS $CFLAGS_EXTRA"
+AC_TRY_LINK([#include <setjmp.h>],
+ [sigjmp_buf t; sigsetjmp(t, 0)],
+ [AC_MSG_RESULT(yes)],
+ [AC_MSG_RESULT(no)
+ AC_DEFINE([GC_NO_SIGSETJMP], [1], [Missing sigsetjmp])])
+CFLAGS="$old_CFLAGS"
+
# Check for AViiON Machines running DGUX
ac_is_dgux=no
AC_CHECK_HEADER(sys/dg_sys_info.h,