diff options
Diffstat (limited to 'source4')
-rw-r--r-- | source4/heimdal/cf/check-var.m4 | 25 | ||||
-rw-r--r-- | source4/heimdal_build/config.m4 | 9 |
2 files changed, 30 insertions, 4 deletions
diff --git a/source4/heimdal/cf/check-var.m4 b/source4/heimdal/cf/check-var.m4 new file mode 100644 index 0000000000..41401f6dd9 --- /dev/null +++ b/source4/heimdal/cf/check-var.m4 @@ -0,0 +1,25 @@ +dnl $Id: check-var.m4,v 1.12 2005/06/16 18:59:10 lha Exp $ +dnl +dnl rk_CHECK_VAR(variable, includes) +AC_DEFUN([rk_CHECK_VAR], [ +AC_MSG_CHECKING(for $1) +AC_CACHE_VAL(ac_cv_var_$1, [ +m4_ifval([$2],[ + AC_LINK_IFELSE([AC_LANG_PROGRAM([[$2 + void * foo(void) { return &$1; }]],[[foo()]])], + [ac_cv_var_$1=yes],[ac_cv_var_$1=no])]) +if test "$ac_cv_var_$1" != yes ; then +AC_LINK_IFELSE([AC_LANG_PROGRAM([[extern int $1; +int foo(void) { return $1; }]],[[foo()]])], + [ac_cv_var_$1=yes],[ac_cv_var_$1=no]) +fi +]) +ac_foo=`eval echo \\$ac_cv_var_$1` +AC_MSG_RESULT($ac_foo) +if test "$ac_foo" = yes; then + AC_DEFINE_UNQUOTED(AS_TR_CPP(HAVE_[]$1), 1, + [Define if you have the `]$1[' variable.]) + m4_ifval([$2], AC_CHECK_DECLS([$1],[],[],[$2])) +fi +]) + diff --git a/source4/heimdal_build/config.m4 b/source4/heimdal_build/config.m4 index 5eb443cd82..27cc0a3c9a 100644 --- a/source4/heimdal_build/config.m4 +++ b/source4/heimdal_build/config.m4 @@ -1,4 +1,3 @@ - m4_define([upcase],`echo $1 | tr abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ`)dnl dnl love_FIND_FUNC(func, includes, arguments) @@ -165,9 +164,11 @@ if test "$ac_cv_type_signal" = "void" ; then fi AC_SUBST(VOID_RETSIGTYPE) -AC_CHECK_DECL(h_errno, - [AC_DEFINE(HAVE_DECL_H_ERRNO,1,whether h_errno is declared)], [], [ -#ifdef HAVE_SYS_TYPES_H + +sinclude(heimdal/cf/check-var.m4) + +rk_CHECK_VAR(h_errno, +[#ifdef HAVE_SYS_TYPES_H #include <sys/types.h> #endif #ifdef HAVE_NETDB_H |