libqjson's cmake support

Alexander Neundorf neundorf at kde.org
Sat Jul 2 22:45:57 CEST 2011


On Friday 01 July 2011, David Faure wrote:
> kdeutils/ark/kerfuffle doesn't compile with unittests enabled, because it
> can't find the qjson library.
> 
> The issue is:
> 
> * qjson.git generates a qjson-config.cmake which sets qjson_LIBRARIES
>   (lowercase because the cmake project name is qjson)

That's kind of ok.
(there was a long discussion about whether ExactCaseNAME_LIBRARIES or 
UPPERCASENAME_LIBRARIES should be recommended, from just looking at the find-
modules which exist I'm clearly favouring ALLUPPERCASE, since they are simply 
the big majority).

> 
> * qjson.git also installs a FindQJSON.cmake (!! wrong, a lib shouldn't
> install its own find module, but that's another topic !!), which looks for
> QJSON_LIBRARIES (uppercase)
> 
> * kdeutils/ark/kerfuffle/tests/CMakeLists.txt also looks for
> QJSON_LIBRARIES uppercase [and seems to find qjson-config directly,
> without going through FindQJSON.cmake, if I read strace properly]

You can also do cmake --trace ...args, which will print every cmake line which 
is executed.

If a FindFoo.cmake is in CMAKE_MODULE_PATH, this one should be used, only if 
no such file is there, cmake starts searching for FooConfig.cmake. Is that the 
case ?

Alex




More information about the Kde-buildsystem mailing list