Re: [PATCH] Remove LTO support
Bryce Harrington <[email protected]>
| Newsgroups | gmane.comp.lib.cairo |
|---|---|
| Message-ID | <[email protected]> |
On Mon, Jul 21, 2014 at 05:10:16PM +0200, Uli Schlachter wrote: > This just never worked too well and caused too many issues. I don't think anyone > will miss this. > > As mentioned in the below bug report, proper LTO support also requires using > special versions of ranlib, nm and ar which support the LTO object files. > Otherwise, calling the normal ranlib on an .a library breaks the list of > exported symbols and thus completely breaks the static library. > > This (partly) reverts the following commits: > > c3645d97ebd24c6f7ad850785d585aebc706a11c configure.ac: Add a --disable-lto configure option > d486ea30f1a58640a1178de74f705a73845b1cda configure: Conditionally include -flto > 0870c6fb5b39dcc04fa376123848adde2d06d2ce gcc-4.5 warnings and optimisation flags. > > (The last commit is the one which brought us -flto in the first place even > though it doesn't talk about this. It's also the one which is only reverted > partly.) > > Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=77060 > CC: Chris Wilson <[email protected]> > Signed-off-by: Uli Schlachter <[email protected]> Reviewed-by: Bryce Harrington <[email protected]> I've no qualms about seeing this go. However I do wonder if there is a benefit to it, that we'd lose? I gather it optimizes the build process, but I can't tell if there are any user-visible benefits? > --- > build/configure.ac.warnings | 16 ---------------- > 1 file changed, 16 deletions(-) > > diff --git a/build/configure.ac.warnings b/build/configure.ac.warnings > index a72d948..2c4e34d 100644 > --- a/build/configure.ac.warnings > +++ b/build/configure.ac.warnings > @@ -35,22 +35,6 @@ MAYBE_WARN="$MAYBE_WARN -erroff=E_ENUM_TYPE_MISMATCH_ARG \ > > dnl We also abuse the warning-flag facility to enable other compiler > dnl options. Namely, the following: > - > -dnl -flto working really needs a test link, not just a compile > - > -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" > > dnl Also to turn various gcc/glibc-specific preprocessor checks > -- > 2.0.1 > > -- > cairo mailing list > [email protected] > http://lists.cairographics.org/mailman/listinfo/cairo ----- End forwarded message ----- -- cairo mailing list [email protected] http://lists.cairographics.org/mailman/listinfo/cairo