External SVN item in kdebase/runtime/nepomuk/services/queryservice/lib

Thiago Macieira thiago at kde.org
Thu Sep 18 07:05:22 BST 2008


Matthew Woehlke wrote:
>Andreas Pakulat wrote:
>> How do you suggest to solve the following:
>
>In addition, what about:
>
>- code shared between two libraries that itself is not appropriate for a
>library (because it should not be publically accessible), where it is
>important for the copies to stay 100% in sync.

Use a private header and export the symbols.

Qt does a lot of that. The private headers are still available during the 
build. And since they are in the same module, which is always built as a 
whole, there's no problem breaking binary- or source-compatibility.

>Copying the files sucks because it's extra work and creates clutter in
>the VC history.

Not if you do it properly.

>Making it a library sucks because then you have an 
>installed library and installed headers that should not be installed.

If that is so, there are other solutions than library.

There's also such a thing as a private library.

>Sharing the code in some manner similar to a symlink is clearly a
>preferred solution.

Git supports symlinks. If we ditch building on filesystems where symlinks 
aren't supported (read: Windows), we can use them. (SVN supports it too, 
BTW.)

And I also do not agree that it's the preferred solution. A library is the 
preferred solution, since that reduces code duplication when loaded into 
memory.

>In other words, what do you suggest to do for oxygen (style/windeco)?

Pick one of the many solutions I proposed.

-- 
  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/20080918/a6e1ea13/attachment.sig>


More information about the kde-core-devel mailing list