SASL support from Ken Hornstein <kenh@cmf.nrl.navy.mil>.
[mmh] / configure.in
index d3f2c08..6d57642 100644 (file)
@@ -118,27 +118,30 @@ if test -n "$with_editor"; then
   editorpath="$with_editor"
 fi
 
+dnl Do you want client-side support for using SASL for authentication?
+dnl Note that this code will be enabled for both POP and SMTP
+AC_ARG_WITH(cyrus-sasl,
+[  --with-cyrus-sasl=<dir> Specify location of Cyrus SASL library for auth])
+if test x"$with_cyrus_sasl" != x -a x"$with_cyrus_sasl" != "no"; then
+  AC_DEFINE(CYRUS_SASL)dnl
+fi
+
 dnl What method of posting should post use?
 undefine([mts])dnl
 AC_ARG_WITH(mts,
-[  --with-mts=MTS          specify the mail transport agent/service])
+[  --with-mts=MTS          specify the default mail transport agent/service])
 
 if test x"$with_mts" = x"smtp"; then
   MTS="smtp"
-  MTSLIB="mts/smtp/libsmtp.a"
-  AC_DEFINE(SMTPMTS)dnl
 elif test x"$with_mts" = x"sendmail"; then
   MTS="sendmail"
-  MTSLIB="mts/sendmail/libsend.a"
-  AC_DEFINE(SENDMTS)dnl
 else
   MTS="smtp"
-  MTSLIB="mts/smtp/libsmtp.a"
-  AC_DEFINE(SMTPMTS)dnl
 fi
-
 AC_SUBST(MTS)dnl
-AC_SUBST(MTSLIB)dnl
+
+dnl Both the smtp and sendmail mail transport services use the smtp code
+AC_DEFINE(SMTPMTS)dnl
 
 dnl What should be the default pager?
 undefine([pager])dnl
@@ -256,6 +259,20 @@ dnl   AC_SUBST(LORDER)dnl
 dnl   AC_SUBST(TSORT)dnl
 fi
 
+dnl Check whether tsort can deal with loops
+AC_CACHE_CHECK(whether tsort can deal with loops, nmh_cv_tsort_loop,
+  [if test -z "`echo a b b a | tsort 2>/dev/null | grep a`" ; then
+    nmh_cv_tsort_loop=no
+  else
+    nmh_cv_tsort_loop=yes
+  fi])
+if test x$nmh_cv_tsort_loop = xno ; then
+  LORDER=echo
+  TSORT=cat
+  AC_SUBST(LORDER)dnl
+  AC_SUBST(TSORT)dnl
+fi
+
 dnl Look for `ls'
 pathtmp=/usr/bin:/bin:/usr/local/bin:/usr/xpg4/bin:/usr/ucb
 AC_PATH_PROG(lspath, ls, no, [$pathtmp])
@@ -540,6 +557,24 @@ fi
 AC_SUBST(KRB4_INCLUDES)dnl
 AC_SUBST(KRB4_LIBS)dnl
 
+dnl --------------------
+dnl CHECK FOR CYRUS SASL
+dnl --------------------
+if test x"$with_cyrus_sasl" != x -a x"$with_cyrus_sasl" != "no"; then
+  if test x"$with_cyrus_sasl" != x"yes"; then
+    SASL_INCLUDES="-I$with_cyrus_sasl/include"
+    SASL_LIBS="-L$with_cyrus_sasl/lib"
+  fi
+  save_LDFLAGS="$LDFLAGS"
+  LDFLAGS="$LDFLAGS $SASL_LIBS"
+  AC_CHECK_LIB(sasl, sasl_client_new,
+    [SASL_LIBS="$SASL_LIBS -lsasl"],
+    [AC_MSG_ERROR(Cyrus SASL library not found)])
+  LDFLAGS="$save_LDFLAGS"
+fi
+AC_SUBST(SASL_INCLUDES)dnl
+AC_SUBST(SASL_LIBS)dnl
+
 dnl ---------------------
 dnl CHECK TERMCAP LIBRARY
 dnl ---------------------