Phonon include headers mismatch
Thiago Macieira
thiago at kde.org
Wed Jul 2 15:12:21 BST 2008
Matthias Kretz wrote:
>On Monday 30 June 2008 01:08:26 Thiago Macieira wrote:
>> Let's decide on one thing only and stick to it:
>>
>> Phonon 4.0 (KDE 4.0) headers are in Phonon/*
>
>KDE 4.0 (and Phonon 4.2) ship headers in include/phonon/* and forward
> headers in include/KDE/Phonon/*
>
>> Phonon 4.1 (Qt 4.4) headers are in phonon/*
>>
>> http://doc.trolltech.com/4.4/phonon.html says #include <Phonon>, but
>> there's no such file in Qt sources. It does in KDE sources.
>>
>> http://doc.trolltech.com/4.4/phonon-module.html says #include
>> <phonon>. That exists in Qt sources, but not in KDE's.
>
>You mean <phonon/*> vs. <Phonon/*>, no? Because KDE doesn't have a
> <Phonon> include.
>
>> The Qt examples use #include <phonon/lowercaseheader.h> (see
>> http://doc.trolltech.com/4.4/phonon-musicplayer-mainwindow-h.html)
>>
>> Qt sources don't have per class forwarding headers, but the kdesupport
>> sources (trunk, to-be-4.3) do.
>>
>> So I'm tempted to say we screwed up with Qt 4.4.0 and should rectify
>> it immediately.
>>
>> We capitalise the P in the include dir, change the examples. For
>> compatibility, we can provide a symlink for case-sensitive
>> filesystems. And we add the per-class forwarding headers.
>>
>> Do we have an agreement?
>
>Not sure I didn't misunderstand. You want the non-forward headers to be
> in the Phonon dir instead of phonon? That'd be wrong.
>
>The real headers should be in include/phonon/. The location of the
> forward headers might be a little problem for Qt-only, if it says
> include/KDE/Phonon/ ... But I fear that having both include/phonon and
> include/Phonon will get us in trouble.
I meant that we should have one *single* include set. Application
developers shouldn't have to know which version of Phonon was installed.
I am proposing the Qt-style for the includes:
#include <Phonon/lowercaseheader.h>
#include <Phonon/ClassName>
#include <Phonon/Phonon>
Note that Phonon 4.1 shipped with Qt does not have that (because of the
capital P).
If someone adds -I.../Phonon to their include path, then they can also
have:
#include <lowercaseheader.h>
#include <ClassName>
But they shouldn't do that because the class names are not very unique.
They have to make sure that the parent directory to Phonon is also there
because of the internal includes.
Phonon should now no longer be inside the KDE/ include dir.
--
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-multimedia/attachments/20080702/e16565a9/attachment.sig>
-------------- next part --------------
_______________________________________________
kde-multimedia mailing list
kde-multimedia at kde.org
https://mail.kde.org/mailman/listinfo/kde-multimedia
More information about the kde-multimedia
mailing list