| Fix build with gcc 4.9 |
| |
| cairo fails to build with gcc 4.9 due to a bad interaction of cairo |
| modules with the LTO mechanism. The suggested workaround is to pass |
| -ffat-lto-objects. See |
| https://bugs.freedesktop.org/show_bug.cgi?id=77060 for the upstream |
| bug report, and |
| https://bugs.archlinux.org/task/40313?project=1&openedfrom=-1+week for |
| the ArchLinux bug report. |
| |
| This patch passes -ffat-lto-objects when gcc understands this option, |
| in order to provide compatibility with gcc versions older than 4.8, |
| which did not provide this option, but are anyway unaffected by the |
| issue. |
| |
| Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> |
| |
| Index: b/configure.ac |
| =================================================================== |
| --- a/configure.ac |
| +++ b/configure.ac |
| @@ -37,6 +37,16 @@ |
| m4_include(build/configure.ac.pthread) dnl checks for pthreads |
| AC_CACHE_SAVE |
| |
| +old_cflags=$CFLAGS |
| +CFLAGS=-ffat-lto-objects |
| +AC_MSG_CHECKING([whether CC supports -ffat-lto-objects]) |
| +AC_COMPILE_IFELSE([AC_LANG_PROGRAM([])], |
| + [AC_MSG_RESULT([yes])] |
| + [LTO_CFLAGS=-ffat-lto-objects], |
| + [AC_MSG_RESULT([no])] |
| +) |
| +CFLAGS="${old_CFLAGS} ${LTO_CFLAGS}" |
| + |
| dnl =========================================================================== |
| |
| AC_CHECK_LIB(z, compress, |