Created attachment 380826 [details, diff] updated patch cairo-1.12.16-lto-optional.patch The patch cairo-1.12.16-lto-optional.patch fails. I've attached an updated version. Still, compilation fails with USE=lto and gcc-4.9.0 See the attached build log It builds just fine with USE=-lto
Created attachment 380830 [details] build log
from: http://cgit.freedesktop.org/cairo/commit/?id=c7ff9bb32e20679d6da4e8a2856be716e5bd9e12 Remove LTO support 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
I've dropped this patch and USE=lto from cairo-9999.