]> diplodocus.org Git - nmh/blobdiff - configure.ac
Make burst(1) be able to burst MIME-formatted messages with message/rfc822
[nmh] / configure.ac
index 5e9cae266e42188bb9a511d2bb509035e9619488..238e17a4ae83f59d22943c395cda3b61fb0f33dc 100644 (file)
@@ -3,12 +3,12 @@ dnl configure.ac -- autoconf template for nmh
 dnl
 
 dnl Move this up a bit
 dnl
 
 dnl Move this up a bit
-AC_PREREQ([2.61])
+AC_PREREQ([2.68])
 
 AC_INIT([nmh], m4_normalize(m4_include([VERSION])), [nmh-workers@nongnu.org])
 AC_CONFIG_SRCDIR([h/nmh.h])
 AC_CONFIG_HEADER([config.h])
 
 AC_INIT([nmh], m4_normalize(m4_include([VERSION])), [nmh-workers@nongnu.org])
 AC_CONFIG_SRCDIR([h/nmh.h])
 AC_CONFIG_HEADER([config.h])
-AM_INIT_AUTOMAKE([-Wall -Werror foreign subdir-objects])
+AM_INIT_AUTOMAKE([-Wall color-tests foreign serial-tests subdir-objects 1.12])
 
 AC_CANONICAL_HOST
 
 
 AC_CANONICAL_HOST
 
@@ -27,8 +27,6 @@ dnl --------------------------
 dnl Do you want to debug nmh?
 AC_ARG_ENABLE([debug],
   AS_HELP_STRING([--enable-debug],[enable nmh code debugging]))
 dnl Do you want to debug nmh?
 AC_ARG_ENABLE([debug],
   AS_HELP_STRING([--enable-debug],[enable nmh code debugging]))
-dnl The old redundant --enable-nmh-debug is deprecated and undocumented.
-AS_IF([test x"$enable_nmh_debug" = x"yes"], [enable_debug=yes])
 
 dnl Do you want to disable use of locale functions
 AH_TEMPLATE([LOCALE],
 
 dnl Do you want to disable use of locale functions
 AH_TEMPLATE([LOCALE],
@@ -56,12 +54,6 @@ AS_IF([test x"$with_tls" != x -a x"$with_tls" != x"no"],[
       AC_DEFINE([TLS_SUPPORT], [1], [Support TLS for session encryption.])dnl
       tls_support=yes],[tls_support=no])
 
       AC_DEFINE([TLS_SUPPORT], [1], [Support TLS for session encryption.])dnl
       tls_support=yes],[tls_support=no])
 
-dnl What should be the default editor?
-AC_ARG_WITH([editor],
-  AS_HELP_STRING([--with-editor=EDITOR],[specify the default editor]))
-
-AS_IF([test -n "$with_editor"], [editorpath="$with_editor"])
-
 dnl Set the backup prefix
 AC_ARG_WITH([hash-backup],
   AS_HELP_STRING([--with-hash-backup],[use # as the backup prefix (default: ,)]))
 dnl Set the backup prefix
 AC_ARG_WITH([hash-backup],
   AS_HELP_STRING([--with-hash-backup],[use # as the backup prefix (default: ,)]))
@@ -71,26 +63,30 @@ AC_DEFINE_UNQUOTED([BACKUP_PREFIX], "$backup_prefix",
     [The prefix that is prepended to the name of message files when they are "removed" by rmm. This should typically be `,' or `#'.])dnl
 
 dnl What method of locking to use?
     [The prefix that is prepended to the name of message files when they are "removed" by rmm. This should typically be `,' or `#'.])dnl
 
 dnl What method of locking to use?
-AC_ARG_WITH(locking,
+AS_CASE(["$host_os"],
+  [aix*|cygwin*|linux*],
+    [default_locktype="fcntl"; default_locking=FCNTL_LOCKING],
+  [freebsd*|openbsd*|darwin*], [default_locktype="flock"; default_locking=FLOCK_LOCKING],
+  [default_locktype="dot"; default_locking=DOT_LOCKING])
+
+AC_ARG_WITH([locking],
   AS_HELP_STRING([--with-locking=@<:@dot|fcntl|flock|lockf@:>@],
   [specify the file locking method]))
 
   AS_HELP_STRING([--with-locking=@<:@dot|fcntl|flock|lockf@:>@],
   [specify the file locking method]))
 
-if test x"$with_locking" = x"dot"; then
-  LOCKTYPE="dot"
-  AC_DEFINE(DOT_LOCKING, 1, [Define to use dot based file locking.])dnl
-elif test x"$with_locking" = x"flock"; then
-  LOCKTYPE="flock"
-  AC_DEFINE(FLOCK_LOCKING, 1, [Define to use flock() based locking.])dnl
-elif test x"$with_locking" = x"lockf"; then
-  LOCKTYPE="lockf"
-  AC_DEFINE(LOCKF_LOCKING, 1, [Define to use lockf() based locking.])dnl
-elif test x"$with_locking" = x"fcntl"; then
-  LOCKTYPE="fcntl"
-  AC_DEFINE(FCNTL_LOCKING, 1, [Define to use fnctl() based locking.])dnl
-else
-  LOCKTYPE="dot"
-  AC_DEFINE(DOT_LOCKING)dnl
-fi
+AS_IF([test x"$with_locking" = x"dot"],
+    [LOCKTYPE="dot"
+    AC_DEFINE([DOT_LOCKING], [1], [Define to use dot based file locking.])],
+  [test x"$with_locking" = x"flock"],
+    [LOCKTYPE="flock"
+    AC_DEFINE([FLOCK_LOCKING], [1], [Define to use flock() based locking.])],
+  [test x"$with_locking" = x"lockf"],
+    [LOCKTYPE="lockf"
+    AC_DEFINE([LOCKF_LOCKING], [1], [Define to use lockf() based locking.])],
+  [test x"$with_locking" = x"fcntl"],
+    [LOCKTYPE="fcntl"
+    AC_DEFINE([FCNTL_LOCKING], [1], [Define to use fnctl() based locking.])],
+  [LOCKTYPE="$default_locktype"
+  AC_DEFINE_UNQUOTED([$default_locking], [1])])
 
 dnl Should we use a locking directory?
 AC_ARG_ENABLE([lockdir],
 
 dnl Should we use a locking directory?
 AC_ARG_ENABLE([lockdir],
@@ -105,33 +101,20 @@ AC_ARG_ENABLE([lockdir],
 
 dnl What method of posting should post use?
 AC_ARG_WITH([mts],
 
 dnl What method of posting should post use?
 AC_ARG_WITH([mts],
-  AS_HELP_STRING([--with-mts=@<:@smtp|sendmail@:>@],
+  AS_HELP_STRING([--with-mts=@<:@smtp|sendmail/smtp|sendmail/pipe@:>@],
   [specify the default mail transport agent/service]))
 
 AS_IF([test x"$with_mts" = x"smtp"], [MTS="smtp"],
   [specify the default mail transport agent/service]))
 
 AS_IF([test x"$with_mts" = x"smtp"], [MTS="smtp"],
-      [test x"$with_mts" = x"sendmail"], [MTS="sendmail"],
+      [test x"$with_mts" = x"sendmail"], [MTS="sendmail/smtp"],
+      [test x"$with_mts" = x"sendmail/smtp"], [MTS="sendmail/smtp"],
+      [test x"$with_mts" = x"sendmail/pipe"], [MTS="sendmail/pipe"],
       [MTS="smtp"])
 AC_SUBST([MTS])dnl
 
       [MTS="smtp"])
 AC_SUBST([MTS])dnl
 
-dnl What should be the default pager?
-AC_ARG_WITH([pager],
-  AS_HELP_STRING([--with-pager=PAGER],[specify the default pager]))
-
-AS_IF([test -n "$with_pager"], [pagerpath="$with_pager"])
-
-dnl If a pager is not explicitly specified, then look for one.
-dnl Fall back to `cat', to avoid catastrophic failure of
-dnl `mhshow', et al., if pagerpath is set to `no'.
-if test -z "$pagerpath"; then
-  pathtmp=/usr/bin:/bin:/usr/ucb:/usr/local/bin
-  AC_PATH_PROGS([pagerpath], [more less most cat], [no], [$pathtmp])
-fi
-AC_SUBST(pagerpath)dnl
-
 dnl What should be the default mail server(s)?
 dnl What should be the default mail server(s)?
-AC_ARG_WITH(smtpservers,
-  AS_HELP_STRING([--with-smtpservers='SMTPSERVER1@<:@ SMTPSERVER2...@:>@'],
-  [specify the default SMTP server(s) @<:@localhost@:>@]))
+AC_ARG_WITH([smtpservers],
+  [AS_HELP_STRING([--with-smtpservers='SMTPSERVER1@<:@ SMTPSERVER2...@:>@'],
+  [specify the default SMTP server(s) @<:@localhost@:>@])])
 AS_IF([test -n "$with_smtpservers"], [smtpservers="$with_smtpservers"],
       [smtpservers="localhost"])
 AC_SUBST([smtpservers])dnl
 AS_IF([test -n "$with_smtpservers"], [smtpservers="$with_smtpservers"],
       [smtpservers="localhost"])
 AC_SUBST([smtpservers])dnl
@@ -154,45 +137,37 @@ fi
 AC_PROG_CC
 AM_PROG_CC_C_O
 
 AC_PROG_CC
 AM_PROG_CC_C_O
 
-AC_CACHE_CHECK([whether preprocessor supports -Wunused-macros],
-  [nmh_cv_has_unusedmacros],
-  [nmh_saved_cppflags="$CPPFLAGS"
-   CPPFLAGS="$CPPFLAGS -Wunused-macros -Wno-unused-macros"
-   AC_TRY_COMPILE([],[],nmh_cv_has_unusedmacros=yes,nmh_cv_has_unusedmacros=no)
-   CPPFLAGS="$nmh_saved_cppflags"])
-
-if test "$nmh_cv_has_unusedmacros" = 'yes'; then
-  test -z "$CPPFLAGS"  &&  CPPFLAGS=-Wunused-macros \
-                      ||  CPPFLAGS="$CPPFLAGS -Wunused-macros"
-  DISABLE_UNUSED_MACROS_WARNING=-Wno-unused-macros
-fi
-AC_SUBST(DISABLE_UNUSED_MACROS_WARNING)dnl
-
-AC_CACHE_CHECK([whether compiler supports -Wno-sign-compare],
-  [nmh_cv_has_nosigncompare],
-  [nmh_saved_cppflags="$CPPFLAGS"
-   CPPFLAGS="$CPPFLAGS -Wno-sign-compare"
-   AC_TRY_COMPILE([],[],nmh_cv_has_nosigncompare=yes,
-                  nmh_cv_has_nosigncompare=no)
-   CPPFLAGS="$nmh_saved_cppflags"])
-
-if test "$nmh_cv_has_nosigncompare" = 'yes'; then
-  DISABLE_SIGN_COMPARE_WARNING=-Wno-sign-compare
-fi
-AC_SUBST(DISABLE_SIGN_COMPARE_WARNING)dnl
-
 AC_CACHE_CHECK([whether compiler supports -Wextra], [nmh_cv_has_wextra],
 [nmh_saved_cflags="$CFLAGS"
 AC_CACHE_CHECK([whether compiler supports -Wextra], [nmh_cv_has_wextra],
 [nmh_saved_cflags="$CFLAGS"
- CFLAGS="$CFLAGS -Wextra -Wno-clobbered"
+ CFLAGS="$CFLAGS -Wextra -Werror"
  AC_TRY_COMPILE([],[],nmh_cv_has_wextra=yes,nmh_cv_has_wextra=no)
  CFLAGS="$nmh_saved_cflags"])
 
  AC_TRY_COMPILE([],[],nmh_cv_has_wextra=yes,nmh_cv_has_wextra=no)
  CFLAGS="$nmh_saved_cflags"])
 
-AC_CACHE_CHECK([whether compiler supports -Wno-pointer-sign], [nmh_cv_has_noptrsign],
+AC_CACHE_CHECK([whether compiler supports -Wno-clobbered], [nmh_cv_has_noclobbered],
 [nmh_saved_cflags="$CFLAGS"
 [nmh_saved_cflags="$CFLAGS"
- CFLAGS="$CFLAGS -Wno-pointer-sign"
- AC_TRY_COMPILE([],[],nmh_cv_has_noptrsign=yes,nmh_cv_has_noptrsign=no)
+ CFLAGS="$CFLAGS -Wno-clobbered -Werror"
+ AC_TRY_COMPILE([],[],nmh_cv_has_noclobbered=yes,nmh_cv_has_noclobbered=no)
  CFLAGS="$nmh_saved_cflags"])
 
  CFLAGS="$nmh_saved_cflags"])
 
+dnl Can't use -ansi with gcc 4.5.3 on Cygwin, at least through setup
+dnl setup version 2.763, because it disables some features in the
+dnl system system header files and warns about them with -Wall.  Try
+dnl to test for that generally, though still with gcc.
+if test "$GCC" = yes; then
+  AC_CACHE_CHECK([whether we can use -ansi with gcc], [nmh_cv_has_dash_ansi],
+    [nmh_saved_cppflags="$CPPFLAGS"
+     nmh_saved_cflags="$CFLAGS"
+     CPPFLAGS="-D_GNU_SOURCE"
+     CFLAGS="-ansi -Wall -Werror"
+     AC_COMPILE_IFELSE([AC_LANG_PROGRAM([#include <time.h>],[tzset();])],
+       [nmh_cv_has_dash_ansi=yes],
+       [nmh_cv_has_dash_ansi=no])
+     CPPFLAGS="$nmh_saved_cppflags"
+     CFLAGS="$nmh_saved_cflags"])
+else
+  nmh_cv_has_dash_ansi=no
+fi
+
 dnl if the user hasn't specified CFLAGS, then
 dnl   if compiler is gcc, then
 dnl    use -O2 and some warning flags
 dnl if the user hasn't specified CFLAGS, then
 dnl   if compiler is gcc, then
 dnl    use -O2 and some warning flags
@@ -201,18 +176,16 @@ dnl We use -Wall and -Wextra if supported.  If the compiler supports it we
 dnl also use -Wno-pointer-sign, because gcc 4 now produces a lot of new
 dnl warnings which are probably mostly spurious and which in any case we
 dnl don't want to deal with now.
 dnl also use -Wno-pointer-sign, because gcc 4 now produces a lot of new
 dnl warnings which are probably mostly spurious and which in any case we
 dnl don't want to deal with now.
-if test "$nmh_cv_has_noptrsign" = "yes"; then
-    if test "$nmh_cv_has_wextra" = "yes"; then
-        nmh_gcc_warnflags="-Wall -Wextra -Wno-clobbered -Wno-pointer-sign"
-    else
-        nmh_gcc_warnflags="-Wall -Wno-pointer-sign"
-    fi
+if test "$nmh_cv_has_dash_ansi" = "yes"; then
+    nmh_gcc_warnflags="-ansi -pedantic -Wall"
 else
 else
-    if test "$nmh_cv_has_wextra" = "yes"; then
-        nmh_gcc_warnflags="-Wall -Wextra -Wno-clobbered"
-    else
-        nmh_gcc_warnflags="-Wall"
-    fi
+    nmh_gcc_warnflags="-Wall"
+fi
+if test "$nmh_cv_has_wextra" = "yes"; then
+    nmh_gcc_warnflags="${nmh_gcc_warnflags} -Wextra"
+fi
+if test "$nmh_cv_has_noclobbered" = "yes"; then
+    nmh_gcc_warnflags="${nmh_gcc_warnflags} -Wno-clobbered"
 fi
 
 if test -n "$auto_cflags"; then
 fi
 
 if test -n "$auto_cflags"; then
@@ -238,11 +211,11 @@ if test -n "$auto_cflags"; then
     else
       test -z "$CFLAGS" && CFLAGS=-O  || CFLAGS="$CFLAGS -O"
     fi
     else
       test -z "$CFLAGS" && CFLAGS=-O  || CFLAGS="$CFLAGS -O"
     fi
+    AC_DEFINE([NDEBUG], [1],
+              [Define to disable run-time debugging and asserts.])
   fi
 fi
 
   fi
 fi
 
-AC_C_CONST              dnl Does compiler support `const'.
-
 dnl ------------------
 dnl CHECK FOR PROGRAMS
 dnl ------------------
 dnl ------------------
 dnl CHECK FOR PROGRAMS
 dnl ------------------
@@ -251,7 +224,9 @@ AC_PROG_INSTALL             dnl Check for BSD compatible `install'
 AC_PROG_RANLIB         dnl Check for `ranlib'
 AC_PROG_AWK             dnl Check for mawk,gawk,nawk, then awk
 AC_PROG_SED            dnl Check for Posix-compliant sed
 AC_PROG_RANLIB         dnl Check for `ranlib'
 AC_PROG_AWK             dnl Check for mawk,gawk,nawk, then awk
 AC_PROG_SED            dnl Check for Posix-compliant sed
-AC_PROG_LEX             dnl Check for lex/flex
+AM_PROG_LEX             dnl Check for lex/flex
+
+AM_PROG_AR
 
 dnl Look for `cut'
 pathtmp=/usr/bin:/bin:/usr/local/bin:/usr/xpg4/bin:/usr/ucb
 
 dnl Look for `cut'
 pathtmp=/usr/bin:/bin:/usr/local/bin:/usr/xpg4/bin:/usr/ucb
@@ -263,27 +238,23 @@ dnl
 AC_CHECK_PROGS([MD5SUM], [md5sum md5], [missing])
 AS_CASE(["${MD5SUM}"],
        [md5sum], [MD5FMT="cat"],
 AC_CHECK_PROGS([MD5SUM], [md5sum md5], [missing])
 AS_CASE(["${MD5SUM}"],
        [md5sum], [MD5FMT="cat"],
-       [md5], [[MD5FMT="${SED} -e 's/MD5 *(\(.*\)) *= \([0-9a-f]*\)/\2  \1/'"]],
+       [md5], [[MD5FMT="${SED} -e 's/MD5 *(.*) *= \([0-9a-f]*\)/\1/'"]],
        [MD5FMT="missing"])
 AC_SUBST([MD5FMT])
 
 dnl ----------------------------------------------
 dnl check for lclint, and lint if it doesn't exist
 dnl ----------------------------------------------
        [MD5FMT="missing"])
 AC_SUBST([MD5FMT])
 
 dnl ----------------------------------------------
 dnl check for lclint, and lint if it doesn't exist
 dnl ----------------------------------------------
-AC_CHECK_PROG(linttmp1, lclint, lclint, no)dnl
-if test x$ac_cv_prog_linttmp1 != xno ; then
-  LINT=$ac_cv_prog_linttmp1
-  LINTFLAGS="-weak +posixlib -macrovarprefixexclude"
-else
-  AC_CHECK_PROG(linttmp2, lint, lint, no)dnl
-  if test x$ac_cv_prog_linttmp2 != xno ; then
-    LINT=$ac_cv_prog_linttmp2
-    LINTFLAGS=""
-  else
-    LINT="echo 'No lint program found'"
-    LINTFLAGS=""
-  fi
-fi
+AC_CHECK_PROG([linttmp1], [lclint], [lclint], [no])dnl
+AS_IF([test x$ac_cv_prog_linttmp1 != xno],
+  [LINT=$ac_cv_prog_linttmp1
+  LINTFLAGS="-weak +posixlib -macrovarprefixexclude"],
+  [AC_CHECK_PROG([linttmp2], [lint], [lint], [no])dnl
+  AS_IF([test x$ac_cv_prog_linttmp2 != xno],
+    [LINT=$ac_cv_prog_linttmp2
+    LINTFLAGS=""],
+    [LINT="echo 'No lint program found'"
+    LINTFLAGS=""])])
 AC_SUBST([LINT])dnl
 AC_SUBST([LINTFLAGS])dnl
 
 AC_SUBST([LINT])dnl
 AC_SUBST([LINTFLAGS])dnl
 
@@ -292,32 +263,27 @@ pathtmp=/usr/bin:/bin:/usr/local/bin:/usr/xpg4/bin:/usr/ucb
 AC_PATH_PROG([lspath], [ls], [no], [$pathtmp])
 
 dnl See how we get ls to display the owner and the group
 AC_PATH_PROG([lspath], [ls], [no], [$pathtmp])
 
 dnl See how we get ls to display the owner and the group
-if test "$lspath" != "no"; then
-  AC_CACHE_CHECK([how to get ls to show us the group ownership of a file],
+AS_IF([test "$lspath" != "no"],
+  [AC_CACHE_CHECK([how to get ls to show us the group ownership of a file],
                 [nmh_cv_ls_grpopt],
                 [nmh_cv_ls_grpopt],
-  [if test x"`$lspath -dl / | $AWK '{print $9}'`" = x"/"; then
+  [AS_IF([test x"`$lspath -dl / | $AWK '{print $9}'`" = x"/"],[
     dnl There were 9 parameters, so unless this is a really bizarre, nonstandard
     dnl ls, it would seem -l gave us both the user and group.  On this type of
     dnl ls, -g makes _only_ the group be displayed (and not the user).
     dnl There were 9 parameters, so unless this is a really bizarre, nonstandard
     dnl ls, it would seem -l gave us both the user and group.  On this type of
     dnl ls, -g makes _only_ the group be displayed (and not the user).
-    nmh_cv_ls_grpopt="-l"
-  else
+    nmh_cv_ls_grpopt="-l"],[
     dnl Looks like -l only gave us the user, so we need -g to get the group too.
     dnl Looks like -l only gave us the user, so we need -g to get the group too.
-    nmh_cv_ls_grpopt="-lg"
-  fi])
-fi
+    nmh_cv_ls_grpopt="-lg"])])])
 
 dnl Look for `sendmail'
 pathtmp=/usr/lib:/usr/sbin:/usr/etc:/usr/ucblib:/usr/bin:/bin
 AC_PATH_PROG([sendmailpath], [sendmail], [/usr/sbin/sendmail], [$pathtmp])
 
 
 dnl Look for `sendmail'
 pathtmp=/usr/lib:/usr/sbin:/usr/etc:/usr/ucblib:/usr/bin:/bin
 AC_PATH_PROG([sendmailpath], [sendmail], [/usr/sbin/sendmail], [$pathtmp])
 
-dnl Look for `vi'
-pathtmp=/usr/bin:/bin:/usr/ucb:/usr/local/bin
-AC_PATH_PROG([vipath], [vi], [/bin/vi], [$pathtmp])
-
-dnl If editor is not specified yet,
-dnl then use `vi' as the default.
-AS_IF([test -z "$editorpath"], [editorpath="$vipath"])
-AC_SUBST([editorpath])dnl
+dnl Cygwin FAT filesystems do not support hard links.  So default to
+dnl cp instead, even if running on an NTFS or other filesystem.
+AS_CASE(["$host_os"],
+  [cygwin*],[LN=cp],
+  [LN=ln])
+AC_SUBST([LN])
 
 dnl ----------------------------------------------------------
 dnl FIND MAIL SPOOL AND SEE IF WE NEED TO MAKE inc SETGID MAIL
 
 dnl ----------------------------------------------------------
 dnl FIND MAIL SPOOL AND SEE IF WE NEED TO MAKE inc SETGID MAIL
@@ -364,9 +330,8 @@ fi
 
 dnl Provide a way for distcheck to disable setgid_mail via
 dnl DISTCHECK_CONFIGURE_FLAGS.
 
 dnl Provide a way for distcheck to disable setgid_mail via
 dnl DISTCHECK_CONFIGURE_FLAGS.
-if test x"$DISABLE_SETGID_MAIL" != x; then
-  nmh_cv_dotlockfile_setgid=yes
-fi
+AS_IF([test x"$DISABLE_SETGID_MAIL" != x -a x"$DISABLE_SETGID_MAIL" != x0],
+  [nmh_cv_dotlockfile_setgid=yes])
 
 dnl If mailspool is not world-writable and dotlockfile is not setgid,
 dnl we need to #define MAILGROUP to 1 and make inc setgid.
 
 dnl If mailspool is not world-writable and dotlockfile is not setgid,
 dnl we need to #define MAILGROUP to 1 and make inc setgid.
@@ -376,7 +341,7 @@ if test x"$LOCKTYPE" = x"dot" -a x"$nmh_cv_mailspool_world_writable" = x"no" -a
     [Define to 1 if you need to make `inc' set-group-id because your mail spool is not world writable. There are no guarantees as to the safety of doing this, but this #define will add some extra security checks.])dnl
   SETGID_MAIL=1
 fi
     [Define to 1 if you need to make `inc' set-group-id because your mail spool is not world writable. There are no guarantees as to the safety of doing this, but this #define will add some extra security checks.])dnl
   SETGID_MAIL=1
 fi
-AC_SUBST(SETGID_MAIL)dnl
+AC_SUBST([SETGID_MAIL])dnl
 
 dnl Use ls to see which group owns the mail spool directory.
 AC_CACHE_CHECK(what group owns the mail spool, nmh_cv_ls_mail_grp,
 
 dnl Use ls to see which group owns the mail spool directory.
 AC_CACHE_CHECK(what group owns the mail spool, nmh_cv_ls_mail_grp,
@@ -405,20 +370,9 @@ AS_CASE(["$host_os"],
          AS_IF([test -z "$CPPFLAGS"],[CPPFLAGS="-D_GNU_SOURCE"],
                 [CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE"])])
 
          AS_IF([test -z "$CPPFLAGS"],[CPPFLAGS="-D_GNU_SOURCE"],
                 [CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE"])])
 
-AC_HEADER_STDC
 AC_HEADER_TIOCGWINSZ
 AC_HEADER_TIOCGWINSZ
-AC_CHECK_HEADERS([errno.h fcntl.h crypt.h ncurses/termcap.h termcap.h \
-                  langinfo.h wchar.h wctype.h iconv.h netdb.h \
-                  sys/param.h sys/time.h sys/stream.h])
-
-dnl
-dnl Checks for _IO_write_ptr. A Linuxism used by nmh on linux. We
-dnl really use a whole set of them, but this check should be
-dnl sufficient.
-dnl
-AC_CHECK_HEADER(libio.h, [
-  AC_EGREP_HEADER(_IO_write_ptr, libio.h, [
-    AC_DEFINE(LINUX_STDIO,1,[Use the Linux _IO_*_ptr defines from <libio.h>.]) ]) ])
+AC_CHECK_HEADERS([fcntl.h ncurses/termcap.h termcap.h langinfo.h \
+                  wchar.h wctype.h sys/param.h sys/time.h sys/stream.h])
 
 AC_CHECK_HEADER([sys/ptem.h], AC_DEFINE(WINSIZE_IN_PTEM,1,
   [Define to 1 if `struct winsize' requires <sys/ptem.h>.]),,
 
 AC_CHECK_HEADER([sys/ptem.h], AC_DEFINE(WINSIZE_IN_PTEM,1,
   [Define to 1 if `struct winsize' requires <sys/ptem.h>.]),,
@@ -433,11 +387,15 @@ dnl ---------------
 AC_CHECK_FUNCS([wcwidth mbtowc writev lstat nl_langinfo getutxent])
 
 dnl Check for multibyte character set support
 AC_CHECK_FUNCS([wcwidth mbtowc writev lstat nl_langinfo getutxent])
 
 dnl Check for multibyte character set support
-if test "x$ac_cv_header_wchar_h" = "xyes" -a "x$ac_cv_header_wctype_h" = "xyes" \
-    -a "x$ac_cv_func_wcwidth" = "xyes" -a "x$ac_cv_func_mbtowc" = "xyes"; then
-  AC_DEFINE(MULTIBYTE_SUPPORT, 1,
-    [Define to enable support for multibyte character sets.])
-fi
+AS_IF([test "x$ac_cv_header_wchar_h" = "xyes" -a \
+           "x$ac_cv_header_wctype_h" = "xyes" -a \
+           "x$ac_cv_func_wcwidth" = "xyes" -a \
+           "x$ac_cv_func_mbtowc" = "xyes"],
+      [AC_DEFINE([MULTIBYTE_SUPPORT], [1],
+                [Define to enable support for multibyte character sets.])
+       MULTIBYTE_ENABLED=1],
+      [MULTIBYTE_ENABLED=0])
+AC_SUBST([MULTIBYTE_ENABLED])
 
 dnl -------------------
 dnl CHECK FOR LIBRARIES
 
 dnl -------------------
 dnl CHECK FOR LIBRARIES
@@ -448,8 +406,12 @@ AC_CHECK_FUNC([modf], , AC_CHECK_LIB([m], [modf]))
 dnl Checks for network libraries (nsl, socket)
 NMH_CHECK_NETLIBS
 
 dnl Checks for network libraries (nsl, socket)
 NMH_CHECK_NETLIBS
 
+dnl Check for readline support
 NMH_READLINE
 
 NMH_READLINE
 
+dnl Check for iconv
+NMH_CHECK_ICONV
+
 termcap_curses_order="termcap curses ncurses"
 for lib in $termcap_curses_order; do
   AC_CHECK_LIB(${lib}, tgetent, [TERMLIB="-l$lib"; break])
 termcap_curses_order="termcap curses ncurses"
 for lib in $termcap_curses_order; do
   AC_CHECK_LIB(${lib}, tgetent, [TERMLIB="-l$lib"; break])
@@ -459,53 +421,6 @@ AS_IF([test "x$TERMLIB" = "x"],
       [AC_MSG_FAILURE([Could not find tgetent in any library.  Is there a curses
 or ncurses library or package that you can install?])])
 
       [AC_MSG_FAILURE([Could not find tgetent in any library.  Is there a curses
 or ncurses library or package that you can install?])])
 
-
-dnl ---------------
-dnl CHECK FOR ICONV
-dnl ---------------
-
-dnl Find iconv. It may be in libiconv and may be iconv() or libiconv()
-if test "x$ac_cv_header_iconv_h" = "xyes"; then
-  AC_CHECK_FUNC(iconv, ac_found_iconv=yes, ac_found_iconv=no)
-  if test "x$ac_found_iconv" = "xno"; then
-    AC_CHECK_LIB(iconv, iconv, ac_found_iconv=yes)
-    if test "x$ac_found_iconv" = "xno"; then
-      AC_CHECK_LIB(iconv, libiconv, ac_found_iconv=yes)
-    fi
-    if test "x$ac_found_iconv" != "xno"; then
-      ICONVLIB="-liconv"
-    fi
-  else
-    dnl Handle case where there is a native iconv but iconv.h is from libiconv
-    AC_CHECK_DECL(_libiconv_version,
-      [ AC_CHECK_LIB(iconv, libiconv, LIBS="-liconv $LIBS") ],,
-      [ #include <iconv.h> ])
-  fi
-fi
-if test "x$ac_found_iconv" = xyes; then
-  AC_DEFINE([HAVE_ICONV], [1], [Define if you have the iconv() function.])
-fi
-AC_SUBST([ICONVLIB])
-
-dnl Check if iconv uses const in prototype declaration
-if test "x$ac_found_iconv" = "xyes"; then
-  AC_CACHE_CHECK(for iconv declaration, ac_cv_iconv_const,
-    [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <stdlib.h>
-        #include <iconv.h>]],
-        [[#ifdef __cplusplus
-          "C"
-          #endif
-          #if defined(__STDC__) || defined(__cplusplus)
-          size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);
-          #else
-          size_t iconv();
-          #endif]])],
-      [ac_cv_iconv_const=],
-      [ac_cv_iconv_const=const])])
-  AC_DEFINE_UNQUOTED([ICONV_CONST], $ac_cv_iconv_const,
-    [Define as const if the declaration of iconv() needs const.])
-fi
-
 dnl --------------
 dnl CHECK FOR NDBM
 dnl --------------
 dnl --------------
 dnl CHECK FOR NDBM
 dnl --------------
@@ -575,8 +490,8 @@ dnl ------------------
 dnl nmhrpm is used in the final summary, see below.  The default value is
 dnl reported there as ./RPM, consistent with the reporting of the default
 dnl source code location as ., but its absolute path is used in the Makefile.
 dnl nmhrpm is used in the final summary, see below.  The default value is
 dnl reported there as ./RPM, consistent with the reporting of the default
 dnl source code location as ., but its absolute path is used in the Makefile.
-AC_ARG_WITH(rpmdir,
-  AS_HELP_STRING([--with-rpmdir=RPMDIR], [RPM build directory @<:@RPM@:>@]))
+AC_ARG_WITH([rpmdir],
+  [AS_HELP_STRING([--with-rpmdir=RPMDIR], [RPM build directory @<:@RPM@:>@])])
   AS_IF([test x"$with_rpmdir" = x], [rpmdir='$(abs_srcdir)/RPM'; nmhrpm=./RPM],
           [rpmdir="$with_rpmdir"; eval "nmhrpm=${rpmdir}"])
 AC_SUBST([rpmdir])
   AS_IF([test x"$with_rpmdir" = x], [rpmdir='$(abs_srcdir)/RPM'; nmhrpm=./RPM],
           [rpmdir="$with_rpmdir"; eval "nmhrpm=${rpmdir}"])
 AC_SUBST([rpmdir])
@@ -598,10 +513,12 @@ dnl -----------------
 
 AS_IF([test x"$tls_support" = x"yes"],[
   AC_CHECK_HEADER([openssl/ssl.h], , [AC_MSG_ERROR([openssl/ssl.h not found])])
 
 AS_IF([test x"$tls_support" = x"yes"],[
   AC_CHECK_HEADER([openssl/ssl.h], , [AC_MSG_ERROR([openssl/ssl.h not found])])
-  AC_CHECK_LIB([crypto], [BIO_write], ,
+  AC_CHECK_LIB([crypto], [BIO_write], [TLSLIB="-lcrypto"],
     [AC_MSG_ERROR([OpenSSL crypto library not found])])
     [AC_MSG_ERROR([OpenSSL crypto library not found])])
-  AC_CHECK_LIB([ssl], [SSL_library_init], ,
-    [AC_MSG_ERROR([OpenSSL library not found])])])
+  AC_CHECK_LIB([ssl], [SSL_library_init], [TLSLIB="-lssl $TLSLIB"],
+    [AC_MSG_ERROR([OpenSSL library not found])])],
+  [TLSLIB=])
+AC_SUBST([TLSLIB])
 
 dnl ---------------------
 dnl CHECK TERMCAP LIBRARY
 
 dnl ---------------------
 dnl CHECK TERMCAP LIBRARY
@@ -728,8 +645,8 @@ dnl exist.
 dnl
 
 AC_CONFIG_COMMANDS([build-directories],
 dnl
 
 AC_CONFIG_COMMANDS([build-directories],
-[test -d etc || ${MKDIR_P} etc
-test -d man || ${MKDIR_P} man])
+[test -d etc || AS_MKDIR_P([etc])
+test -d man || AS_MKDIR_P([man])])
 
 AC_CONFIG_COMMANDS_POST([
 
 
 AC_CONFIG_COMMANDS_POST([
 
@@ -766,7 +683,6 @@ transport system           : ${MTS}
 file locking type          : ${LOCKTYPE}
 default smtp servers       : ${smtpservers}
 default editor             : ${editorpath}
 file locking type          : ${LOCKTYPE}
 default smtp servers       : ${smtpservers}
 default editor             : ${editorpath}
-default pager              : ${pagerpath}
 SASL support               : ${sasl_support}
 TLS support                : ${tls_support}
 ])])dnl
 SASL support               : ${sasl_support}
 TLS support                : ${tls_support}
 ])])dnl
@@ -775,4 +691,5 @@ dnl ---------------
 dnl OUTPUT MAKEFILE
 dnl ---------------
 AC_CONFIG_FILES([Makefile test/common.sh])
 dnl OUTPUT MAKEFILE
 dnl ---------------
 AC_CONFIG_FILES([Makefile test/common.sh])
+AC_CONFIG_FILES([uip/spost], [chmod +x uip/spost])
 AC_OUTPUT
 AC_OUTPUT