summaryrefslogtreecommitdiff
path: root/source4/heimdal/cf/check-var.m4
blob: 1f06b479c6cba1f35634ac0bb21e17b8c4c2403f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
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
])

AU_DEFUN([AC_CHECK_VAR], [rk_CHECK_VAR([$2], [$1])], [foo])