]> xenbits.xensource.com Git - people/liuw/libxenctrl-split/libvirt.git/commitdiff
Don't try to enable stack protector on Win32
authorDaniel P. Berrange <berrange@redhat.com>
Tue, 5 Apr 2011 15:00:58 +0000 (16:00 +0100)
committerDaniel P. Berrange <berrange@redhat.com>
Tue, 5 Apr 2011 16:43:40 +0000 (17:43 +0100)
The GCC Win32 compiler will claim to support -fstack-protector,
but if it actually gets triggered by a suitable code pattern,
linking will fail. Other non-Linux OS likely suffer the same
way with gcc.

* m4/virt-compile-warnings.m4: Only use stack protector when
  the build target is Linux.

m4/virt-compile-warnings.m4

index 7e252d551ac62316a4ec4f9f4c3d0bbb590b41e0..819da8fc77e0ab2ff51e4279e96fc2c2f21a1aeb 100644 (file)
@@ -98,11 +98,17 @@ AC_DEFUN([LIBVIRT_COMPILE_WARNINGS],[
 
         # Extra special flags
         gl_WARN_ADD([-Wp,-D_FORTIFY_SOURCE=2])
-        dnl Fedora only uses -fstack-protector, but doesn't seem to
-        dnl be great overhead in adding -fstack-protector-all instead
-        dnl gl_WARN_ADD([-fstack-protector])
-        gl_WARN_ADD([-fstack-protector-all])
-        gl_WARN_ADD([--param=ssp-buffer-size=4])
+        dnl -fstack-protector stuff passes gl_WARN_ADD with gcc
+        dnl on Mingw32, but fails when actually used
+        case $host in
+           *-*-linux*)
+           dnl Fedora only uses -fstack-protector, but doesn't seem to
+           dnl be great overhead in adding -fstack-protector-all instead
+           dnl gl_WARN_ADD([-fstack-protector])
+           gl_WARN_ADD([-fstack-protector-all])
+           gl_WARN_ADD([--param=ssp-buffer-size=4])
+           ;;
+        esac
         gl_WARN_ADD([-fexceptions])
         gl_WARN_ADD([-fasynchronous-unwind-tables])
         gl_WARN_ADD([-fdiagnostics-show-option])