X-Git-Url: http://git.marmaro.de/?a=blobdiff_plain;ds=inline;f=configure.in;h=f029fd65dfa7416e0474243aecabab99154c1e88;hb=ec751d9bbebd843215896b299712728eed0ea76c;hp=6d5764240b68a7e60ce6e1e2ab1351537da7625e;hpb=cfc525a9b85207225cb4071d1d3b01e8d1db2424;p=mmh
diff --git a/configure.in b/configure.in
index 6d57642..f029fd6 100644
--- a/configure.in
+++ b/configure.in
@@ -14,11 +14,13 @@ dnl define a macro or two
dnl ---------------------
AC_DEFUN(NMH_PROG_GNU_LIBTOOL, [
+if test -n "$LIBTOOL" ; then
tmptest=`$LIBTOOL --version 2>&1 | grep GNU`
if test x"$tmptest" != x ; then
GNU_LIBTOOL=1
AC_SUBST(GNU_LIBTOOL)dnl
fi
+fi
] )
@@ -27,6 +29,11 @@ VERSION=`sed -e 's/nmh-//' ${srcdir}/VERSION`
echo "configuring for nmh-$VERSION"
AC_SUBST(VERSION)dnl
+dnl What date of nmh are we building?
+DATE=`cat ${srcdir}/DATE`
+echo "configuring for nmh dated $DATE"
+AC_SUBST(DATE)dnl
+
dnl --------------------------
dnl CHECK COMMAND LINE OPTIONS
dnl --------------------------
@@ -42,7 +49,6 @@ fi
AC_SUBST(APOPLIB)dnl
dnl Do you want to debug nmh?
-undefine([debug])dnl
AC_ARG_ENABLE(debug,
[ --enable-debug enable nmh code debugging])
dnl The old redundant --enable-nmh-debug is deprecated and undocumented.
@@ -51,7 +57,6 @@ if test x"$enable_nmh_debug" = x"yes"; then
fi
dnl Allow users to send email from addresses other than their default?
-undefine([masquerade])dnl
AC_ARG_ENABLE(masquerade,
[ --enable-masquerade[='draft_from mmailid username_extension']
enable up to 3 types of address masquerading [none]],
@@ -63,7 +68,6 @@ AC_ARG_ENABLE(masquerade,
AC_SUBST(masquerade)dnl
dnl Do you want mhe support?
-undefine([mhe])dnl
AC_ARG_ENABLE(mhe,
[ --enable-mhe enable mhe support (DEFAULT)])
@@ -74,7 +78,6 @@ if test x"$enable_mhe" != x"no" -a x"$enable_nmh_mhe" != x"no"; then
fi
dnl Do you want client-side support for pop?
-undefine([pop])dnl
AC_ARG_ENABLE(pop,
[ --enable-pop enable client-side support for plain POP3])
dnl The old redundant --enable-nmh-pop is deprecated and undocumented.
@@ -82,6 +85,35 @@ if test x"$enable_nmh_pop" = x"yes"; then
enable_pop=yes
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=
Specify location of Cyrus SASL library for auth])
+if test x"$with_cyrus_sasl" != x -a x"$with_cyrus_sasl" != x"no"; then
+ AC_DEFINE(CYRUS_SASL)dnl
+ sasl_support=yes
+else
+ sasl_support=no
+fi
+
+dnl What should be the default editor?
+AC_ARG_WITH(editor,
+[ --with-editor=EDITOR specify the default editor])
+
+if test -n "$with_editor"; then
+ editorpath="$with_editor"
+fi
+
+dnl Set the backup prefix
+AC_ARG_WITH([hash-backup],
+ [ --with-hash-backup use # as the backup prefix (default: ,)])
+if test x"$with_hash_backup" != x -a x"$with_hash_backup" != x"no"; then
+ backup_prefix="#"
+else
+ backup_prefix=","
+fi
+AC_DEFINE_UNQUOTED(BACKUP_PREFIX, "$backup_prefix")dnl
+
dnl Do you want support for hesiod
AC_ARG_WITH(hesiod,
[ --with-hesiod=PREFIX specify location of Hesiod])
@@ -109,25 +141,29 @@ fi
AC_SUBST(POPLIB)dnl
AC_SUBST(POPSED)dnl
-dnl What should be the default editor?
-undefine([editor])dnl
-AC_ARG_WITH(editor,
-[ --with-editor=EDITOR specify the default editor])
-
-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= 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
+dnl What method of locking to use?
+AC_ARG_WITH(locking,
+[ --with-locking=LOCKTYPE specify the file locking method
+ (one of dot, fcntl, flock, lockf)])
+
+if test x"$with_locking" = x"dot"; then
+ LOCKTYPE="dot"
+ AC_DEFINE(DOT_LOCKING)dnl
+elif test x"$with_locking" = x"flock"; then
+ LOCKTYPE="flock"
+ AC_DEFINE(FLOCK_LOCKING)dnl
+elif test x"$with_locking" = x"lockf"; then
+ LOCKTYPE="lockf"
+ AC_DEFINE(LOCKF_LOCKING)dnl
+elif test x"$with_locking" = x"fcntl"; then
+ LOCKTYPE="fcntl"
+ AC_DEFINE(FCNTL_LOCKING)dnl
+else
+ LOCKTYPE="dot"
+ AC_DEFINE(DOT_LOCKING)dnl
fi
dnl What method of posting should post use?
-undefine([mts])dnl
AC_ARG_WITH(mts,
[ --with-mts=MTS specify the default mail transport agent/service])
@@ -144,7 +180,6 @@ 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
AC_ARG_WITH(pager,
[ --with-pager=PAGER specify the default pager])
@@ -153,7 +188,6 @@ if test -n "$with_pager"; then
fi
dnl What should be the default mail server(s)?
-undefine([smtpservers])dnl
AC_ARG_WITH(smtpservers,
[ --with-smtpservers='SMTPSERVER1[ SMTPSERVER2...]'
specify the default SMTP server(s) [localhost]])
@@ -193,7 +227,16 @@ if test -n "$auto_cflags"; then
test -z "$CFLAGS" && CFLAGS=-g || CFLAGS="$CFLAGS -g"
fi
else
- test -z "$LDFLAGS" && LDFLAGS=-s
+ if test -z "$LDFLAGS"; then
+ case "$build_os" in
+ darwin*)
+ LDFLAGS=
+ ;;
+ *)
+ LDFLAGS=-s
+ ;;
+ esac
+ fi
if test -n "$GCC"; then
test -z "$CFLAGS" && CFLAGS="-Wall -O2" || CFLAGS="$CFLAGS -Wall -O2"
else
@@ -234,8 +277,8 @@ else
LINTFLAGS=""
fi
fi
-AC_SUBST(LINT)
-AC_SUBST(LINTFLAGS)
+AC_SUBST(LINT)dnl
+AC_SUBST(LINTFLAGS)dnl
dnl try to figure out which one we've got
AC_CHECK_PROG(LIBTOOL, libtool, libtool, , [$pathtmp])
@@ -321,7 +364,7 @@ AC_SUBST(editorpath)dnl
dnl Check for broken vi
AC_CACHE_CHECK(for broken vi, nmh_cv_attvibug,
[if echo 'r /nonexist-file
-q' | ex > /dev/null 2>&1
+q' | ex > /dev/null
then
nmh_cv_attvibug=no
else
@@ -434,7 +477,7 @@ if test $nmh_cv_header_termios_h_tiocgwinsz = no; then
nmh_cv_header_sys_ioctl_h_tiocgwinsz=yes,
nmh_cv_header_sys_ioctl_h_tiocgwinsz=no)])
if test $nmh_cv_header_sys_ioctl_h_tiocgwinsz = yes; then
- AC_DEFINE(GWINSZ_IN_SYS_IOCTL)
+ AC_DEFINE(GWINSZ_IN_SYS_IOCTL)dnl
fi
fi
@@ -510,12 +553,15 @@ dnl --------------
dnl Checks for ndbm
AC_CHECK_FUNC(dbm_open, ,
AC_CHECK_LIB(ndbm, dbm_open, ,
- AC_CHECK_LIB(dbm, dbm_open)))
+ AC_CHECK_LIB(dbm, dbm_open, ,
+ AC_CHECK_LIB(db1, dbm_open, ,
+ AC_CHECK_LIB(gdbm, dbm_open)))))
dnl ----------------
dnl CHECK FOR NDBM.H
dnl ----------------
-AC_CHECK_HEADERS(db1/ndbm.h)
+
+AC_CHECK_HEADERS(db1/ndbm.h gdbm/ndbm.h, break, )
dnl ----------------
dnl CHECK FOR HESIOD
@@ -525,10 +571,16 @@ if test x"$with_hesiod" != x -a x"$with_hesiod" != x"no"; then
HESIOD_INCLUDES="-I$with_hesiod/include"
HESIOD_LIBS="-L$with_hesiod/lib"
fi
- AC_CHECK_FUNC(res_send, ,
- AC_CHECK_LIB(resolv, res_send))
- AC_CHECK_LIB(hesiod, hes_resolve, [HESIOD_LIBS="$HESIOD_LIBS -lhesiod"],
- [AC_MSG_ERROR(Hesiod library not found)], $HESIOD_LIBS)
+ AC_CHECK_FUNC(res_send,
+ [AC_CHECK_LIB(hesiod, hes_resolve,
+ [HESIOD_LIBS="$HESIOD_LIBS -lhesiod"],
+ [AC_MSG_ERROR(Hesiod library not found)],
+ $HESIOD_LIBS)],
+ [AC_CHECK_LIB(hesiod, hes_resolve,
+ [HESIOD_LIBS="$HESIOD_LIBS -lhesiod -lresolv"],
+ [AC_MSG_ERROR(Hesiod library not found)],
+ $HESIOD_LIBS -lresolv)])
+
fi
AC_SUBST(HESIOD_INCLUDES)dnl
AC_SUBST(HESIOD_LIBS)dnl
@@ -546,13 +598,23 @@ if test x"$with_krb4" != x -a x"$with_krb4" != x"no"; then
elif test -d /usr/include/kerberosIV; then
KRB4_INCLUDES="-I/usr/include/kerberosIV"
fi
- AC_CHECK_LIB(krb4, krb_rd_req,
- [KRB4_LIBS="$KRB4_LIBS -lkrb4 -ldes425 -lkrb5 -lcrypto -lcom_err"],
- [AC_CHECK_LIB(krb, krb_rd_req,
- [KRB4_LIBS="$KRB4_LIBS -lkrb -ldes"],
- [AC_MSG_ERROR(Kerberos 4 libraries not found)],
- $KRB4_LIBS -ldes)],
- $KRB4_LIBS -ldes425 -lkrb5 -lcrypto -lcom_err)
+dnl First, check if we have -lk5crypto, since that means we have a recent krb5
+
+ AC_CHECK_LIB(k5crypto, krb5_encrypt,
+ [AC_CHECK_LIB(krb4, krb_rd_req,
+ [KRB4_LIBS="$KRB4_LIBS -lkrb4 -ldes425 -lkrb5 -lk5crypto -lcom_err"],
+ [AC_MSG_ERROR(Kerberos 4 compatibility libraries not found)],
+ $KRB4_LIBS -ldes425 -lkrb5 -lk5crypto -lcom_err)],
+
+ [AC_CHECK_LIB(krb4, krb_rd_req,
+ [KRB4_LIBS="$KRB4_LIBS -lkrb4 -ldes425 -lkrb5 -lcrypto -lcom_err"],
+ [AC_CHECK_LIB(krb, krb_rd_req,
+ [KRB4_LIBS="$KRB4_LIBS -lkrb -ldes"],
+ [AC_MSG_ERROR(Kerberos 4 libraries not found)],
+ $KRB4_LIBS -ldes)],
+ $KRB4_LIBS -ldes425 -lkrb5 -lcrypto -lcom_err)],
+ $KRB4_LIBS)
+
fi
AC_SUBST(KRB4_INCLUDES)dnl
AC_SUBST(KRB4_LIBS)dnl
@@ -560,10 +622,19 @@ 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 -a x"$with_cyrus_sasl" != x"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"
+
+ dnl Do OS-specific hardcoding of SASL shared library path into executables,
+ dnl so user isn't forced to set environment variables like Solaris'
+ dnl LD_LIBRARY_PATH.
+ case "$target_os" in
+ solaris*)
+ SASL_LIBS="$SASL_LIBS -R$with_cyrus_sasl/lib"
+ ;;
+ esac
fi
save_LDFLAGS="$LDFLAGS"
LDFLAGS="$LDFLAGS $SASL_LIBS"
@@ -607,7 +678,7 @@ if test $nmh_cv_decl_ospeed_include_defines = no; then
fi
if test $nmh_cv_decl_ospeed_include_defines = yes; then
- AC_DEFINE(HAVE_OSPEED)
+ AC_DEFINE(HAVE_OSPEED)dnl
elif test $nmh_cv_decl_ospeed_must_define = yes; then
AC_DEFINE(HAVE_OSPEED)
AC_DEFINE(MUST_DEFINE_OSPEED)
@@ -766,10 +837,8 @@ dnl ----------------
dnl OUTPUT MAKEFILES
dnl ----------------
AC_OUTPUT(Makefile config/Makefile h/Makefile sbr/Makefile uip/Makefile \
- zotnet/Makefile zotnet/mts/Makefile \
mts/Makefile mts/smtp/Makefile \
- mts/sendmail/Makefile mts/mmdf/Makefile etc/Makefile \
- docs/Makefile man/Makefile, \
+ etc/Makefile docs/Makefile man/Makefile, \
[test -z "$CONFIG_HEADERS" || echo > stamp-h])
dnl Umm, what's the point of these assignments?? --
@@ -806,13 +875,13 @@ binary install path : ${nmhbin2}
libary install path : ${nmhlib2}
config files install path : ${nmhsysconf2}
man page install path : ${nmhman}
+backup prefix : ${backup_prefix}
transport system : ${MTS}
+file locking type : ${LOCKTYPE}
default smtp servers : ${smtpservers}
default editor : ${editorpath}
default pager : ${pagerpath}
email address masquerading : ${masquerade}
-pop is enabled : ${pop_kinds}"
+pop is enabled : ${pop_kinds}
+SASL support : ${sasl_support}"
echo ""
-
-
-