[libvirt] [PATCH] build: fix build on older gcc

Eric Blake eblake at redhat.com
Fri Sep 7 20:19:04 UTC 2012


On RHEL 6.2, gcc 4.4.6 complains:
cc1: warning: command line option "-Wenum-compare" is valid for C++/ObjC++ but not for C
which in turn breaks a -Werror build.

Meanwhile, in Fedora 17, gcc 4.7.0, -Wenum-compare has been enhanced
to also work on C, but at the same time, it is documented that -Wall
now implicitly includes -Wenum-compare.

Therefore, it is sufficient to remove explicit checks for this option,
avoiding the warning from older gcc while still getting the
compile-time safety from newer gcc.

* m4/virt-compile-warnings.m4 (-Wenum-compare): Omit explicit check.
---

Pushing under the build-breaker rule.

 m4/virt-compile-warnings.m4 | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/m4/virt-compile-warnings.m4 b/m4/virt-compile-warnings.m4
index c3ff962..d1173eb 100644
--- a/m4/virt-compile-warnings.m4
+++ b/m4/virt-compile-warnings.m4
@@ -57,6 +57,8 @@ AC_DEFUN([LIBVIRT_COMPILE_WARNINGS],[
     dontwarn="$dontwarn -Wformat-nonliteral"
     # Gnulib's stat-time.h violates this
     dontwarn="$dontwarn -Waggregate-return"
+    # gcc 4.4.6 complains this is C++ only; gcc 4.7.0 implies this from -Wall
+    dontwarn="$dontwarn -Wenum-compare"

     # Gnulib uses '#pragma GCC diagnostic push' to silence some
     # warnings, but older gcc doesn't support this.
-- 
1.7.11.4




More information about the libvir-list mailing list