Loading package/cairo/cairo-005-fix-gcc-49-build.patch 0 → 100644 +38 −0 Original line number Diff line number Diff line 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, package/cairo/cairo.mk +1 −0 Original line number Diff line number Diff line Loading @@ -10,6 +10,7 @@ CAIRO_LICENSE = LGPLv2.1+ CAIRO_LICENSE_FILES = COPYING CAIRO_SITE = http://cairographics.org/releases CAIRO_INSTALL_STAGING = YES CAIRO_AUTORECONF = YES CAIRO_CONF_ENV = ac_cv_func_posix_getpwuid_r=yes glib_cv_stack_grows=no \ glib_cv_uscore=no ac_cv_func_strtod=yes \ Loading Loading
package/cairo/cairo-005-fix-gcc-49-build.patch 0 → 100644 +38 −0 Original line number Diff line number Diff line 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,
package/cairo/cairo.mk +1 −0 Original line number Diff line number Diff line Loading @@ -10,6 +10,7 @@ CAIRO_LICENSE = LGPLv2.1+ CAIRO_LICENSE_FILES = COPYING CAIRO_SITE = http://cairographics.org/releases CAIRO_INSTALL_STAGING = YES CAIRO_AUTORECONF = YES CAIRO_CONF_ENV = ac_cv_func_posix_getpwuid_r=yes glib_cv_stack_grows=no \ glib_cv_uscore=no ac_cv_func_strtod=yes \ Loading