Merge branch 'fileproc_mhlproc_to_post'
[mmh] / configure.in
index e93e173..4657b50 100644 (file)
@@ -56,17 +56,6 @@ AC_ARG_ENABLE(masquerade,
   fi], [masquerade="draft_from mmailid username_extension"])
 AC_SUBST(masquerade)dnl
 
-dnl Do you want mhe support?
-AC_ARG_ENABLE(mhe,
-  AS_HELP_STRING([--disable-mhe],[disable mhe support]))
-
-dnl mhe support is on by default, so define it unless --disable-mhe or the
-dnl deprecated, undocumented --disable-nmh-mhe are specified.
-if test x"$enable_mhe" != x"no" -a x"$enable_nmh_mhe" != x"no"; then
-  AC_DEFINE(MHE, 1,
-    [Define to compile in support for the Emacs front-end mh-e.])dnl
-fi
-
 dnl Do you want client-side support for pop?
 AC_ARG_ENABLE(pop,
   AS_HELP_STRING([--enable-pop], [enable client-side support for plain POP3]))
@@ -164,6 +153,17 @@ else
   AC_DEFINE(DOT_LOCKING)dnl
 fi
 
+dnl Should we use a locking directory?
+AC_ARG_ENABLE([lockdir], [
+  AS_HELP_STRING([--enable-lockdir=dir], [Store dot-lock files in "dir"])], [
+  AS_IF([test "x$enableval" = xyes],[
+    AC_MSG_ERROR([--enable-lockdir requires an argument])])
+  AS_IF([test "x$LOCKTYPE" != xdot],[
+    AC_MSG_ERROR([Can only use --enable-lockdir with dot locking])])
+  AC_DEFINE_UNQUOTED([LOCKDIR], ["$enableval"],
+                    [Directory to store dot-locking lock files])
+])
+
 dnl What method of posting should post use?
 AC_ARG_WITH(mts,
   AS_HELP_STRING([--with-mts=@<:@smtp|sendmail@:>@],
@@ -461,17 +461,12 @@ case "$target_os" in
 esac
 AC_SUBST(OURDEFS)
 
-AC_HEADER_DIRENT
 AC_HEADER_STDC
 AC_HEADER_TIME
-AC_HEADER_SYS_WAIT
-AC_HEADER_STAT
 AC_HEADER_TIOCGWINSZ
-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 \
+AC_CHECK_HEADERS(errno.h fcntl.h crypt.h termcap.h \
                  langinfo.h wchar.h wctype.h iconv.h netdb.h \
-                 sys/param.h sys/time.h sys/utsname.h sys/stream.h \
-                 arpa/inet.h arpa/ftp.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
@@ -492,20 +487,8 @@ AC_CHECK_HEADER([sys/ptem.h], AC_DEFINE(WINSIZE_IN_PTEM,1,
 dnl ---------------
 dnl CHECK FUNCTIONS
 dnl ---------------
-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 \
-               getutent nl_langinfo mbtowc wcwidth)
-
-dnl sigsetjmp may be a macro
-AC_MSG_CHECKING(for sigsetjmp)
-AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <setjmp.h>]],
-  [[sigsetjmp((void *)0, 0);]])],[AC_DEFINE(HAVE_SIGSETJMP, 1,
-    [Define to 1 if you have the `sigsetjmp'.]) AC_MSG_RESULT(yes)],
-  [AC_MSG_RESULT(no)])
-
-AC_REPLACE_FUNCS(memmove snprintf strerror strdup)
+AC_CHECK_FUNCS(writev lstat tzset getutent nl_langinfo sigaction sigprocmask \
+              sigblock sigsetmask sighold sigrelse)
 
 dnl Look for the initgroups() declaration.  On AIX 4.[13], Solaris 4.1.3, and
 dnl ULTRIX 4.2A the function is defined in libc but there's no declaration in
@@ -659,6 +642,18 @@ else
   AC_SUBST(NDBM_LIBS)
 fi
 
+dnl ------------------
+dnl Set RPM build root
+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.
+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)
+
 
 dnl --------------------
 dnl CHECK FOR CYRUS-SASL
@@ -689,35 +684,6 @@ dnl tests will find it when it tries to link test programs.
 nmh_save_LIBS="$LIBS"
 LIBS="$TERMLIB $LIBS"
 
-dnl Checks for external variable ospeed in the termcap library.
-AC_CACHE_CHECK(if an include file defines ospeed,
-nmh_cv_decl_ospeed_include_defines,
-[AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <sys/types.h>
-#if HAVE_TERMIOS_H
-#include <termios.h>
-#endif
-#if HAVE_TERMCAP_H
-#include <termcap.h>
-#endif]], [[ospeed = 0;]])],
-nmh_cv_decl_ospeed_include_defines=yes,nmh_cv_decl_ospeed_include_defines=no)])
-if test $nmh_cv_decl_ospeed_include_defines = no; then
-  AC_CACHE_CHECK(if you must define ospeed,
-  nmh_cv_decl_ospeed_must_define,
-  [AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],
-  [[extern short ospeed; ospeed = 0;]])],
-  nmh_cv_decl_ospeed_must_define=yes,nmh_cv_decl_ospeed_must_define=no)])
-fi
-AH_TEMPLATE(HAVE_OSPEED, [Define to 1 if your termcap library has the ospeed variable.])
-if test $nmh_cv_decl_ospeed_include_defines = yes; then
-  AC_DEFINE(HAVE_OSPEED)dnl
-elif test $nmh_cv_decl_ospeed_must_define = yes; then
-  AC_DEFINE(HAVE_OSPEED)
-  AC_DEFINE(MUST_DEFINE_OSPEED, 1,
-    [Define to 1 if you have ospeed, but it is not defined in termcap.h.])
-fi
-
 dnl Check if tgetent accepts NULL (and will allocate its own termcap buffer)
 dnl Some termcaps reportedly accept a zero buffer, but then dump core
 dnl in tgetstr().
@@ -813,7 +779,6 @@ fi
 dnl ----------------
 dnl CHECK STRUCTURES
 dnl ----------------
-AC_CHECK_MEMBERS(struct stat.st_blksize)
 
 AC_CHECK_MEMBERS(struct tm.tm_gmtoff,,,
   [#ifdef TIME_WITH_SYS_TIME
@@ -829,35 +794,7 @@ AC_CHECK_MEMBERS(struct tm.tm_gmtoff,,,
 
 AC_CHECK_MEMBERS(struct utmp.ut_type,,,[#include <utmp.h>])
 
-AC_MSG_CHECKING(for union wait)
-AC_CACHE_VAL(nmh_cv_union_wait, [dnl
-  AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <sys/types.h>
-#include <sys/wait.h>]],
-    [[union wait status; int pid; pid = wait (&status);
-#ifdef WEXITSTATUS
-/* Some POSIXoid systems have both the new-style macros and the old
-   union wait type, and they do not work together.  If union wait
-   conflicts with WEXITSTATUS et al, we don't want to use it at all.  */
-        if (WEXITSTATUS (status) != 0) pid = -1;
-#ifdef WTERMSIG
-        /* If we have WEXITSTATUS and WTERMSIG, just use them on ints.  */
-        -- blow chunks here --
-#endif
-#endif
-#ifdef HAVE_WAITPID
-        /* Make sure union wait works with waitpid.  */
-        pid = waitpid (-1, &status, 0);
-#endif
-      ]])],
-    [nmh_cv_union_wait=yes],
-    [nmh_cv_union_wait=no])])
-if test "$nmh_cv_union_wait" = yes; then
-  AC_DEFINE(HAVE_UNION_WAIT, 1,
-    [Define to 1 if you have the \`union wait' type in <sys/wait.h>.])
-fi
-AC_MSG_RESULT($nmh_cv_union_wait)
-
-CHECK_TYPE_STRUCT_DIRENT_D_TYPE()
+AC_STRUCT_DIRENT_D_TYPE
 
 dnl -------------
 dnl CHECK SIGNALS
@@ -978,6 +915,7 @@ eval "nmhbin=${bindir}";         eval "nmhbin=${nmhbin}"
 eval "nmhsysconf=${sysconfdir}"; eval "nmhsysconf=${nmhsysconf}"
 eval "nmhlib=${libdir}";         eval "nmhlib=${nmhlib}"
 eval "nmhman=${mandir}";         eval "nmhman=${nmhman}"
+eval "nmhrpm=${nmhrpm}";
 
 pop_kinds=no
 if test x"$enable_pop" = x"yes"; then
@@ -1004,6 +942,7 @@ binary install path        : ${nmhbin}
 library install path       : ${nmhlib}
 config files install path  : ${nmhsysconf}
 man page install path      : ${nmhman}
+RPM build root             : ${nmhrpm}
 backup prefix              : ${backup_prefix}
 transport system           : ${MTS}
 file locking type          : ${LOCKTYPE}