X-Git-Url: http://git.marmaro.de/?p=mmh;a=blobdiff_plain;f=configure.in;h=85e5181bc457124c03c5a0cefde88333254fc1f8;hp=d80a2d2e538399ec96308a629690d653900b621a;hb=99e5043db7ee6cf80f93708610a6e584a8068c6a;hpb=6c381309884f3bf4e5ce90ea632509d615bdc3e4 diff --git a/configure.in b/configure.in index d80a2d2..85e5181 100644 --- a/configure.in +++ b/configure.in @@ -29,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 -------------------------- @@ -44,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. @@ -52,19 +56,7 @@ if test x"$enable_nmh_debug" = x"yes"; then enable_debug=yes fi -dnl Set the backup prefix -undefine([backup-prefix])dnl -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 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]], @@ -76,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)]) @@ -87,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. @@ -95,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]) @@ -122,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]) @@ -157,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]) @@ -166,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]]) @@ -206,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 @@ -247,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]) @@ -334,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 @@ -414,8 +444,8 @@ AC_HEADER_SYS_WAIT AC_HEADER_STAT AC_CHECK_HEADERS(string.h memory.h stdlib.h unistd.h errno.h fcntl.h \ limits.h crypt.h termcap.h termio.h termios.h locale.h \ - netdb.h sys/param.h sys/time.h sys/utsname.h arpa/inet.h \ - arpa/ftp.h) + langinfo.h netdb.h sys/param.h sys/time.h sys/utsname.h \ + arpa/inet.h arpa/ftp.h) AC_CACHE_CHECK(POSIX termios, nmh_cv_sys_posix_termios, @@ -447,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 @@ -469,7 +499,7 @@ AC_FUNC_VFORK AC_CHECK_LIB(mkstemp,mkstemp) AC_CHECK_FUNCS(waitpid wait3 sigaction sigprocmask sigblock sigsetmask \ sighold sigrelse writev lstat uname tzset killpg mkstemp \ - sethostent getutent) + sethostent getutent nl_langinfo) dnl solaris screws this up AC_CHECK_FUNC(gethostbyname, [AC_DEFINE(HAVE_GETHOSTBYNAME)], @@ -523,12 +553,16 @@ 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, , + AC_CHECK_LIB(db, __db_ndbm_open)))))) dnl ---------------- dnl CHECK FOR NDBM.H dnl ---------------- -AC_CHECK_HEADERS(db1/ndbm.h) + +AC_CHECK_HEADERS(db1/ndbm.h gdbm/ndbm.h db.h, break, ) dnl ---------------- dnl CHECK FOR HESIOD @@ -538,10 +572,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 @@ -559,13 +599,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 @@ -573,15 +623,24 @@ 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" - AC_CHECK_LIB(sasl, sasl_client_new, - [SASL_LIBS="$SASL_LIBS -lsasl"], + AC_CHECK_LIB(sasl2, sasl_client_new, + [SASL_LIBS="$SASL_LIBS -lsasl2"], [AC_MSG_ERROR(Cyrus SASL library not found)]) LDFLAGS="$save_LDFLAGS" fi @@ -620,7 +679,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) @@ -779,10 +838,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?? -- @@ -821,9 +878,11 @@ 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 ""