From 9d26619465d268dee1e16a8e5318ac19c5a573be Mon Sep 17 00:00:00 2001 From: Thomas Martitz Date: Fri, 17 Jan 2014 11:14:47 +0100 Subject: Workarund GCC bug #52991 regarding packet attribute. According to http://http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52991, since mingw-gcc 4.7.1 -mms-bitfields is on by default, and this option breaks the packet attribute since around 4.2.0. We haven't set this option so I'm assuming we don't need it. Therefore a workaround in configure can make things work again, because we rely on the packet attribute in quite a few places. Change-Id: I8367c16594cecfdde97c548e04607deaa92e21de --- tools/configure | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/tools/configure b/tools/configure index cbacbe9e89..1ac644597e 100755 --- a/tools/configure +++ b/tools/configure @@ -258,7 +258,10 @@ simcc () { fibers=`check_fiber` endian="little" # windows is little endian echo "Enabling MMX support" - GCCOPTS="$GCCOPTS -mmmx" + # -mno-ms-bitfields is a workaround for http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52991 + # mingw-gcc >= 4.7 defaults to -mms-bitfields which breaks __attribute__((packed)) + # disable it explicitly for the time being (it doesn't appear to be required for us) + GCCOPTS="$GCCOPTS -mmmx -mno-ms-bitfields" else case $uname in CYGWIN*) -- cgit v1.2.3