summaryrefslogtreecommitdiff
path: root/configure.in
diff options
context:
space:
mode:
Diffstat (limited to 'configure.in')
-rw-r--r--configure.in68
1 files changed, 57 insertions, 11 deletions
diff --git a/configure.in b/configure.in
index 183f0e9..b84452f 100644
--- a/configure.in
+++ b/configure.in
@@ -68,17 +68,13 @@ AC_DEFINE_UNQUOTED(ZEPHYR_INT32, ${int32})
AC_MSG_RESULT(${int32})
AC_CHECK_LIB(w, wslen)
-AC_CHECK_LIB(dl, dlopen)
+# XXX? AC_CHECK_LIB(dl, dlopen)
AC_SEARCH_LIBS(gethostbyname, nsl)
AC_SEARCH_LIBS(socket, socket)
-# Hesiod needs -lresolv on Sun systems for res_send.
-if test "$hesiod" != "no"; then
- AC_CHECK_LIB(44bsd, strerror)
- AC_CHECK_LIB(resolv, res_send)
- AC_CHECK_LIB(resolv, __res_send)
-fi
+AC_CHECK_LIB(44bsd, strerror)
+
AC_CHECK_LIB(curses, tgetstr, [TLIB=-lcurses], [TLIB=-ltermcap])
AC_CHECK_LIB(src, srcsrpy, [SLIB=-lsrc; AC_DEFINE(HAVE_SRC)])
@@ -86,7 +82,31 @@ AC_SUBST(TLIB)
AC_SUBST(RLIB)
AC_SUBST(SLIB)
-ATHENA_KRB4
+AC_ARG_WITH(krb4,
+ [ --with-krb4=PREFIX Use Kerberos 4],
+ [krb4="$withval"], [krb4=no])
+if test "$krb4" != no; then
+ AC_CHECK_FUNC(gethostbyname, :, AC_CHECK_LIB(nsl, gethostbyname))
+ AC_CHECK_FUNC(socket, :, AC_CHECK_LIB(socket, socket))
+ AC_CHECK_LIB(gen, compile)
+ if test "$krb4" != yes; then
+ CPPFLAGS="$CPPFLAGS -I$krb4/include"
+ if test -d "$krb4/include/kerberosIV"; then
+ CPPFLAGS="$CPPFLAGS -I$krb4/include/kerberosIV"
+ fi
+ LDFLAGS="$LDFLAGS -L$krb4/lib"
+ fi
+ AC_CHECK_LIB(krb4, krb_rd_req,
+ [KRB4_LIBS="-lkrb4 -ldes425 -lkrb5 -lk5crypto -lcom_err"],
+ [AC_CHECK_LIB(krb, krb_rd_req,
+ [KRB4_LIBS="-lkrb -ldes"],
+ [AC_MSG_ERROR(Kerberos 4 libraries not found)],
+ -ldes)],
+ -ldes425 -lkrb5 -lk5crypto -lcom_err)
+ AC_DEFINE(HAVE_KRB4)
+ LIBZEPHYR_LIBS="$LIBZEPHYR_LIBS $KRB4_LIBS"
+fi
+AC_SUBST(KRB4_LIBS)
AC_ARG_WITH(krb5,
[ --with-krb5=PREFIX Use Kerberos 5],
@@ -113,20 +133,46 @@ if test "$krb5" != no; then
KRB5_LIBS="-lkrb5 -lk5crypto -lcom_err"
fi
AC_DEFINE(HAVE_KRB5)
+ LIBZEPHYR_LIBS="$LIBZEPHYR_LIBS $KRB5_LIBS"
+ # the zephyr library needs -lresolv if it's built with krb5
+ AC_CHECK_LIB(resolv, res_send, LIBZEPHYR_LIBS="-lresolv $LIBZEPHYR_LIBS",
+ AC_CHECK_LIB(resolv, __res_send, LIBZEPHYR_LIBS="-lresolv $LIBZEPHYR_LIBS",
+ AC_MSG_ERROR(Zephyr requires libresolv along with Kerberos V.)))
case "$target_os" in
darwin*) KRB5_LIBS="$KRB5_LIBS -framework Kerberos" ;;
esac
fi
AC_SUBST(KRB5_LIBS)
+AC_SUBST(LIBZEPHYR_LIBS)
+
ATHENA_HESIOD
ATHENA_REGEXP
ATHENA_UTIL_COM_ERR
-ATHENA_UTIL_SS
-LIBS="$KRB5_LIBS $KRB4_LIBS $HESIOD_LIBS $LIBS"
+
+AC_ARG_WITH(ss,
+ [ --with-ss=PREFIX Specify location of ss (requires com_err)],
+ [ss="$withval"], [ss=yes])
+if test "$ss" != no; then
+ if test "$ss" != yes; then
+ CPPFLAGS="$CPPFLAGS -I$ss/include"
+ LDFLAGS="$LDFLAGS -L$ss/lib"
+ fi
+ #XXX
+ #AC_CHECK_LIB(curses, initscr)
+ #AC_CHECK_LIB(readline, readline)
+ AC_CHECK_LIB(ss, ss_perror, SS_LIBS=-lss,
+ [AC_MSG_ERROR(ss library not found)], -lcom_err)
+ AC_SUBST(SS_LIBS)
+else
+ AC_MSG_ERROR(This package requires ss.)
+fi
+
+LIBS="$KRB5_LIBS $KRB4_LIBS $LIBS"
dnl Checks for library functions.
-AC_CHECK_FUNC(res_send, :, AC_CHECK_LIB(resolv, res_send))
+#XXX more looking for res_send
+#AC_CHECK_FUNC(res_send, :, AC_CHECK_LIB(resolv, res_send))
AC_CHECK_LIB(cares, ares_getaddrinfo,
[ARES_LIBS="-lcares"
AC_DEFINE(HAVE_ARES)],