FindTaglib.cmake file

Alexander Neundorf neundorf at kde.org
Tue Nov 17 19:54:34 CET 2009


On Monday 16 November 2009, Michael Jansen wrote:
> Hi
>
> I just noticed that this file seems to put nothing into CMakeCache.txt.
>
> [ bash : 1009 ] $ grep TAGLIB CMakeCache.txt
> K3B_ENABLE_TAGLIB:BOOL=ON
> TAGLIBCONFIG_EXECUTABLE:FILEPATH=/kde4/trunk/support/bin/taglib-config
>
> Is that correct? if not how to change that.

Well, it's not really mandatory to store stuff in the cache.

But I had a look at the module, it could need some improvements.
It should run taglib-config and use the output as HINTS for actual 
find_path()/find_library() calls.
E.g. it could just execute taglib-config --prefix and then use the directory 
reported there as HINTS for finding the headers and libs.
I would prefer that.

> The other problem i encountered is is sets TAGLIB_INCLUDES to
>
>  TAGLIB_INCLUDES=/kde4/trunk/support/include/taglib
>
> but most/some? code includes headers with "taglib/.." which doesn't work
> naturally.

Well, this is a different problem, and it doesn't depend on cmake which style 
of including the headers is the recommended/correct one. I don't know.

If taglib-config returns /kde4/trunk/support/include/taglib, it should 
probably be included without the <taglib/...>
Maybe this is just a remnant from cases where that didn't work using this 
include style made it accidentially work.

> Which way to fix that stuff? 
> Remove "taglib" from the TAGLIB_INCLUDES var
> or fix the code 

I think this would be the correct thing to do, if we take the output of 
taglib-config as reference (which I think we should).

> or add a second path to the TAGLIB_INCLUDES var

This would be more a workaround to make broken code compile I think.

Alex


More information about the Kde-buildsystem mailing list