Ciaran McCreesh wrote:
Which is where the design flaw is -- as-needed incorrectly assumes that the only type of dependency between shared objects is a name dependency. This isn't true with C++ static initialisers.
I don't see why should be different than abusing .init in any other language that let you do (ok, C, C++, asm mostly).
Unfortunately, the ricers shoving as-needed upon everyone aren't smart
Asking people to not do stuff that is unportable (Solaris and PE based systems) seems sensible and not ricing.
enough to fix libtool, which is the real problem here, so they go for the thing they think they understand instead, without thinking the implications through -- as-needed, like fast-math, is for programs explicitly designed for it, not for universal use.
Differently -ffast-math is setting up a slightly different behavior than the usual standard, --as-needed enforce what is the default standard in determined architectures, thus the exception and the universality are quite reverted.
We already started to think how to fix libtool, or at least make it less annoying, removing .la files when they are not necessary.
Similarly we started proposing upstream to use pkg-config if they aren't already.
lu -- Luca Barbato Gentoo Council Member Gentoo/linux Gentoo/PPC http://dev.gentoo.org/~lu_zero -- gentoo-dev@lists.gentoo.org mailing list