Blame SOURCES/type-punned-warning.patch

32dd66
The following type of warning errors...
32dd66
32dd66
  ../../../source/tools/acpibin/abcompare.c: In function 'AbCompareAmlFiles':
32dd66
  ../../../source/tools/acpibin/abcompare.c:462:5: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
32dd66
       if (*((UINT32 *) Header1.Signature) != *((UINT32 *) Header2.Signature))
32dd66
32dd66
results from '-fstrict-aliasing', which is turned on by the specifying of
32dd66
the '-O2' optimization option. The solution is to turn it off by specifying
32dd66
'-fno-strict-aliasing'. At least, this appears to be a better solution
32dd66
than leaving it turned on but disabling the warnings by specifying
32dd66
'-Wstrict-aliasing=0'.
32dd66
32dd66
diff -urN a/generate/unix/Makefile.config b/generate/unix/Makefile.config
32dd66
--- a/generate/unix/Makefile.config	2013-10-18 09:39:50.897095584 -0500
32dd66
+++ b/generate/unix/Makefile.config	2013-10-18 09:46:03.069129999 -0500
32dd66
@@ -125,7 +125,7 @@
32dd66
 #   The _GNU_SOURCE symbol is required for many hosts.
32dd66
 #
32dd66
 OPT_CFLAGS ?= \
32dd66
-    -O2 -D_FORTIFY_SOURCE=2\
32dd66
+    -O2 -D_FORTIFY_SOURCE=2 -fno-strict-aliasing\
32dd66
     $(CWARNINGFLAGS)
32dd66
32dd66
 CFLAGS += \
32dd66
@@ -146,7 +146,6 @@
32dd66
     -Wformat=2\
32dd66
     -Wmissing-declarations\
32dd66
     -Wmissing-prototypes\
32dd66
-    -Wstrict-aliasing=0\
32dd66
     -Wstrict-prototypes\
32dd66
     -Wswitch-default\
32dd66
     -Wpointer-arith\