Phonon include header fix, once and for all

Thiago Macieira thiago at kde.org
Fri Dec 11 13:33:52 GMT 2009


Em Sexta-feira 11 Dezembro 2009, às 12:25:05, Allan Sandfeld Jensen escreveu:
> Hi Thiago
> 
> I am just making sure I understand the problem.
> 
> We currently use <phonon/classheader.h> and <Phonon/ClassName> which
>  fetches headers from two different include directories on linux, but the
>  same in Windows?

That was the solution for 4.5.0 or 4.5.1.

It didn't work.

So I placed Phonon inside phonon (i.e., phonon/Phonon/ClassName) for 4.5.2.

> I don't understand the need for the phonon_compat, but I assume it is to
> support Window developers accidentially using <phonon/ClassName> and
>  expecting it to work everywhere ?

No. It's to get <phonon/phonon> and <phonon>. Which is a header we used to 
have in 4.4, but had to remove due to the Phonon subdir with the ClassName 
classes.

> The <Phonon/ClassName> form fails on Mac because the first part has to
>  match the library-name? I guess You worked around that problem for Qt by
>  using mixed case library-name such as libQtCore.

Correct.

> You suggest we change to lower cases phonon and entirely drop the
> <Phonon/ClassName> form. (Btw. what is wrong with phonon/ClassName?)

Yes. There's nothing wrong, except that it currently doesn't work on KDE. Nor 
Qt.

> I have another suggestion, but only based on the problems you listed.
> If it is possible to have symbolic library link in Mac, you could have both
> libPhonon and libphonon. 

No. The HFS+ filesystem is case-insensitive. But Mac can also run on ZFS which 
is case-sensitive.

I also don't know if Apple's toolchain works with frameworks that are 
symlinks.

> So rename the library, and add a link for
> compatibility, but only do it on Mac and do it in a binary compatible way.
> Linking generally would be to libphonon, but on Mac only that would be a
> symbolic link to libPhonon. Since linking is not smoothly cross-platform
> anyway I guess there should be no problem with Mac developers trying to
>  link to libPhonon elsewhere.

That would break BC on the Mac.

No, the framework stays named "phonon.framework".

-- 
Thiago Macieira - thiago (AT) macieira.info - thiago (AT) kde.org
  Senior Product Manager - Nokia, Qt Development Frameworks
      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: 190 bytes
Desc: This is a digitally signed message part.
URL: <http://mail.kde.org/pipermail/kde-multimedia/attachments/20091211/99fa0ad4/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