List Archive: gentoo-dev
On Fri, 30 May 2008 18:29:49 +0200
flameeyes@... (Diego 'Flameeyes' Pettenò) wrote:
> David Leverton <levertond@...> writes:
> > It's not just the order, it also breaks things that rely on
> > the .init section being called at all to register themselves with
> > the core application (with --as-needed, the .so doesn't get loaded
> > in the first place, so it doesn't get a chance to run anything).
>
> This really is backward, solution-wise: you expect the "core
> application" to know enough of the plugins to link them together, but
> not enough to call their init functions...
Actually, no. The core application doesn't have to be doing the
linking. The linking can be done by an intermediate library.
> And still, it breaks not only with --as-needed but also with the Sun
> linker, with the PE file format and other non-ELF file formats. So
> it's really not a problem _limited_ to --as-needed.
It works with any standard-compliant C++ setup.
> Beside, you can _force_ a link by using --no-as-needed before a given
> library, that's what it's supposed to happen if you don't want to be
> helped by the linker.
And next you'll be saying "and you can force a compile using
--no-broken-behaviour-that-goes-against-the-standard".
> To a very minimum this can be said to be a _clash_ between two
> designs. Saying that --as-needed is _broken_ because it breaks this
> case is _quite_ an exaggeration...
Saying it's broken because it goes against an international standard
isn't...
--
Ciaran McCreesh
|
|