make openafs 1.5.75
[openafs.git] / configure.in
index 04469dc..9aa231f 100644 (file)
@@ -1,9 +1,11 @@
 AC_PREREQ([2.60])
-AC_INIT(src/config/stds.h)
-AM_INIT_AUTOMAKE(openafs,1.5.74.1)
+AC_INIT([OpenAFS], m4_esyscmd([build-tools/git-version .]))
+AC_CONFIG_SRCDIR([src/config/stds.h])
+AM_INIT_AUTOMAKE
+
 AC_CONFIG_HEADER(src/config/afsconfig.h)
-MACOS_VERSION=1.5.74f1
-LINUX_PKGVER=1.5.74.1
+MACOS_VERSION=1.5.75
+LINUX_PKGVER=1.5.75
 #LINUX_PKGREL=0.pre3
 LINUX_PKGREL=1.1
 
@@ -26,6 +28,55 @@ AC_PATH_PROGS([PATH_CPP], [cpp], [${CC-cc} -E], [$PATH:/lib:/usr/ccs/lib])
 AC_SUBST([PATH_CPP])
 OPENAFS_CONFIGURE_COMMON
 
+dnl Probe for Kerberos.  We have a few platform-specific overrides due to
+dnl weird Kerberos implementations and installation locations.
+AS_CASE([$AFS_SYSNAME],
+    [*_obsd*],
+    [KRB5_CPPFLAGS="-I/usr/include/kerberosV"],
+
+    [ppc_darwin_70],
+    [KRB5_CPPFLAGS="-I/usr/include"
+     KRB5_LDFLAGS="-L/usr/lib -Wl,-search_paths_first"])
+RRA_LIB_KRB5_OPTIONAL
+AS_CASE([$AFS_SYSNAME],
+    [hp_ux*|*_hpux*],
+    [KRB5_LIBS="-l:libkrb5.sl -l:libcom_err.sl"])
+
+dnl Check for the characteristics of whatever Kerberos we found, if we found
+dnl one.
+BUILD_KRB5=no
+MAKE_KRB5="#"
+AS_IF([test x"$KRB5_LIBS" != x],
+    [BUILD_KRB5=yes
+     MAKE_KRB5=
+     RRA_LIB_KRB5_SWITCH
+     AC_CHECK_FUNCS([add_error_table \
+        add_to_error_table \
+        encode_krb5_enc_tkt_part \
+        encode_krb5_ticket \
+        krb5_allow_weak_crypto \
+        krb5_c_encrypt \
+        krb5_decode_ticket \
+        krb5_enctype_enable \
+        krb5_get_init_creds_opt_alloc \
+        krb5_get_prompt_types \
+        krb5_princ_size \
+        krb5_principal_get_comp_string])
+     AC_CHECK_FUNCS([krb5_524_convert_creds], ,
+         [AC_CHECK_FUNCS([krb524_convert_creds_kdc], ,
+             [AC_CHECK_LIB([krb524], [krb524_convert_creds_kdc],
+                 [LIBS="-lkrb524 $LIBS"
+                  KRB5_LIBS="-lkrb524 $KRB5_LIBS"
+                  AC_DEFINE([HAVE_KRB524_CONVERT_CREDS_KDC], 1,
+                     [Define to 1 if you have the `krb524_convert_creds_kdc' function.])])])])
+     AC_CHECK_HEADERS([kerberosIV/krb.h])
+     AC_CHECK_HEADERS([kerberosV/heim_err.h])
+     AC_CHECK_MEMBERS([krb5_creds.keyblock, krb5_creds.session,
+                       krb5_prompt.type], , , [#include <krb5.h>])
+     RRA_LIB_KRB5_RESTORE])
+AC_SUBST([BUILD_KRB5])
+AC_SUBST([MAKE_KRB5])
+
 if test -d 'doc/man-pages' ; then
     MAN_MAKEFILE="doc/man-pages/Makefile doc/man-pages/install-man"
 else
@@ -174,7 +225,10 @@ src/vol/Makefile \
 src/vol/test/Makefile \
 src/volser/Makefile \
 src/xstat/Makefile \
-src/helper-splint.sh,
+src/helper-splint.sh \
+tests/Makefile \
+tests/tap/Makefile \
+tests/util/Makefile,
 
 [chmod a+x src/config/shlib-build
  chmod a+x src/config/shlib-install])