]> diplodocus.org Git - nmh/commitdiff
That didn't quite work, try reducing size of warning filter
authorDavid Levine <levinedl@acm.org>
Sat, 14 Dec 2013 14:37:11 +0000 (08:37 -0600)
committerDavid Levine <levinedl@acm.org>
Sat, 14 Dec 2013 14:37:11 +0000 (08:37 -0600)
temporarily.

configure.ac

index aaa6d057f8466c597be157b03484f84652314f32..9edcbdd3659b9f83275aba09e0c0e1b3674e8f9c 100644 (file)
@@ -92,72 +92,57 @@ dnl CHECK THE COMPILER
 dnl ------------------
 dnl We want these before the checks,
 dnl so the checks can modify their values.
 dnl ------------------
 dnl We want these before the checks,
 dnl so the checks can modify their values.
-test -z "$CFLAGS" && CFLAGS= auto_cflags=1
+test -z "$CFLAGS"  &&  auto_cflags=1
 
 AC_PROG_CC([cc gcc])
 AM_PROG_CC_C_O
 
 
 AC_PROG_CC([cc gcc])
 AM_PROG_CC_C_O
 
-dnl Use -v and some other options with SunStudio cc.
-AS_CASE([`${CC} -V 2>&1`],
-       [cc:\ Sun\ C*], [CFLAGS="${CFLAGS:+$CFLAGS }-v -errtags=yes"
-                        CFLAGS="${CFLAGS} -erroff=E_STATEMENT_NOT_REACHED"])
-
-AC_CACHE_CHECK([whether compiler supports -Wextra], [nmh_cv_has_wextra],
-[nmh_saved_cflags="$CFLAGS"
- CFLAGS="$CFLAGS -Wextra -Werror"
- AC_TRY_COMPILE([],[],nmh_cv_has_wextra=yes,nmh_cv_has_wextra=no)
- CFLAGS="$nmh_saved_cflags"])
-
-dnl Can't use -ansi with gcc 4.5.3 on Cygwin, at least through setup
-dnl version 2.763, because it disables some features in the system
-dnl header files and warns about them with -Wall.  Try to test for
-dnl 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   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_dash_ansi" = "yes"; then
-    nmh_gcc_warnflags="-ansi -pedantic -Wall"
-else
-    nmh_gcc_warnflags="-Wall"
-fi
-if test "$nmh_cv_has_wextra" = "yes"; then
-    nmh_gcc_warnflags="${nmh_gcc_warnflags} -Wextra"
-fi
-
+dnl ----------------
+dnl CUSTOMIZE CFLAGS
+dnl ----------------
 if test -n "$auto_cflags"; then
 if test -n "$auto_cflags"; then
-  if test x"$enable_debug" = x"yes"; then
-    if test -n "$GCC"; then
-      test -z "$CFLAGS" && CFLAGS="$nmh_gcc_warnflags -g" || CFLAGS="$CFLAGS $nmh_gcc_warnflags -g"
-    else
-      test -z "$CFLAGS" && CFLAGS=-g || CFLAGS="$CFLAGS -g"
-    fi
+  dnl The user didn't specify CFLAGS, so customize them.
+  if test "$GCC" = yes; then
+    dnl Can't use -ansi with gcc 4.5.3 on Cygwin, at least through setup
+    dnl version 2.763, because it disables some features in the system
+    dnl header files and warns about them with -Wall.  Try to test for
+    dnl that generally, with gcc.
+    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"])
+    test "$nmh_cv_has_dash_ansi" = "yes"  &&  \
+      CFLAGS="${CFLAGS:+$CFLAGS }-ansi -pedantic"
   else
   else
-    if test -n "$GCC"; then
-      test -z "$CFLAGS" && CFLAGS="$nmh_gcc_warnflags -O2" || CFLAGS="$CFLAGS $nmh_gcc_warnflags -O2"
-    else
-      test -z "$CFLAGS" && CFLAGS=-O  || CFLAGS="$CFLAGS -O"
-    fi
+    dnl Use -v and some other options with SunStudio cc.  lex produces
+    dnl code that causes unreachable-statement warnings.  It might be
+    dnl better to use an autoconf test, except -v will probably succeed
+    dnl with many other compilers but have different meaning.
+    AS_CASE([`${CC} -V 2>&1`],
+            [cc:\ Sun\ C*], [CFLAGS=\
+"${CFLAGS:+$CFLAGS }-v -errtags=yes -erroff=E_STATEMENT_NOT_REACHED"])
   fi
   fi
+
+  AC_CACHE_CHECK([whether compiler supports -Wall], [nmh_cv_has_wall],
+                 [nmh_saved_cflags="$CFLAGS"
+                 CFLAGS="$CFLAGS -Wall -Werror"
+                 AC_TRY_COMPILE([],[],nmh_cv_has_wall=yes,nmh_cv_has_wall=no)
+                 CFLAGS="$nmh_saved_cflags"])
+  test "$nmh_cv_has_wall" = "yes"  &&  CFLAGS="${CFLAGS:+$CFLAGS }-Wall"
+
+  AC_CACHE_CHECK([whether compiler supports -Wextra], [nmh_cv_has_wextra],
+                 [nmh_saved_cflags="$CFLAGS"
+                 CFLAGS="$CFLAGS -Wextra -Werror"
+                 AC_TRY_COMPILE([],[],nmh_cv_has_wextra=yes,
+                                nmh_cv_has_wextra=no)
+                 CFLAGS="$nmh_saved_cflags"])
+  test "$nmh_cv_has_wextra" = "yes"  &&  CFLAGS="${CFLAGS:+$CFLAGS }-Wextra"
 fi
 
 dnl --------------
 fi
 
 dnl --------------
@@ -165,8 +150,7 @@ dnl CUSTOMIZE LINK
 dnl --------------
 if test `uname` = OpenBSD; then
   dnl Filter out "often/almost always misused" warnings from OpenBSD linker.
 dnl --------------
 if test `uname` = OpenBSD; then
   dnl Filter out "often/almost always misused" warnings from OpenBSD linker.
-  POSTLINK=["2>&1 | egrep -v ': warning: s[a-z]+\(\) is (almost always|often) \
-misused, please use'; true"]
+  POSTLINK=["2>&1 | egrep -v 'warning'; true"]
 fi
 AC_SUBST([POSTLINK])
 
 fi
 AC_SUBST([POSTLINK])