Reducing library dependancies

Thiago Macieira thiago at kde.org
Thu Aug 14 23:09:30 BST 2008


Alexander Neundorf wrote:
>On Thursday 14 August 2008, Thiago Macieira wrote:
>> Alexander Neundorf wrote:
>> >On Tuesday 12 August 2008, Thiago Macieira wrote:
>> >> John Tapsell wrote:
>> >> >Sounds pretty good so far - sounds like we could make this change
>> >> > to the kde build?  Which file do we add this flag to?
>> >>
>> >> I'm rebuilding KDE with --as-needed as we speak. I usually trust
>> >> Helio to
>> >
>> >Shouldn't that be unnecessary once we get the reduced linking working
>> >properly ?
>>
>> No. Using --as-needed produces better results than we can ever achieve
>> with reduced linking.
>
>Can you please explain (for an --as-needed newbie) ?

http://mail.kde.org/pipermail/kde-buildsystem/2008-June/004806.html

In that message, we were discussing whether QtXml should be listed in 
krosscore's dependencies. That's because QtXml is exposed in krosscore's 
API, but in only one header.

So we had to make an all-or-nothing decision.

With --as-needed, we could make the decision to keep it. If QtXml isn't 
used by the target, then the linker drops the dependency.

>> And I gave up doing reduced linking on koffice. Every single target
>> required a fixup. That's technically the right thing to do, but it was
>> too much work. Even on my fast machine, the cycle is around one
>> minute.
>
>Did you add the libs to the targets ?
>Adding some widely used libs to the "link interface" of some central
> libs should help a lot.

Probably. But I didn't do that, since I had no clue how. I was just 
changing every single target until things linked.

>Btw., actually what is currently in svn is not the complete thing as I
> noticed tuesday, currently the default is "all libs go into the
> interface", while the default should be "interface is empty".
>I have that locally here and working on it.

-- 
  Thiago Macieira  -  thiago (AT) macieira.info - thiago (AT) kde.org
    PGP/GPG: 0x6EF45358; fingerprint:
    E067 918B B660 DBD1 105C  966C 33F5 F005 6EF4 5358
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part.
URL: <http://mail.kde.org/pipermail/kde-core-devel/attachments/20080815/bca34fa3/attachment.sig>


More information about the kde-core-devel mailing list