]> diplodocus.org Git - nmh/blobdiff - configure.ac
Explictly return the exit code, so we can portably guarantee that
[nmh] / configure.ac
index 750b1e74f47d81d4ed60fda8c4eb85aaa6948f88..61a8beb27d3c02dec56e05215f9cac97f38ddcd0 100644 (file)
@@ -119,6 +119,22 @@ if test -n "$auto_cflags"; then
        CFLAGS="$nmh_saved_cflags"])
     test "$nmh_cv_has_dash_ansi" = "yes"  &&  \
       CFLAGS="${CFLAGS:+$CFLAGS }-ansi -pedantic"
        CFLAGS="$nmh_saved_cflags"])
     test "$nmh_cv_has_dash_ansi" = "yes"  &&  \
       CFLAGS="${CFLAGS:+$CFLAGS }-ansi -pedantic"
+
+    dnl For Ubuntu gcc 4.8.1, with -O2.  It would be better to fix all these,
+    dnl but until then, suppress the warning.
+    AC_CACHE_CHECK([whether compiler needs -Wno-unused-result],
+                   [nmh_cv_needs_wnur],
+                   [nmh_saved_cflags="$CFLAGS"
+                    CFLAGS="$CFLAGS -Werror -O2"
+                    AC_COMPILE_IFELSE([AC_LANG_PROGRAM([#include <unistd.h>],
+                                        [extern const char *path;
+                                         chdir (path);
+                                         return 0;])],
+                                       [nmh_cv_needs_wnur=no],
+                                       [nmh_cv_needs_wnur=yes])
+                    CFLAGS="$nmh_saved_cflags"])
+    AS_IF([test "$nmh_cv_needs_wnur" = yes],
+          [CFLAGS="${CFLAGS:+$CFLAGS }-Wno-unused-result"])
   else
     dnl Use -v and some other options with SunStudio cc.  lex produces
     dnl code that causes unreachable-statement warnings.  It might be
   else
     dnl Use -v and some other options with SunStudio cc.  lex produces
     dnl code that causes unreachable-statement warnings.  It might be
@@ -148,40 +164,29 @@ fi
 dnl --------------
 dnl CUSTOMIZE LINK
 dnl --------------
 dnl --------------
 dnl CUSTOMIZE LINK
 dnl --------------
-if test `uname` = OpenBSD; then
-  dnl Filter out "often/almost always misused" warnings from OpenBSD linker.
-  [POSTLINK="2>&1 | egrep -v ': [w]arning: s[a-z]+\(\) is \
-(almost always|often) misused, please use'; true"]
-fi
+AS_IF([test `uname` = OpenBSD],
+      dnl Munge "often/almost always misused" warnings from OpenBSD linker
+      dnl so that they don't color the waterfall.
+      [POSTLINK="2>&1 | sed -e \
+'s/: w\(arning: s.*() is .* misused, please use\)/: W\1/'"])
 AC_SUBST([POSTLINK])
 
 dnl -----------------
 dnl CUSTOMIZE LDFLAGS
 dnl -----------------
 AC_SUBST([POSTLINK])
 
 dnl -----------------
 dnl CUSTOMIZE LDFLAGS
 dnl -----------------
-if test "$GCC" = yes; then
-  dnl Disable clang complaint about unused -ansi when linking.
-  AC_CACHE_CHECK([whether linker supports -Qunused-arguments],
-                 [nmh_cv_has_q_unused_arguments],
-                 [nmh_saved_ldflags="$LDFLAGS"
-                  LDFLAGS="$LDFLAGS -Qunused-arguments"
-                  AC_TRY_LINK([],[],nmh_cv_has_q_unused_arguments=yes,
-                                    nmh_cv_has_q_unused_arguments=no)
-                  LDFLAGS="$nmh_saved_ldflags"])
-  test "$nmh_cv_has_q_unused_arguments" = "yes"  &&  \
-    LDFLAGS="${LDFLAGS:+$LDFLAGS }-Qunused-arguments"
-fi
-
-dnl This really shouldn't be necessary.  And we really shouldn't add -s.
-if test x"$enable_debug" = x"yes"; then
-  test -z "$LDFLAGS" && LDFLAGS=-g
-else
-  if test -z "$LDFLAGS"; then
-    case "$build_os" in
-      darwin*) LDFLAGS= ;;
-            *) LDFLAGS=-s ;;
-    esac
-  fi
-fi
+dnl Disable clang complaint about unused -ansi when linking.
+AC_CACHE_CHECK([whether linker supports -Qunused-arguments],
+               [nmh_cv_has_q_unused_arguments],
+               [AS_IF([test "$GCC" = yes  &&  `${CC} --version 2>&1 | \
+                       grep clang >/dev/null`],
+                      [nmh_saved_ldflags="$LDFLAGS"
+                       LDFLAGS="$LDFLAGS -Qunused-arguments"
+                       AC_TRY_LINK([],[],nmh_cv_has_q_unused_arguments=yes,
+                                         nmh_cv_has_q_unused_arguments=no)
+                       LDFLAGS="$nmh_saved_ldflags"],
+                       [nmh_cv_has_q_unused_arguments=no])])
+test "$nmh_cv_has_q_unused_arguments" = "yes"  &&  \
+  LDFLAGS="${LDFLAGS:+$LDFLAGS }-Qunused-arguments"
 
 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
@@ -308,18 +313,8 @@ AC_CACHE_CHECK(what group owns the mail spool, nmh_cv_ls_mail_grp,
 MAIL_SPOOL_GRP=$nmh_cv_ls_mail_grp
 AC_SUBST([MAIL_SPOOL_GRP])dnl
 
 MAIL_SPOOL_GRP=$nmh_cv_ls_mail_grp
 AC_SUBST([MAIL_SPOOL_GRP])dnl
 
-dnl ---------------------------------------------
-dnl CHECK FOR PROGRAM TO PROVIDE MIME TYPE STRING
-dnl ---------------------------------------------
-AS_IF([file --mime "${srcdir}"/configure >/dev/null 2>&1],
-      [AS_IF([file --brief --mime "${srcdir}"/configure >/dev/null 2>&1],
-             [nmh_mimetypeproc='"file --brief --mime"'],
-             [nmh_mimetypeproc='"file --mime"'])])
-AS_CASE([$nmh_mimetypeproc], [?*],
-        [AC_DEFINE_UNQUOTED([MIMETYPEPROC], [$nmh_mimetypeproc],
-          [Program, with arguments, that provides MIME type string.])])
-AS_ECHO_N(["AS_ESCAPE([checking program to provide MIME type string ... ])"])
-AS_ECHO(["AS_ESCAPE([$nmh_mimetypeproc], [""])"])
+NMH_MIMETYPEPROC
+NMH_MIMEENCODINGPROC
 
 dnl ------------------
 dnl CHECK HEADER FILES
 
 dnl ------------------
 dnl CHECK HEADER FILES
@@ -374,9 +369,6 @@ dnl -------------------
 dnl Checks for network libraries (nsl, socket)
 NMH_CHECK_NETLIBS
 
 dnl Checks for network libraries (nsl, socket)
 NMH_CHECK_NETLIBS
 
-dnl Check for readline support
-NMH_READLINE
-
 dnl Check the locking functions supported and what we should use by default
 NMH_LOCKING
 
 dnl Check the locking functions supported and what we should use by default
 NMH_LOCKING
 
@@ -392,8 +384,11 @@ for lib in $termcap_curses_order; do
 done
 AC_SUBST([TERMLIB])dnl
 AS_IF([test "x$TERMLIB" = "x"],
 done
 AC_SUBST([TERMLIB])dnl
 AS_IF([test "x$TERMLIB" = "x"],
-      [AC_MSG_FAILURE([Could not find setupterm in any library.  Is there a curses
-or ncurses library or package that you can install?])])
+      [AC_MSG_FAILURE([Could not find setupterm in any library.  Is there a
+curses or ncurses library or package that you can install?])])
+
+dnl Check for readline support
+NMH_READLINE
 
 dnl --------------
 dnl CHECK FOR NDBM
 
 dnl --------------
 dnl CHECK FOR NDBM
@@ -486,11 +481,14 @@ dnl CHECK FOR OPENSSL
 dnl -----------------
 
 AS_IF([test x"$tls_support" = x"yes"],[
 dnl -----------------
 
 AS_IF([test x"$tls_support" = x"yes"],[
+  dnl OpenBSD 5 needs the other-libraries (fourth argument) to the
+  dnl AC_CHECK_LIB for SSL_library_init, because it doesn't
+  dnl automatically append -lcrypto when linking with -lssl.
   AC_CHECK_HEADER([openssl/ssl.h], , [AC_MSG_ERROR([openssl/ssl.h not found])])
   AC_CHECK_LIB([crypto], [BIO_write], [TLSLIB="-lcrypto"],
     [AC_MSG_ERROR([OpenSSL crypto library not found])])
   AC_CHECK_LIB([ssl], [SSL_library_init], [TLSLIB="-lssl $TLSLIB"],
   AC_CHECK_HEADER([openssl/ssl.h], , [AC_MSG_ERROR([openssl/ssl.h not found])])
   AC_CHECK_LIB([crypto], [BIO_write], [TLSLIB="-lcrypto"],
     [AC_MSG_ERROR([OpenSSL crypto library not found])])
   AC_CHECK_LIB([ssl], [SSL_library_init], [TLSLIB="-lssl $TLSLIB"],
-    [AC_MSG_ERROR([OpenSSL library not found])])],
+    [AC_MSG_ERROR([OpenSSL library not found])],[$TLSLIB])],
   [TLSLIB=])
 AC_SUBST([TLSLIB])
 
   [TLSLIB=])
 AC_SUBST([TLSLIB])
 
@@ -503,11 +501,9 @@ dnl http://sourceforge.net/p/flex/bugs/140/
 AS_IF([test "$LEX" = flex],
       [AS_CASE([`$LEX -V`],
                [flex\ 2.5.35], [LFLAGS=\
 AS_IF([test "$LEX" = flex],
       [AS_CASE([`$LEX -V`],
                [flex\ 2.5.35], [LFLAGS=\
-'; printf "%s\n" '\''1,$$s/(size_t) \(num_to_read\)/\1/'\'' w q | ed -s $@; \
-true'],
+'; sed -e "s/  int n;/ size_t n;/" $@ >$@.tmp && mv -f $@.tmp $@; true'],
                [flex\ 2.5.36], [LFLAGS=\
                [flex\ 2.5.36], [LFLAGS=\
-'; printf "%s\n" '\''1,$$s/\(  \)int i;/\1yy_size_t i;/'\'' w q | ed -s $@; \
-true'])
+'; sed -s "s/\(        \)int i;/\1yy_size_t i;/" $@ >$.tmp && mv -f $@.tmp $@; true'])
        AC_SUBST([LFLAGS])])
 
 dnl ----------------
        AC_SUBST([LFLAGS])])
 
 dnl ----------------