From 200af4e84cbf48caa000915d86532e678e84fc46 Mon Sep 17 00:00:00 2001 From: Tim Potter Date: Tue, 24 Jun 2003 05:31:08 +0000 Subject: More sensible behaviour for bug 152. If we don't have krb5.h and were explicitly configured using --with-ads then give an error, otherwise fall back to compiling without ADS. Tested on redhat 8.0 with and without MIT kerberos packages installed. Metze, let me know if this is working OK for you now! (This used to be commit 7ea81535b8180314acbf0873104a8c942ce4ec14) --- source3/configure.in | 46 ++++++++++++++++++++++++++++++++++++---------- 1 file changed, 36 insertions(+), 10 deletions(-) (limited to 'source3/configure.in') diff --git a/source3/configure.in b/source3/configure.in index 3d021b02bf..4d52d493eb 100644 --- a/source3/configure.in +++ b/source3/configure.in @@ -2093,27 +2093,26 @@ AC_ARG_WITH(dfs, ################################################# # active directory support -with_ads_support=yes +with_ads_support=auto AC_MSG_CHECKING([whether to use Active Directory]) AC_ARG_WITH(ads, [ --with-ads Active Directory support (default yes)], [ case "$withval" in - no) - with_ads_support=no + yes|no) + with_ads_support="$withval" ;; esac ]) -if test x"$with_ads_support" = x"yes"; then - AC_DEFINE(WITH_ADS,1,[Whether to include Active Directory support]) -fi - AC_MSG_RESULT($with_ads_support) FOUND_KRB5=no KRB5_LIBS="" -if test x"$with_ads_support" = x"yes"; then +if test x"$with_ads_support" != x"no"; then + + # Do no harm to the values of CFLAGS and LIBS while testing for + # Kerberos support. ac_save_CFLAGS="$CFLAGS" ac_save_LIBS="$LIBS" @@ -2200,9 +2199,35 @@ if test x"$with_ads_support" = x"yes"; then AC_CHECK_HEADERS(krb5.h) if test x"$ac_cv_header_krb5_h" = x"no"; then - AC_MSG_WARN([Active Directory cannot be supported without krb5.h]) + + # Give a warning if AD support was not explicitly requested, + # i.e with_ads_support = auto, otherwise die with an error. + + if test x"$with_ads_support" = x"yes"; then + AC_MSG_ERROR([Active Directory cannot be supported without krb5.h]) + else + AC_MSG_WARN([Active Directory cannot be supported without krb5.h]) + fi + + # Turn off AD support and restore CFLAGS and LIBS variables + + with_ads_support="no" + + CFLAGS="$ac_save_CFLAGS" + LIBS="$ac_save_LIBS" fi + # Get rid of case where $with_ads_support=auto + + with_ads_support="yes" +fi + +# Now we have determined whether we really want ADS support + +if test x"$with_ads_support" = x"yes"; then + + AC_DEFINE(WITH_ADS,1,[Whether to include Active Directory support]) + # now check for gssapi headers. This is also done here to allow for # different kerberos include paths AC_CHECK_HEADERS(gssapi.h gssapi/gssapi_generic.h gssapi/gssapi.h com_err.h) @@ -2337,7 +2362,8 @@ if test x"$with_ads_support" = x"yes"; then [KRB5_LIBS="$KRB5_LIBS -lgssapi_krb5"; AC_DEFINE(HAVE_GSSAPI,1,[Whether GSSAPI is available])]) - LIBS="$ac_save_LIBS"; CFLAGS="$ac_save_CFLAGS" + CFLAGS="$ac_save_CFLAGS" + LIBS="$ac_save_LIBS" fi ######################################################## -- cgit