dnl
-dnl configure.ac -- autoconf template for nmh
+dnl configure.ac -- autoconf template for mmh
dnl
dnl Move this up a bit
AC_PREREQ(2.61)
+dnl (I was able to configure with autoconf-2.59 --meillo 2012-03-22)
AC_INIT(mmh, m4_normalize(m4_include([VERSION])))
AC_CONFIG_SRCDIR(h/nmh.h)
fi
fi
] )
-
+
echo "configuring for AC_PACKAGE_NAME-AC_PACKAGE_VERSION"
AC_SUBST(VERSION,AC_PACKAGE_VERSION)dnl
-dnl What date of nmh are we building?
+dnl What date of mmh are we building?
DATE=`cat ${srcdir}/DATE`
-echo "configuring for nmh dated $DATE"
+echo "configuring for mmh dated $DATE"
AC_SUBST(DATE)dnl
dnl --------------------------
dnl CHECK COMMAND LINE OPTIONS
dnl --------------------------
-dnl Do you want to debug nmh?
+dnl Do you want to debug mmh?
AC_ARG_ENABLE(debug,
AS_HELP_STRING([--enable-debug],[enable nmh code debugging]))
dnl The old redundant --enable-nmh-debug is deprecated and undocumented.
enable_debug=yes
fi
-dnl Allow users to send email from addresses other than their default?
-AC_ARG_ENABLE(masquerade,
- AS_HELP_STRING([--enable-masquerade='draft_from mmailid username_extension'],
- [enable up to 3 types of address masquerading]),
- [if test x"$enable_masquerade" = x"yes"; then
- masquerade="draft_from mmailid username_extension"
- else
- masquerade="$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]))
AC_DEFINE(DOT_LOCKING)dnl
fi
-dnl What should be the default pager?
-AC_ARG_WITH(pager,
- AS_HELP_STRING([--with-pager=PAGER],[specify the default pager]))
-
-if test -n "$with_pager"; then
- pagerpath="$with_pager"
-fi
dnl ----------------------------------------------------
dnl Default location is /usr/local/mmh/{bin,etc,lib,share/man}
dnl because gcc 4 now produces a lot of new warnings which are probably mostly
dnl spurious and which in any case we don't want to deal with now.
if test "$nmh_cv_has_noptrsign" = "yes"; then
- nmh_gcc_warnflags="-Wall -Wno-pointer-sign"
+ nmh_gcc_warnflags="-Wall -Wno-pointer-sign"
else
- nmh_gcc_warnflags="-Wall"
+ nmh_gcc_warnflags="-Wall"
fi
if test -n "$auto_cflags"; then
else
if test -z "$LDFLAGS"; then
case "$build_os" in
- darwin*)
- LDFLAGS=
+ darwin*)
+ LDFLAGS=
+ ;;
+ *)
+ LDFLAGS=-s
;;
- *)
- LDFLAGS=-s
- ;;
esac
fi
if test -n "$GCC"; then
fi
fi
-AC_C_CONST dnl Does compiler support `const'.
+AC_C_CONST dnl Does compiler support `const'.
dnl ------------------
dnl CHECK FOR PROGRAMS
dnl ------------------
-AC_PROG_MAKE_SET dnl Does make define $MAKE
-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_LEX dnl Check for lex/flex
+AC_PROG_MAKE_SET dnl Does make define $MAKE
+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_LEX dnl Check for lex/flex
dnl Look for `cut'
pathtmp=/usr/bin:/bin:/usr/local/bin:/usr/xpg4/bin:/usr/ucb
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,
- nmh_cv_ls_grpopt,
+ AC_CACHE_CHECK(how to get ls to show us the group ownership of a file,
+ nmh_cv_ls_grpopt,
[if test x"`$lspath -dl / | $AWK '{print $9}'`" = x"/"; then
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 See whether the mail spool directory is world-writable.
if test "$lspath" != "no" -a "$cutpath" != "no"; then
- AC_CACHE_CHECK(whether the mail spool is world-writable,
- nmh_cv_mailspool_world_writable,
+ AC_CACHE_CHECK(whether the mail spool is world-writable,
+ nmh_cv_mailspool_world_writable,
[if test "`$lspath -dlL $mailspool | $cutpath -c9`" = "-"; then
nmh_cv_mailspool_world_writable=no
else
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 \
- 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)
-
+AC_CHECK_HEADERS(fcntl.h crypt.h termcap.h \
+ langinfo.h wchar.h wctype.h iconv.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
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_DEFINE(LINUX_STDIO,1,[Use the Linux _IO_*_ptr defines from <libio.h>.]) ]) ])
AC_CHECK_HEADER([sys/ptem.h], AC_DEFINE(WINSIZE_IN_PTEM,1,
[Define to 1 if `struct winsize' requires <sys/ptem.h>.]),,
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 \
+AC_CHECK_FUNCS(waitpid sigaction sigprocmask sigblock sigsetmask \
+ sighold sigrelse lstat tzset \
getutent nl_langinfo mbtowc wcwidth)
dnl sigsetjmp may be a macro
[Define to 1 if you have the `sigsetjmp'.]) AC_MSG_RESULT(yes)],
[AC_MSG_RESULT(no)])
-AC_REPLACE_FUNCS(memmove snprintf strerror strdup)
-
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
-dnl any system header.
+dnl any system header.
dnl
dnl On Solaris 2.[456], the declaration is in <grp.h>. On HP-UX 9-11 and
dnl (reportedly) FreeBSD 3.[23], it's in <unistd.h>. Any other locations we
dnl need to check?
AH_TEMPLATE(INITGROUPS_HEADER, [Define to the header containing the declaration of `initgroups'.])
AC_EGREP_HEADER(initgroups, grp.h, AC_DEFINE(INITGROUPS_HEADER, <grp.h>),
- AC_EGREP_HEADER(initgroups, unistd.h,
+ AC_EGREP_HEADER(initgroups, unistd.h,
AC_DEFINE(INITGROUPS_HEADER, <unistd.h>)))
-dnl On AIX 4.1, snprintf() is defined in libc.a but there's no prototype in
-dnl <stdio.h> or elsewhere. Apparently it's not officially supported (though it
-dnl seems to work perfectly and IBM apparently uses it in internal code).
-dnl Anyhow, if we omit our own snprintf() and vsnprintf() prototypes when we
-dnl HAVE_SNPRINTF, we get a billion warnings at compile time. Use the C
-dnl preprocessor to preprocess stdio.h and make sure that there's actually a
-dnl prototype.
-AC_EGREP_HEADER(snprintf, stdio.h, AC_DEFINE(HAVE_SNPRINTF_PROTOTYPE,1,
- [Define to 1 if <stdio.h> has a prototype for snprintf().]))
-
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
[Define as const if the declaration of iconv() needs const.])
fi
-dnl --------------
-dnl CHECK FOR NDBM
-dnl --------------
-
-AC_ARG_WITH([ndbm],AS_HELP_STRING([--with-ndbm=ARG],[use -lARG to link with ndbm]),
- [nmh_ndbm=$withval],[nmh_ndbm=autodetect])
-AC_ARG_WITH([ndbmheader],AS_HELP_STRING([--with-ndbmheader=ARG],[#include <ARG> to use ndbm]),
- [nmh_ndbmheader=$withval],[nmh_ndbmheader=autodetect])
-
-if test "$nmh_ndbm" = "autodetect"; then
- if test "$nmh_ndbmheader" != "autodetect"; then
- AC_MSG_ERROR([must specify both --with-ndbm and --with-ndbmheader or neither])
- else
-
- dnl There are at least four implementations of ndbm, and
- dnl several of those can be in different places at the whim
- dnl of the system integrator. A good summary of this mess
- dnl can be found at http://www.unixpapa.com/incnote/dbm.html
-
- dnl Classic ndbm with no library required (eg NetBSD): try this
- dnl first so we don't accidentally link in a pointless but harmless
- dnl library in one of the later ndbm.h+libfoo tests:
- NMH_CHECK_NDBM(ndbm.h,,,
- dnl Berkeley DBv2 emulating ndbm: header in db.h:
- NMH_CHECK_NDBM(db.h,db,,
- dnl Berkeley DBv1 emulating ndbm:
- NMH_CHECK_NDBM(ndbm.h,db,,
- NMH_CHECK_NDBM(ndbm.h,db1,,
- dnl Classic ndbm:
- NMH_CHECK_NDBM(ndbm.h,ndbm,,
- dnl glibc2.1 systems put db1 in a subdir:
- NMH_CHECK_NDBM(db1/ndbm.h,db1,,
- dnl GNU gdbm emulating ndbm, with header possibly in gdbm/
- dnl and possibly needing gbdm_compat library:
- NMH_CHECK_NDBM(gdbm/ndbm.h,gdbm,,
- NMH_CHECK_NDBM(gdbm/ndbm.h,gdbm_compat -lgdbm,,
- NMH_CHECK_NDBM(ndbm.h,gdbm,,
- NMH_CHECK_NDBM(ndbm.h,gdbm_compat -lgdbm))))))))))
-
- fi
-else
- dnl We don't really need to check that the user-specified values work,
- dnl but it is a convenience to the user to bomb out early rather than
- dnl after configure and half the compile process.
- NMH_CHECK_NDBM([$nmh_ndbmheader],[$nmh_ndbm])
-fi
-
-if test "$nmh_ndbm_found" = "no"; then
- AC_MSG_ERROR([could not find a working ndbm library/header combination])
-else
- dnl Now export the lib/header to our makefile/config.h:
- if test x"$nmh_ndbmheader" != x; then
- AC_DEFINE_UNQUOTED(NDBM_HEADER, <$nmh_ndbmheader>,
- [Define to the header containing the ndbm API prototypes.])
- fi
- if test x"$nmh_ndbm" != x; then
- NDBM_LIBS="-l$nmh_ndbm"
- else
- NDBM_LIBS=
- fi
- AC_SUBST(NDBM_LIBS)
-fi
-
dnl ---------------------
dnl CHECK TERMCAP LIBRARY
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().
[AC_TRY_RUN([
main()
{
- char buf[4096];
- int r1 = tgetent(buf, "vt100");
- int r2 = tgetent((char*)0,"vt100");
- if (r1 >= 0 && r1 == r2) {
- char tbuf[1024], *u;
- u = tbuf;
- tgetstr("cl", &u);
- creat("conftest.tgetent", 0640);
- }
- exit((r1 != r2) || r2 == -1);
+ char buf[4096];
+ int r1 = tgetent(buf, "vt100");
+ int r2 = tgetent(NULL,"vt100");
+ if (r1 >= 0 && r1 == r2) {
+ char tbuf[1024], *u;
+ u = tbuf;
+ tgetstr("cl", &u);
+ creat("conftest.tgetent", 0640);
+ }
+ exit((r1 != r2) || r2 == -1);
}
],
if test -f conftest.tgetent; then
[AC_TRY_RUN([
main()
{
- char buf[4096];
- int r1 = tgetent(buf, "!@#$%^&*");
- int r2 = tgetent(buf, "vt100");
- if (r1 < 0 && r2 == 0) {
- char tbuf[1024], *u;
- u = tbuf;
- tgetstr("cl", &u);
- creat("conftest.tgetent0", 0640);
- }
- exit(r1 == r2);
+ char buf[4096];
+ int r1 = tgetent(buf, "!@#$%^&*");
+ int r2 = tgetent(buf, "vt100");
+ if (r1 < 0 && r2 == 0) {
+ char tbuf[1024], *u;
+ u = tbuf;
+ tgetstr("cl", &u);
+ creat("conftest.tgetent0", 0640);
+ }
+ exit(r1 == r2);
}
],
if test -f conftest.tgetent0; then
/dev/null; dnl Just in case we fall through
do
test -f $SIGNAL_H && \
- grep '#[ ]*define[ ][ ]*SIG[0-9A-Z]*[ ]*[0-9][0-9]*' $SIGNAL_H > /dev/null && \
+ grep '#[ ]*define[ ][ ]*SIG[0-9A-Z]*[ ]*[0-9][0-9]*' $SIGNAL_H > /dev/null && \
break
done
nmh_cv_path_signal_h=$SIGNAL_H
sunos4*)
AC_DEFINE(BSD42)
;;
- freebsd*)
+ freebsd*)
AC_DEFINE(BSD42)
;;
netbsd*)
dnl OUTPUT MAKEFILES
dnl ----------------
AC_CONFIG_FILES(Makefile config/Makefile h/Makefile sbr/Makefile uip/Makefile \
- etc/Makefile docs/Makefile man/Makefile)
+ etc/Makefile docs/Makefile man/Makefile)
AC_CONFIG_COMMANDS([stamp],[test -z "$CONFIG_HEADERS" || echo > stamp-h])
AC_OUTPUT
eval "nmhman=${mandir}"; eval "nmhman=${nmhman}"
echo "
-nmh configuration
+mmh configuration
-----------------
-nmh version : AC_PACKAGE_VERSION
+mmh version : AC_PACKAGE_VERSION
target os : ${target}
compiler : ${CC}
compiler flags : ${CFLAGS}
man page install path : ${nmhman}
sendmail path : ${sendmailpath}
+mail spool : ${mailspool}
file locking type : ${LOCKTYPE}
-email address masq. : ${masquerade}
"