| 1 |
dnl kerberos_v5.m4--Kerberos 5 libraries and includes |
| 2 |
dnl Derrick Brashear |
| 3 |
dnl from KTH krb and Arla |
| 4 |
dnl $Id: heimdal.m4,v 1.6 2002/12/21 18:44:24 cg2v Exp $ |
| 5 |
|
| 6 |
AC_DEFUN(CMU_LIBHEIMDAL_INC_WHERE1, [ |
| 7 |
saved_CPPFLAGS=$CPPFLAGS |
| 8 |
CPPFLAGS="$saved_CPPFLAGS -I$1" |
| 9 |
AC_TRY_COMPILE([#include <krb5.h>], |
| 10 |
[krb5_keyblock foo;], |
| 11 |
ac_cv_found_libheimdal_inc=yes, |
| 12 |
ac_cv_found_libheimdal_inc=no) |
| 13 |
CPPFLAGS=$saved_CPPFLAGS |
| 14 |
]) |
| 15 |
|
| 16 |
AC_DEFUN(CMU_LIBHEIMDAL_INC_WHERE, [ |
| 17 |
for i in $1; do |
| 18 |
AC_MSG_CHECKING(for heimdal headers in $i) |
| 19 |
CMU_LIBHEIMDAL_INC_WHERE1($i) |
| 20 |
CMU_TEST_INCPATH($i, krb5) |
| 21 |
if test "$ac_cv_found_libheimdal_inc" = "yes"; then |
| 22 |
ac_cv_libheimdal_where_inc=$i |
| 23 |
AC_MSG_RESULT(found) |
| 24 |
break |
| 25 |
else |
| 26 |
AC_MSG_RESULT(not found) |
| 27 |
fi |
| 28 |
done |
| 29 |
]) |
| 30 |
|
| 31 |
# |
| 32 |
# Test for kerberos lib files |
| 33 |
# |
| 34 |
|
| 35 |
AC_DEFUN(CMU_LIBHEIMDAL_LIB_WHERE1, [ |
| 36 |
saved_LIBS=$LIBS |
| 37 |
LIBS="$saved_LIBS -L$1 -lkadm5clnt -lkrb5 -lasn1 -lkadm5clnt -lroken -lresolv" |
| 38 |
AC_TRY_LINK(, |
| 39 |
[krb5_get_in_tkt();], |
| 40 |
[ac_cv_found_libheimdal_lib=yes], |
| 41 |
ac_cv_found_libheimdal_lib=no) |
| 42 |
LIBS=$saved_LIBS |
| 43 |
]) |
| 44 |
|
| 45 |
AC_DEFUN(CMU_LIBHEIMDAL_LIB_WHERE, [ |
| 46 |
for i in $1; do |
| 47 |
AC_MSG_CHECKING(for heimdal libraries in $i) |
| 48 |
CMU_LIBHEIMDAL_LIB_WHERE1($i) |
| 49 |
CMU_TEST_LIBPATH($i, krb5) |
| 50 |
if test "$ac_cv_found_libheimdal_lib" = "yes" ; then |
| 51 |
ac_cv_libheimdal_where_lib=$i |
| 52 |
AC_MSG_RESULT(found) |
| 53 |
break |
| 54 |
else |
| 55 |
AC_MSG_RESULT(not found) |
| 56 |
fi |
| 57 |
done |
| 58 |
]) |
| 59 |
|
| 60 |
AC_DEFUN(CMU_LIBHEIMDAL, [ |
| 61 |
AC_REQUIRE([CMU_SOCKETS]) |
| 62 |
AC_REQUIRE([CMU_USE_COMERR]) |
| 63 |
AC_REQUIRE([CMU_LIBSSL]) |
| 64 |
AC_ARG_WITH(LIBHEIMDAL, |
| 65 |
[ --with-libheimdal=PREFIX Compile with Heimdal support], |
| 66 |
[if test "X$with_libheimdal" = "X"; then |
| 67 |
with_libheimdal=yes |
| 68 |
fi]) |
| 69 |
AC_ARG_WITH(libheimdal-lib, |
| 70 |
[ --with-libheimdal-lib=dir use heimdal libraries in dir], |
| 71 |
[if test "$withval" = "yes" -o "$withval" = "no"; then |
| 72 |
AC_MSG_ERROR([No argument for --with-libheimdal-lib]) |
| 73 |
fi]) |
| 74 |
AC_ARG_WITH(libheimdal-include, |
| 75 |
[ --with-libheimdal-include=dir use heimdal headers in dir], |
| 76 |
[if test "$withval" = "yes" -o "$withval" = "no"; then |
| 77 |
AC_MSG_ERROR([No argument for --with-libheimdal-include]) |
| 78 |
fi]) |
| 79 |
|
| 80 |
if test "X$with_libheimdal" != "X"; then |
| 81 |
if test "$with_libheimdal" != "yes" -a "$with_libheimdal" != "no"; then |
| 82 |
ac_cv_libheimdal_where_lib=$with_libheimdal/lib |
| 83 |
ac_cv_libheimdal_where_inc=$with_libheimdal/include |
| 84 |
fi |
| 85 |
fi |
| 86 |
|
| 87 |
if test "$with_libheimdal" != "no"; then |
| 88 |
if test "X$with_libheimdal_lib" != "X"; then |
| 89 |
ac_cv_libheimdal_where_lib=$with_libheimdal_lib |
| 90 |
fi |
| 91 |
if test "X$ac_cv_libheimdal_where_lib" = "X"; then |
| 92 |
CMU_LIBHEIMDAL_LIB_WHERE(/usr/athena/lib /usr/lib /usr/heimdal/lib /usr/local/lib) |
| 93 |
fi |
| 94 |
|
| 95 |
if test "X$with_libheimdal_include" != "X"; then |
| 96 |
ac_cv_libheimdal_where_inc=$with_libheimdal_include |
| 97 |
fi |
| 98 |
if test "X$ac_cv_libheimdal_where_inc" = "X"; then |
| 99 |
CMU_LIBHEIMDAL_INC_WHERE(/usr/athena/include /usr/heimdal/include /usr/local/include) |
| 100 |
fi |
| 101 |
fi |
| 102 |
|
| 103 |
AC_MSG_CHECKING([if libdes is needed]) |
| 104 |
AC_TRY_LINK([],[des_quad_cksum();],HEIM_DES_LIB="",HEIM_DES_LIB="maybe") |
| 105 |
if test "X$HEIM_DES_LIB" != "X"; then |
| 106 |
LIBS="$cmu_save_LIBS -ldes" |
| 107 |
AC_TRY_LINK([], [des_quad_cksum();],HEIM_DES_LIB="yes") |
| 108 |
if test "X$HEIM_DES_LIB" = "Xyes"; then |
| 109 |
AC_MSG_RESULT([yes]) |
| 110 |
HEIM_LIBDES="-ldes" |
| 111 |
HEIM_LIBDESA="${LIBHEIMDAL_LIB_DIR}/libdes.a" |
| 112 |
else |
| 113 |
LIBS="$cmu_save_LIBS $LIBSSL_LIB_FLAGS" |
| 114 |
AC_TRY_LINK([], |
| 115 |
[des_quad_cksum();],HEIM_DES_LIB="libcrypto") |
| 116 |
if test "X$HEIM_DES_LIB" = "Xlibcrypto"; then |
| 117 |
AC_MSG_RESULT([libcrypto]) |
| 118 |
HEIM_LIBDES="$LIBSSL_LIB_FLAGS" |
| 119 |
HEIM_LIBDESA="$LIBSSL_LIB_FLAGS" |
| 120 |
else |
| 121 |
AC_MSG_RESULT([unknown]) |
| 122 |
AC_MSG_ERROR([Could not use -ldes]) |
| 123 |
fi |
| 124 |
fi |
| 125 |
else |
| 126 |
AC_MSG_RESULT([no]) |
| 127 |
fi |
| 128 |
|
| 129 |
AC_MSG_CHECKING(whether to include heimdal) |
| 130 |
if test "X$ac_cv_libheimdal_where_lib" = "X" -a "X$ac_cv_libheimdal_where_inc" = "X"; then |
| 131 |
ac_cv_found_libheimdal=no |
| 132 |
AC_MSG_RESULT(no) |
| 133 |
else |
| 134 |
ac_cv_found_libheimdal=yes |
| 135 |
AC_MSG_RESULT(yes) |
| 136 |
LIBHEIMDAL_INC_DIR=$ac_cv_libheimdal_where_inc |
| 137 |
LIBHEIMDAL_LIB_DIR=$ac_cv_libheimdal_where_lib |
| 138 |
LIBHEIMDAL_INC_FLAGS="-I${LIBHEIMDAL_INC_DIR}" |
| 139 |
LIBHEIMDAL_LIB_FLAGS="-L${LIBHEIMDAL_LIB_DIR} -lkadm5clnt -lkrb5 -lasn1 ${HEIM_LIBDES} -lroken -lresolv" |
| 140 |
AC_SUBST(LIBHEIMDAL_INC_FLAGS) |
| 141 |
AC_SUBST(LIBHEIMDAL_LIB_FLAGS) |
| 142 |
if test "X$RPATH" = "X"; then |
| 143 |
RPATH="" |
| 144 |
fi |
| 145 |
case "${host}" in |
| 146 |
*-*-linux*) |
| 147 |
if test "X$RPATH" = "X"; then |
| 148 |
RPATH="-Wl,-rpath,${LIBHEIMDAL_LIB_DIR}" |
| 149 |
else |
| 150 |
RPATH="${RPATH}:${LIBHEIMDAL_LIB_DIR}" |
| 151 |
fi |
| 152 |
;; |
| 153 |
*-*-hpux*) |
| 154 |
if test "X$RPATH" = "X"; then |
| 155 |
RPATH="-Wl,+b${LIBHEIMDAL_LIB_DIR}" |
| 156 |
else |
| 157 |
RPATH="${RPATH}:${LIBHEIMDAL_LIB_DIR}" |
| 158 |
fi |
| 159 |
;; |
| 160 |
*-*-irix*) |
| 161 |
if test "X$RPATH" = "X"; then |
| 162 |
RPATH="-Wl,-rpath,${LIBHEIMDAL_LIB_DIR}" |
| 163 |
else |
| 164 |
RPATH="${RPATH}:${LIBHEIMDAL_LIB_DIR}" |
| 165 |
fi |
| 166 |
;; |
| 167 |
*-*-solaris2*) |
| 168 |
if test "$ac_cv_prog_gcc" = yes; then |
| 169 |
if test "X$RPATH" = "X"; then |
| 170 |
RPATH="-Wl,-R${LIBHEIMDAL_LIB_DIR}" |
| 171 |
else |
| 172 |
RPATH="${RPATH}:${LIBHEIMDAL_LIB_DIR}" |
| 173 |
fi |
| 174 |
else |
| 175 |
RPATH="${RPATH} -R${LIBHEIMDAL_LIB_DIR}" |
| 176 |
fi |
| 177 |
;; |
| 178 |
esac |
| 179 |
AC_SUBST(RPATH) |
| 180 |
fi |
| 181 |
]) |