diff options
author | Stefan Metzmacher <metze@samba.org> | 2006-10-11 09:46:19 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 12:15:24 -0500 |
commit | 6c1eaffd2e16d6a7041bb462c1d9b90177219ec0 (patch) | |
tree | a05d55023976a997e8865312b0133f0145bec4fe | |
parent | bbefb74bca851ebdc9679d9c95494236b66ebccf (diff) | |
download | samba-6c1eaffd2e16d6a7041bb462c1d9b90177219ec0.tar.gz samba-6c1eaffd2e16d6a7041bb462c1d9b90177219ec0.tar.bz2 samba-6c1eaffd2e16d6a7041bb462c1d9b90177219ec0.zip |
r19238: Let the comfigure check find that some krb5 functions
are missing! Bailing out at compile time is ugly.
Hopefully this fixes the Mac OS 10 boxes in the build-farm
there're some missing function. Fixing that is a different
problem...
metze
(This used to be commit e00a83a0b65f4685b946aa9a4d225645f67a6df6)
-rw-r--r-- | source3/configure.in | 87 |
1 files changed, 71 insertions, 16 deletions
diff --git a/source3/configure.in b/source3/configure.in index 327934d17f..d7c7ba7bed 100644 --- a/source3/configure.in +++ b/source3/configure.in @@ -3373,8 +3373,9 @@ if test x"$with_ads_support" != x"no"; then fi # Now we have determined whether we really want ADS support - +use_ads=no if test x"$with_ads_support" != x"no"; then + use_ads=yes ac_save_LIBS=$LIBS # now check for gssapi headers. This is also done here to allow for @@ -3714,21 +3715,6 @@ if test x"$with_ads_support" != x"no"; then [Whether the krb5_address struct has a magic property]) fi - if test x"$ac_cv_lib_ext_krb5_krb5_mk_req_extended" = x"yes"; then - AC_DEFINE(HAVE_KRB5,1,[Whether to have KRB5 support]) - AC_DEFINE(WITH_ADS,1,[Whether to include Active Directory support]) - AC_MSG_CHECKING(whether Active Directory and krb5 support is used) - AC_MSG_RESULT(yes) - else - if test x"$with_ads_support" = x"yes"; then - AC_MSG_ERROR(libkrb5 is needed for Active Directory support) - else - AC_MSG_WARN(libkrb5 is needed for Active Directory support) - fi - KRB5_LIBS="" - with_ads_support=no - fi - AC_CACHE_CHECK([for WRFILE: keytab support], samba_cv_HAVE_WRFILE_KEYTAB,[ AC_TRY_RUN([ @@ -3776,6 +3762,75 @@ if test x"$with_ads_support" != x"no"; then [Whether the type krb5_addresses type exists]) fi + # + # + # Now the decisions whether we can support krb5 + # + # NOTE: all tests should be done before this block! + # + # + if test x"$ac_cv_lib_ext_krb5_krb5_mk_req_extended" != x"yes"; then + AC_MSG_WARN(krb5_mk_req_extended not found in -lkrb5) + use_ads=no + fi + + if test x"$ac_cv_func_ext_krb5_principal2salt" != x"yes" -a \ + x"$ac_cv_func_ext_krb5_get_pw_salt" != x"yes" + then + AC_MSG_WARN(no CREATE_KEY_FUNCTIONS detected) + use_ads=no + fi + + if test x"$ac_cv_func_ext_krb5_get_permitted_enctypes" != x"yes" -a \ + x"$ac_cv_func_ext_krb5_get_default_in_tkt_etypes" != x"yes" + then + AC_MSG_WARN(no GET_ENCTYPES_FUNCTIONS detected) + use_ads=no + fi + + if test x"$ac_cv_func_ext_krb5_kt_free_entry" != x"yes" -a \ + x"$ac_cv_func_ext_krb5_free_keytab_entry_contents" != x"yes" + then + AC_MSG_WARN(no KT_FREE_FUNCTION detected) + use_ads=no + fi + + if test x"$ac_cv_func_ext_krb5_c_verify_checksum" != x"yes" -a \ + x"$ac_cv_func_ext_krb5_verify_checksum" != x"yes" + then + AC_MSG_WARN(no KRB5_VERIFY_CHECKSUM_FUNCTION detected) + use_ads=no + fi + + if test x"$ac_cv_func_ext_krb5_free_ap_req" != x"yes" -a \ + x"$ac_cv_func_ext_free_AP_REQ" != x"yes" + then + AC_MSG_WARN(no KRB5_AP_REQ_FREE_FUNCTION detected) + use_ads=no + fi + + if test x"$ac_cv_func_ext_krb5_decode_ap_req" != x"yes" -a \ + x"$ac_cv_func_ext_decode_krb5_ap_req" != x"yes" + then + AC_MSG_WARN(no KRB5_AP_REQ_DECODING_FUNCTION detected) + use_ads=no + fi + + if test x"$use_ads" = x"yes"; then + AC_DEFINE(HAVE_KRB5,1,[Whether to have KRB5 support]) + AC_DEFINE(WITH_ADS,1,[Whether to include Active Directory support]) + else + if test x"$with_ads_support" = x"yes"; then + AC_MSG_ERROR(krb5 libs don't have all features required for Active Directory support) + else + AC_MSG_WARN(krb5 libs don't have all features required for Active Directory support) + fi + KRB5_LIBS="" + with_ads_support=no + fi + AC_MSG_CHECKING(whether Active Directory and krb5 support is used) + AC_MSG_RESULT([$use_ads]) + LIBS="$ac_save_LIBS" fi |