From 1a02dc347cf3d583b8b2e4a57e9ff32cf82240e9 Mon Sep 17 00:00:00 2001 From: David Levine Date: Mon, 11 Jun 2012 22:02:55 -0500 Subject: [PATCH] Can't use -ansi with gcc 4.5.3 on Cygwin, at least through setup setup version 2.763, because it disables some features in the system system header files. Added configure check, when using gcc, for -ansi (and don't use -pedantic without it). --- configure.ac | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/configure.ac b/configure.ac index a0602df..8979fde 100644 --- a/configure.ac +++ b/configure.ac @@ -199,6 +199,25 @@ AC_CACHE_CHECK([whether compiler supports -Wno-pointer-sign], [nmh_cv_has_noptrs AC_TRY_COMPILE([],[],nmh_cv_has_noptrsign=yes,nmh_cv_has_noptrsign=no) CFLAGS="$nmh_saved_cflags"]) +dnl Can't use -ansi with gcc 4.5.3 on Cygwin, at least through setup +dnl setup version 2.763, because it disables some features in the +dnl system system header files and warns about them with -Wall. Try +dnl to test for 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 ],[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 @@ -208,7 +227,11 @@ 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_common_flags="-ansi -pedantic -Wall" + if test "$nmh_cv_has_dash_ansi" = "yes"; then + nmh_gcc_common_flags="-ansi -pedantic -Wall" + else + nmh_gcc_common_flags="-Wall" + fi if test "$nmh_cv_has_wextra" = "yes"; then nmh_gcc_warnflags="${nmh_gcc_common_flags} -Wextra -Wno-clobbered "\ "-Wno-pointer-sign" -- 1.7.10.4