From ee69e744ee7333a5983f1a9158750bbd73556b55 Mon Sep 17 00:00:00 2001 From: Bryce Harrington Date: Tue, 8 Jul 2014 13:14:20 -0700 Subject: configure.ac: Add a --disable-lto configure option Link-Time Optimization seems to be stable enough with gcc 4.8 and 4.9, but has proven to be an issue in the past for many cairo users (webkit, efl, ubuntu, opensuse, gentoo, arch...) who carry patches to disable it. Gentoo's patch[1] adds a --disable-lto option to leave it enabled by default but give users the ability to work around lto related build problems (c.f. fdo #77060). Patch appears to have been authored by Alexandre Rostovtsev[2]. 1: sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/x11-libs/cairo/files/cairo-1.12.16-lto-optional.patch 2: https://bugs.gentoo.org/show_bug.cgi?id=509552 Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=60852 Signed-off-by: Bryce Harrington Reviewed-by: Uli Schlachter --- build/configure.ac.warnings | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/build/configure.ac.warnings b/build/configure.ac.warnings index f984eb29c..a72d9484a 100644 --- a/build/configure.ac.warnings +++ b/build/configure.ac.warnings @@ -38,13 +38,18 @@ dnl options. Namely, the following: dnl -flto working really needs a test link, not just a compile -safe_MAYBE_WARN="$MAYBE_WARN" -MAYBE_WARN="$MAYBE_WARN -flto" -AC_TRY_LINK([],[ +AC_ARG_ENABLE(lto, + AS_HELP_STRING([--disable-lto], + [Do not try to use Link-Time Optimization])) +if test "x$enable_lto" != "xno"; then + safe_MAYBE_WARN="$MAYBE_WARN" + MAYBE_WARN="$MAYBE_WARN -flto" + AC_TRY_LINK([],[ int main(int argc, char **argv) { return 0; } -],[],[ + ],[],[ MAYBE_WARN="$safe_MAYBE_WARN" -]) + ]) +fi MAYBE_WARN="$MAYBE_WARN -fno-strict-aliasing -fno-common" -- cgit v1.2.3