dnl EVO_KRB5_SUPPORT(default) dnl Add --with-krb5, --with-krb5-libs and --with-krb5-include options. dnl --with-krb5 defaults to the given value if not specified. #serial 0.2 AC_DEFUN([EVO_KRB5_SUPPORT],[ dnl ****************************** dnl Kerberos dnl ****************************** default="$1" AC_ARG_WITH([krb5], AS_HELP_STRING([--with-krb5=PATH], [Location of Kerberos 5 install dir])) AC_ARG_WITH([krb5-libs], AS_HELP_STRING([--with-krb5-libs=PATH], [Location of Kerberos 5 libraries])) AC_ARG_WITH([krb5-includes], AS_HELP_STRING([--with-krb5-includes=PATH], [Location of Kerberos 5 headers])) dnl ****************************** dnl Kerberos 5 dnl ****************************** msg_krb5="no" AC_MSG_CHECKING([for Kerberos 5]) with_krb5="${with_krb5:=$default}" case $with_krb5 in no|"") with_krb5=no ;; yes) with_krb5=/usr ;; *) with_krb5=$with_krb5 ;; esac if test "x${with_krb5}" != "xno"; then LIBS_save="$LIBS" case $with_krb5_libs in yes|no|"") with_krb5_libs=$with_krb5/lib ;; *) with_krb5_libs=$with_krb5_libs ;; esac case $with_krb5_includes in yes|no|"") with_krb5_includes=$with_krb5/include ;; *) with_krb5_includes=$with_krb5_includes ;; esac mitlibs="-lkrb5 -lk5crypto -lcom_err -lgssapi_krb5" heimlibs="-lkrb5 -lcrypto -lasn1 -lcom_err -lroken -lgssapi" sunlibs="-lkrb5 -lgss" AC_CACHE_VAL([ac_cv_lib_kerberos5], [ LIBS="$LIBS -L$with_krb5_libs $mitlibs" AC_LINK_IFELSE([AC_LANG_CALL([], [krb5_init_context])], [ac_cv_lib_kerberos5="$mitlibs"], [ LIBS="$LIBS_save -L$with_krb5_libs $heimlibs" AC_LINK_IFELSE([AC_LANG_CALL([], [krb5_init_context])], [ac_cv_lib_kerberos5="$heimlibs"], [ LIBS="$LIBS_save -L$with_krb5_libs $sunlibs" AC_LINK_IFELSE([AC_LANG_CALL([], [krb5_init_context])], [ac_cv_lib_kerberos5="$sunlibs"], [ac_cv_lib_kerberos5="no"]) ]) ]) LIBS="$LIBS_save" ]) if test "$ac_cv_lib_kerberos5" != "no"; then AC_DEFINE(HAVE_KRB5,1,[Define if you have Krb5]) if test "$ac_cv_lib_kerberos5" = "$mitlibs"; then AC_DEFINE(HAVE_MIT_KRB5,1,[Define if you have MIT Krb5]) if test -z "$with_krb5_includes"; then KRB5_CFLAGS="-I$with_krb5/include" else KRB5_CFLAGS="-I$with_krb5_includes" fi msg_krb5="yes (MIT)" else if test "$ac_cv_lib_kerberos5" = "$heimlibs"; then AC_DEFINE(HAVE_HEIMDAL_KRB5,1,[Define if you have Heimdal]) if test -z "$with_krb5_includes"; then KRB5_CFLAGS="-I$with_krb5/include/heimdal" else KRB5_CFLAGS="-I$with_krb5_includes" fi msg_krb5="yes (Heimdal)" else AC_DEFINE(HAVE_SUN_KRB5,1,[Define if you have Sun Kerberosv5]) if test -z "$with_krb5_includes"; then KRB5_CFLAGS="-I$with_krb5/include/kerberosv5" else KRB5_CFLAGS="-I$with_krb5_includes" fi msg_krb5="yes (Sun)" fi fi KRB5_LIBS="-L$with_krb5_libs $ac_cv_lib_kerberos5" else AC_MSG_ERROR([You specified with krb5, but it was not found.]) fi else msg_krb5="no" fi AC_MSG_RESULT([$msg_krb5]) AM_CONDITIONAL(ENABLE_KRB5, [test "x$with_krb5" != "xno"]) AC_CHECK_HEADER([et/com_err.h], [AC_DEFINE([HAVE_ET_COM_ERR_H], 1, [Have ])],, [[ #if HAVE_ET_COM_ERR_H #include #endif ]]) AC_CHECK_HEADER([com_err.h], [AC_DEFINE([HAVE_COM_ERR_H], 1, [Have ])],, [[ #if HAVE_COM_ERR_H #include #endif ]]) AC_SUBST(KRB5_CFLAGS) AC_SUBST(KRB5_LIBS) ])