diff options
-rw-r--r-- | configure.ac | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/configure.ac b/configure.ac index 9bc4ef8e93..857248367f 100644 --- a/configure.ac +++ b/configure.ac @@ -175,12 +175,6 @@ dnl -Wstrict-aliasing=2 dnl -DE_BOOK_DISABLE_DEPRECATED dnl -DE_CAL_DISABLE_DEPRECATED -dnl GCC 4.4 got more aggressive in its 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, so disable strict-aliasing -dnl optimzation until we can find and fix all the abuses. -dnl XXX This really belongs in AM_CFLAGS. AM_CPPFLAGS="$WARNING_FLAGS -fno-strict-aliasing" AC_SUBST(AM_CPPFLAGS) @@ -223,6 +217,17 @@ AC_SUBST(PERL) AC_ARG_PROGRAM +dnl GCC 4.4 got more aggressive in its 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, so disable strict-aliasing +dnl optimzation until we can find and fix all the abuses. +dnl (AC_PROG_CC must run first to set the GCC variable.) +dnl XXX This really belongs in AM_CFLAGS. +if test "x${GCC}" = "xyes"; then + CFLAGS="$CFLAGS -fno-strict-aliasing" +fi + dnl ****************************** dnl I18N stuff dnl ****************************** |