diff options
author | Matthew Barnes <mbarnes@redhat.com> | 2010-02-03 01:21:30 +0800 |
---|---|---|
committer | Matthew Barnes <mbarnes@redhat.com> | 2010-02-03 01:22:48 +0800 |
commit | dce48c142cae497ffe518b4a4427df6fac46c398 (patch) | |
tree | 5e537412fb067e08d912d107a5829f610e4e4fc2 /configure.ac | |
parent | 21b96e788c965a769ad77544f66187132d8f2d55 (diff) | |
download | gsoc2013-evolution-dce48c142cae497ffe518b4a4427df6fac46c398.tar.gz gsoc2013-evolution-dce48c142cae497ffe518b4a4427df6fac46c398.tar.zst gsoc2013-evolution-dce48c142cae497ffe518b4a4427df6fac46c398.zip |
Disable strict aliasing optimization.
Diffstat (limited to 'configure.ac')
-rw-r--r-- | configure.ac | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/configure.ac b/configure.ac index 732ac2d1d8..b034b76012 100644 --- a/configure.ac +++ b/configure.ac @@ -89,7 +89,14 @@ dnl -Wmissing-format-attribute dnl -Wshadow dnl -Wformat-nonliteral -AM_CPPFLAGS="$WARNING_FLAGS" +dnl GCC 4.4 got more aggressive in it's aliasing optimizations, changing +dnl behavior that -- according to the C99 standard -- is supposed to be +dnl undefined. We may still have aliasing abuses lying around that rely +dnl on GCC's previous "undefined" behavior but are hidden by type casts, +dnl so disable the strict-aliasing optimzation until GCC (or even LLVM) +dnl learns how to detect them and warn us about it. +dnl XXX This really belongs in AM_CFLAGS. +AM_CPPFLAGS="$WARNING_FLAGS -fno-strict-aliasing" AC_SUBST(AM_CPPFLAGS) LDFLAGS="$LDFLAGS -Wl,--no-undefined" |