[Spice-devel] [spice-gtk] build: allow building with newer glibc-headers and -O0

Christophe Fergeau cfergeau at redhat.com
Thu Jun 7 08:37:56 PDT 2012


Fix copied from libvirt, commit by Eric Blake.

glibc 2.15 (on Fedora 17) coupled with explicit disabling of
optimization during development dies a painful death:

/usr/include/features.h:314:4: error: #warning _FORTIFY_SOURCE requires compiling with optimization (-O) [-Werror=cpp]

Work around this by only conditionally defining _FORTIFY_SOURCE,
in the case where glibc can actually use it.  The trick is using
AH_VERBATIM instead of AC_DEFINE.
---
 m4/spice-compile-warnings.m4 |    8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/m4/spice-compile-warnings.m4 b/m4/spice-compile-warnings.m4
index 1ecae2a..3c7e0d3 100644
--- a/m4/spice-compile-warnings.m4
+++ b/m4/spice-compile-warnings.m4
@@ -104,8 +104,12 @@ AC_DEFUN([SPICE_COMPILE_WARNINGS],[
     gl_WARN_ADD([-Wframe-larger-than=9216])
 
     # Use improved glibc headers
-    AC_DEFINE([_FORTIFY_SOURCE], [2],
-      [enable compile-time and run-time bounds-checking, and some warnings])
+    AH_VERBATIM([FORTIFY_SOURCE],
+    [/* Enable compile-time and run-time bounds-checking, and some warnings. */
+     #if defined __OPTIMIZE__ && __OPTIMIZE__
+     # define _FORTIFY_SOURCE 2
+     #endif
+    ])
 
     # Extra special flags
     dnl -fstack-protector stuff passes gl_WARN_ADD with gcc
-- 
1.7.10.2



More information about the Spice-devel mailing list