* confifure.in: add a GCC flag check for -Wdeclaration-after-statement
authorJohn (J5) Palmieri <johnp@redhat.com>
Tue, 8 Aug 2006 15:36:59 +0000 (15:36 +0000)
committerJohn (J5) Palmieri <johnp@redhat.com>
Tue, 8 Aug 2006 15:36:59 +0000 (15:36 +0000)
  so we still compile on older gcc (patch from Frederic Peters
  <fpeters at 0d dot be>

ChangeLog
configure.in

index 9d58a6a..387d357 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2006-08-08  John (J5) Palmieri  <johnp@redhat.com>
+
+       * confifure.in: add a GCC flag check for -Wdeclaration-after-statement
+       so we still compile on older gcc (patch from Frederic Peters 
+       <fpeters at 0d dot be>
+
 2006-08-04  Havoc Pennington  <hp@redhat.com>
 
        * configure.in: add -Wdeclaration-after-statement
index dfad86e..65570d6 100644 (file)
@@ -91,6 +91,20 @@ fi
 
 #### gcc warning flags
 
+cc_supports_flag() {
+  AC_MSG_CHECKING(whether $CC supports "$@")
+  Cfile=/tmp/foo${$}
+  touch ${Cfile}.c
+  $CC -c "$@" ${Cfile}.c -o ${Cfile}.o >/dev/null 2>&1
+  rc=$?
+  rm -f ${Cfile}.c ${Cfile}.o
+  case $rc in
+    0) AC_MSG_RESULT(yes);;
+    *) AC_MSG_RESULT(no);;
+  esac
+  return $rc
+}
+
 if test "x$GCC" = "xyes"; then
   changequote(,)dnl
   case " $CFLAGS " in
@@ -140,7 +154,10 @@ if test "x$GCC" = "xyes"; then
 
   case " $CFLAGS " in
   *[\ \        ]-Wdeclaration-after-statement[\ \      ]*) ;;
-  *) CFLAGS="$CFLAGS -Wdeclaration-after-statement" ;;
+  *) if cc_supports_flag -Wdeclaration-after-statement; then
+        CFLAGS="$CFLAGS -Wdeclaration-after-statement"
+     fi
+     ;;
   esac
 
   if test "x$enable_ansi" = "xyes"; then