]> diplodocus.org Git - nmh/blobdiff - configure.ac
Suppress getcanon exit status check.
[nmh] / configure.ac
index 02a392434fe94a3291dc0bf3eeedfc46e94eac07..ae98df841fcec2b06995cdea30a779aab87e3dbc 100644 (file)
@@ -27,13 +27,10 @@ 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]))
 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]))
-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])
+AS_IF([test x"$with_cyrus_sasl" != x -a x"$with_cyrus_sasl" != xyes -a \
+            x"$with_cyrus_sasl" != xno],[
+  AC_MSG_WARN([Arguments to --with-cyrus-sasl now ignored])
+  AC_MSG_WARN([Please pass the appropriate arguments to CPPFLAGS/LDFLAGS])])
 
 dnl Do you want client-side support for encryption with TLS?
 AC_ARG_WITH([tls], AS_HELP_STRING([--with-tls], [Enable TLS support]))
 
 dnl Do you want client-side support for encryption with TLS?
 AC_ARG_WITH([tls], AS_HELP_STRING([--with-tls], [Enable TLS support]))
@@ -165,8 +162,10 @@ if test "$GCC" = yes; then
   dnl If the user configures with a CFLAGS that contains a -O flag
   dnl but then removes it a make time, they'll also have to remove
   dnl -D_FORTIFY_SOURCE from AM_CPPFLAGS because it requires optimization.
   dnl If the user configures with a CFLAGS that contains a -O flag
   dnl but then removes it a make time, they'll also have to remove
   dnl -D_FORTIFY_SOURCE from AM_CPPFLAGS because it requires optimization.
+  dnl Use "\ " instead of ' ' or " " for compatiblity with posh.
   AS_CASE([$CFLAGS],
   AS_CASE([$CFLAGS],
-          [-O*|*' -O'*],[AM_CPPFLAGS="${AM_CPPFLAGS:+$AM_CPPFLAGS }-D_FORTIFY_SOURCE=2"])
+          [-O|*\ -O|-O[[!0]]*|*\ -O[[!0]]*],
+          [AM_CPPFLAGS="${AM_CPPFLAGS:+$AM_CPPFLAGS }-D_FORTIFY_SOURCE=2"])
 fi
 
 dnl FreeBSD needs a bit of magic to bring getline() into scope.
 fi
 
 dnl FreeBSD needs a bit of magic to bring getline() into scope.
@@ -213,6 +212,7 @@ AC_CACHE_CHECK([whether linker supports -Qunused-arguments],
                        [nmh_cv_has_q_unused_arguments=no])])
 test "$nmh_cv_has_q_unused_arguments" = "yes"  &&  \
   AM_LDFLAGS="${AM_LDFLAGS:+$AM_LDFLAGS }-Qunused-arguments"
                        [nmh_cv_has_q_unused_arguments=no])])
 test "$nmh_cv_has_q_unused_arguments" = "yes"  &&  \
   AM_LDFLAGS="${AM_LDFLAGS:+$AM_LDFLAGS }-Qunused-arguments"
+AC_SUBST([AM_LDFLAGS])
 
 dnl This hack turns off assertions by default, assuming
 dnl that configure still uses this shell variable.  Without
 
 dnl This hack turns off assertions by default, assuming
 dnl that configure still uses this shell variable.  Without
@@ -455,12 +455,31 @@ dnl --------------------
 dnl CHECK FOR CYRUS-SASL
 dnl --------------------
 
 dnl CHECK FOR CYRUS-SASL
 dnl --------------------
 
-AS_IF([test x"$sasl_support" = x"yes"],[
-  AC_CHECK_HEADER([sasl/sasl.h], , [AC_MSG_ERROR([sasl.h not found])])
-  AC_CHECK_LIB([sasl2], [sasl_client_new], [SASLLIB="-lsasl2"],
-    [AC_MSG_ERROR([Cyrus SASL library not found])])],[SASLLIB=""])
+AS_IF([test x"$with_cyrus_sasl" != x"no"],[
+  AC_CHECK_HEADER([sasl/sasl.h], HAVE_SASL_H=1)
+  AC_CHECK_LIB([sasl2], [sasl_client_new], [SASLLIB="-lsasl2"])])
 AC_SUBST([SASLLIB])
 
 AC_SUBST([SASLLIB])
 
+dnl -----------------
+dnl Enable SASL?
+dnl -----------------
+dnl By default (with_cyrus_sasl=''), enable SASL if header and lib are found.
+dnl If SASL requested (--with-cyrus-sasl with_cyrus_sasl=yes), error if header or lib not found.
+dnl If SASL disabled (--without-cyrus-sasl with_cyrus_sasl=no), don't enable it.
+sasl_support=no
+CYRUS_SASL=0
+AC_SUBST([CYRUS_SASL])
+AS_IF([test "x$with_cyrus_sasl" = xyes && test "x$HAVE_SASL_H" = x],
+      [AC_MSG_ERROR([SASL requested but sasl.h not found])],
+      [test "x$with_cyrus_sasl" = xyes && test "x$SASLLIB" = x],
+      [AC_MSG_ERROR([SASL requested but Cyrus SASL library not found])],
+      [test "x$with_cyrus_sasl" != xno && test "x$HAVE_SASL_H" = x1 &&
+       test "x$SASLLIB" != x],
+      [AC_DEFINE([CYRUS_SASL], [1],
+        [Define to use the Cyrus SASL library for authentication of POP and SMTP.])
+       CYRUS_SASL=1
+       sasl_support=yes])
+
 dnl -----------------
 dnl CHECK FOR OPENSSL
 dnl -----------------
 dnl -----------------
 dnl CHECK FOR OPENSSL
 dnl -----------------
@@ -491,7 +510,11 @@ AS_IF([test "x$with_tls" = xyes && test "x$HAVE_SSL_H" = x],
       [test "x$with_tls" != xno && test "x$HAVE_SSL_H" = x1 && test "x$TLSLIB" != x],
       [AC_DEFINE([TLS_SUPPORT], [1], [Support TLS for session encryption.])
        TLS_SUPPORT=1
       [test "x$with_tls" != xno && test "x$HAVE_SSL_H" = x1 && test "x$TLSLIB" != x],
       [AC_DEFINE([TLS_SUPPORT], [1], [Support TLS for session encryption.])
        TLS_SUPPORT=1
-       tls_support=yes])
+       tls_support=yes
+       save_LIBS="$LIBS"
+       LIBS="$LIBS $TLSLIB"
+       AC_CHECK_FUNCS([X509_VERIFY_PARAM_set1_host])
+       LIBS="$save_LIBS"])
 
 dnl -----------------
 dnl CHECK FOR CURL
 
 dnl -----------------
 dnl CHECK FOR CURL
@@ -548,6 +571,8 @@ AS_IF([test "$LEX" = flex],
 '; sed "s/     int n;/ size_t n;/" $@ >$@.tmp && mv -f $@.tmp $@'],
                [flex\ 2.5.3[[67]]], [AM_LFLAGS=\
 '; sed "s/\(   \)int i;/\1yy_size_t i;/" $@ >$@.tmp && mv -f $@.tmp $@'],
 '; sed "s/     int n;/ size_t n;/" $@ >$@.tmp && mv -f $@.tmp $@'],
                [flex\ 2.5.3[[67]]], [AM_LFLAGS=\
 '; sed "s/\(   \)int i;/\1yy_size_t i;/" $@ >$@.tmp && mv -f $@.tmp $@'],
+               [flex\ 2.6.0], [AM_LFLAGS=\
+'; sed "s/, num_to_read/, (size_t) num_to_read/" $@ >$@.tmp && mv -f $@.tmp $@'],
                [flex\ 2.6.1], [AM_LFLAGS=\
 '; sed '\''/\<int num_to_read\>/s/int/size_t/; s/\<yy_size_t i\>/int i/'\'' $@ >$@.tmp && mv -f $@.tmp $@'])
        AC_SUBST([AM_LFLAGS])])
                [flex\ 2.6.1], [AM_LFLAGS=\
 '; sed '\''/\<int num_to_read\>/s/int/size_t/; s/\<yy_size_t i\>/int i/'\'' $@ >$@.tmp && mv -f $@.tmp $@'])
        AC_SUBST([AM_LFLAGS])])
@@ -566,7 +591,12 @@ dnl ----------------
 dnl For platforms such as FreeBSD that have tm_gmtoff in struct tm.
 dnl (FreeBSD has a timezone() function but not a timezone global
 dnl variable that is visible).
 dnl For platforms such as FreeBSD that have tm_gmtoff in struct tm.
 dnl (FreeBSD has a timezone() function but not a timezone global
 dnl variable that is visible).
-AC_CHECK_MEMBERS([struct tm.tm_gmtoff],,,[#include <time.h>])
+dnl On Linux, $AM_CPPFLAGS contains -D_GNU_SOURCE, which makes
+dnl tm_gmtoff visible.
+nmh_saved_CPPFLAGS="$CPPFLAGS"
+CPPFLAGS="$AM_CPPFLAGS $CPPFLAGS"
+AC_CHECK_MEMBERS([struct tm.tm_gmtoff],,,[[#include <time.h>]])
+CPPFLAGS="$nmh_saved_CPPFLAGS"
 
 AC_STRUCT_DIRENT_D_TYPE
 
 
 AC_STRUCT_DIRENT_D_TYPE