X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/0cd4ef27dfd7ab539a3217287795d4d9732c18d0..0287c2e441fbc748cb11f96a5afd6dbdf68b0818:/configure.ac?ds=sidebyside diff --git a/configure.ac b/configure.ac index d73f376e..10da4b34 100644 --- a/configure.ac +++ b/configure.ac @@ -28,72 +28,49 @@ 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. -if test x"$enable_nmh_debug" = x"yes"; then - enable_debug=yes -fi +AS_IF([test x"$enable_nmh_debug" = x"yes"], [enable_debug=yes]) 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"]) + [AS_IF([test x"$enable_masquerade" = x"yes"], + [masquerade="draft_from mmailid username_extension"], + [masquerade="$enable_masquerade"])], + [masquerade="draft_from mmailid username_extension"]) AC_SUBST(masquerade)dnl -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])) -dnl The old redundant --enable-nmh-pop is deprecated and undocumented. -if test x"$enable_nmh_pop" = x"yes"; then - enable_pop=yes -fi - dnl Do you want to disable use of locale functions AH_TEMPLATE([LOCALE], [Undefine if you don't want locale features. By default this is defined.]) AC_ARG_ENABLE([locale], -AC_HELP_STRING([--disable-locale], [turn off locale features]), -[if test x$enableval = xyes; then - AC_DEFINE(LOCALE) -fi], -AC_DEFINE(LOCALE) -) + [AC_HELP_STRING([--disable-locale], [turn off locale features])], + [AS_IF([test x$enableval = xyes], [AC_DEFINE(LOCALE)])], + [AC_DEFINE(LOCALE)]) 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], AS_HELP_STRING([--with-cyrus-sasl], [Enable SASL support via the Cyrus SASL library])) -if test x"$with_cyrus_sasl" != x -a x"$with_cyrus_sasl" != x"no"; then - AC_DEFINE([CYRUS_SASL], [1], - [Define to use the Cyrus SASL library for authentication of POP and SMTP.])dnl - if test x"$with_cyrus_sasl" != xyes; then - AC_MSG_WARN([Arguments to --with-cyrus-sasl now ignored]) - AC_MSG_WARN([Please pass the appropriate arguments to CPPFLAGS/LDFLAGS]) - fi - sasl_support=yes -else - sasl_support=no -fi +AS_IF([test x"$with_cyrus_sasl" != x -a x"$with_cyrus_sasl" != x"no"],[ + AC_DEFINE([CYRUS_SASL], [1], + [Define to use the Cyrus SASL library for authentication of POP and SMTP.])dnl + AS_IF([test x"$with_cyrus_sasl" != xyes],[ + AC_MSG_WARN([Arguments to --with-cyrus-sasl now ignored]) + AC_MSG_WARN([Please pass the appropriate arguments to CPPFLAGS/LDFLAGS])]) + sasl_support=yes], [sasl_support=no]) dnl Do you want client-side support for encryption with TLS? AC_ARG_WITH([tls], AS_HELP_STRING([--with-tls], [Enable TLS support])) -if test x"$with_tls" != x -a x"$with_tls" != x"no"; then - AC_DEFINE([TLS_SUPPORT], [1], [Support TLS for session encryption.])dnl - tls_support=yes -else - tls_support=no -fi +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]) dnl What should be the default editor? AC_ARG_WITH([editor], AS_HELP_STRING([--with-editor=EDITOR],[specify the default editor])) -if test -n "$with_editor"; then - editorpath="$with_editor" -fi +AS_IF([test -n "$with_editor"], [editorpath="$with_editor"]) dnl Set the backup prefix AC_ARG_WITH([hash-backup], @@ -106,13 +83,6 @@ fi 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 After we know if we're including apop and kpop support, do pop stuff -if test x"$enable_pop" = x"yes"; then - AC_DEFINE([POP], 1, - [Define this to compile client-side support for pop into inc and msgchk.])dnl -fi -AM_CONDITIONAL([POP_SUPPORT], [test x"$enable_pop" = x"yes"]) - dnl What method of locking to use? AC_ARG_WITH(locking, AS_HELP_STRING([--with-locking=@<:@dot|fcntl|flock|lockf@:>@], @@ -151,13 +121,9 @@ AC_ARG_WITH([mts], AS_HELP_STRING([--with-mts=@<:@smtp|sendmail@:>@], [specify the default mail transport agent/service])) -if test x"$with_mts" = x"smtp"; then - MTS="smtp" -elif test x"$with_mts" = x"sendmail"; then - MTS="sendmail" -else - MTS="smtp" -fi +AS_IF([test x"$with_mts" = x"smtp"], [MTS="smtp"], + [test x"$with_mts" = x"sendmail"], [MTS="sendmail"], + [MTS="smtp"]) AC_SUBST([MTS])dnl dnl Both the smtp and sendmail mail transport services use the smtp code @@ -176,11 +142,8 @@ 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@:>@])) -if test -n "$with_smtpservers"; then - smtpservers="$with_smtpservers" -else - smtpservers="localhost" -fi +AS_IF([test -n "$with_smtpservers"], [smtpservers="$with_smtpservers"], + [smtpservers="localhost"]) AC_SUBST([smtpservers])dnl dnl ---------------------------------------------------- @@ -215,11 +178,10 @@ if test "$nmh_cv_has_unusedmacros" = 'yes'; then fi AC_SUBST(DISABLE_UNUSED_MACROS_WARNING)dnl -AC_CACHE_CHECK([whether compiler supports -Wextra], [nmh_cv_wextra], +AC_CACHE_CHECK([whether compiler supports -Wextra], [nmh_cv_has_wextra], [nmh_saved_cflags="$CFLAGS" CFLAGS="$CFLAGS -Wextra -Wno-clobbered" - AC_COMPILE_IFELSE([AC_LANG_PROGRAM()], - [nmh_cv_wextras=' -Wextra -Wno-clobbered'], [echo $ECHO_N "no$ECHO_C"]) + 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], @@ -230,16 +192,24 @@ AC_CACHE_CHECK([whether compiler supports -Wno-pointer-sign], [nmh_cv_has_noptrs dnl if the user hasn't specified CFLAGS, then dnl if compiler is gcc, then -dnl use -O2 and some warning flags +dnl use -O2 and some warning flags dnl else use -O 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. if test "$nmh_cv_has_noptrsign" = "yes"; then - nmh_gcc_warnflags="-Wall$nmh_cv_wextra -Wno-pointer-sign" + 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 else - nmh_gcc_warnflags="-Wall$nmh_cv_wextra" + if test "$nmh_cv_has_wextra" = "yes"; then + nmh_gcc_warnflags="-Wall -Wextra -Wno-clobbered" + else + nmh_gcc_warnflags="-Wall" + fi fi if test -n "$auto_cflags"; then @@ -344,9 +314,7 @@ AC_PATH_PROG([vipath], [vi], [/bin/vi], [$pathtmp]) dnl If editor is not specified yet, dnl then use `vi' as the default. -if test -z "$editorpath"; then - editorpath="$vipath" -fi +AS_IF([test -z "$editorpath"], [editorpath="$vipath"]) AC_SUBST([editorpath])dnl dnl ---------------------------------------------------------- @@ -470,7 +438,7 @@ dnl ------------------- dnl CHECK FOR LIBRARIES dnl ------------------- dnl Check location of modf -AC_CHECK_FUNC(modf, , AC_CHECK_LIB(m, modf)) +AC_CHECK_FUNC([modf], , AC_CHECK_LIB([m], [modf])) dnl Checks for network libraries (nsl, socket) NMH_CHECK_NETLIBS @@ -480,6 +448,10 @@ for lib in $termcap_curses_order; do AC_CHECK_LIB(${lib}, tgetent, [TERMLIB="-l$lib"; break]) done AC_SUBST([TERMLIB])dnl +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?])]) + dnl --------------- dnl CHECK FOR ICONV @@ -741,6 +713,19 @@ nmh_cv_path_signal_h=$SIGNAL_H SIGNAL_H=$nmh_cv_path_signal_h AC_SUBST(SIGNAL_H)dnl +dnl +dnl Sigh, this is required because under the new world order autoconf has +dnl nothing to create in a few of the build directories when doing an object +dnl tree build. So make sure we created certain directories if they don't +dnl exist. +dnl + +AC_CONFIG_COMMANDS([build-directories], +[test -d etc || ${MKDIR_P} etc +test -d man || ${MKDIR_P} man]) + +AC_CONFIG_COMMANDS_POST([ + dnl These odd looking assignments are done to expand out unexpanded dnl variables in bindir et al (for instance mandir is '${datarootdir}/man', dnl but expanding that gives '${prefix}/share/man', so we need to expand @@ -754,23 +739,6 @@ 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 - pop_kinds="yes (POP3)" -fi - -dnl -dnl Sigh, this is required because under the new world order autoconf has -dnl nothing to create in a few of the build directories when doing an object -dnl tree build. So make sure we created certain directories if they don't -dnl exist. -dnl - -AC_CONFIG_COMMANDS([build-directories], -[test -d etc || ${MKDIR_P} etc -test -d man || ${MKDIR_P} man]) - -AC_CONFIG_COMMANDS_POST([ echo " nmh configuration ----------------- @@ -793,7 +761,6 @@ default smtp servers : ${smtpservers} default editor : ${editorpath} default pager : ${pagerpath} email address masquerading : ${masquerade} -pop is enabled : ${pop_kinds} SASL support : ${sasl_support} TLS support : ${tls_support}" echo ""])