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 foreign subdir-objects])
AC_CANONICAL_HOST
[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?
+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]))
LOCKTYPE="fcntl"
AC_DEFINE(FCNTL_LOCKING, 1, [Define to use fnctl() based locking.])dnl
else
- LOCKTYPE="dot"
- AC_DEFINE(DOT_LOCKING)dnl
+ LOCKTYPE="$default_locktype"
+ AC_DEFINE_UNQUOTED($default_locking, 1)dnl
fi
dnl Should we use a locking directory?
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"],
- [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
AC_TRY_COMPILE([],[],nmh_cv_has_noptrsign=yes,nmh_cv_has_noptrsign=no)
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 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_dash_ansi" = "yes"; then
+ nmh_gcc_common_flags="-ansi -pedantic -Wall"
+ else
+ nmh_gcc_common_flags="-Wall"
+ fi
if test "$nmh_cv_has_wextra" = "yes"; then
- nmh_gcc_warnflags="-Wall -Wextra -Wno-clobbered -Wno-pointer-sign"
+ nmh_gcc_warnflags="${nmh_gcc_common_flags} -Wextra -Wno-clobbered "\
+"-Wno-pointer-sign"
else
- nmh_gcc_warnflags="-Wall -Wno-pointer-sign"
+ nmh_gcc_warnflags="${nmh_gcc_common_flags} -Wno-pointer-sign"
fi
else
if test "$nmh_cv_has_wextra" = "yes"; then
- nmh_gcc_warnflags="-Wall -Wextra -Wno-clobbered"
+ nmh_gcc_warnflags="${nmh_gcc_common_flags} -Wextra -Wno-clobbered"
else
- nmh_gcc_warnflags="-Wall"
+ nmh_gcc_warnflags="${nmh_gcc_common_flags}"
fi
fi
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 ----------------------------------------------------------
fi
fi
+dnl Provide a way for distcheck to disable setgid_mail via
+dnl DISTCHECK_CONFIGURE_FLAGS.
+if test x"$DISABLE_SETGID_MAIL" != x -a x"$DISABLE_SETGID_MAIL" != x0; then
+ nmh_cv_dotlockfile_setgid=yes
+fi
+
dnl If mailspool is not world-writable and dotlockfile is not setgid,
dnl we need to #define MAILGROUP to 1 and make inc setgid.
if test x"$LOCKTYPE" = x"dot" -a x"$nmh_cv_mailspool_world_writable" = x"no" -a x"$nmh_cv_dotlockfile_setgid" != x"yes" ; then
dnl ---------------
dnl CHECK FUNCTIONS
dnl ---------------
-AC_CHECK_FUNCS([wcwidth mbtowc writev lstat nl_langinfo])
+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 OUTPUT MAKEFILE
dnl ---------------
AC_CONFIG_FILES([Makefile test/common.sh])
+AC_CONFIG_FILES([uip/spost], [chmod +x uip/spost])
AC_OUTPUT