Issue with cmake 2.8.6 & set_source_files_properties

Andreas Pakulat apaku at gmx.de
Mon Nov 14 12:45:09 UTC 2011


On 14.11.11 12:08:59, Christophe Giboudeaux wrote:
> On Sunday 13 November 2011 23:58:18 Andreas Pakulat wrote:
> > On 13.11.11 23:01:46, Christophe Giboudeaux wrote:
> > > Hi,
> > > 
> > > I'd like to get rid of the FindQt4.cmake we have in Akonadi in order to 
> use the QT_USE_IMPORTED_TARGETS option but I encounter a build issue without 
> it.
> > 
> > You can't, at least until your require CMake 2.8.7 and get your changes
> > to FindQt4.cmake upstream ASAP.
> 
> That's not an issue. I just want to add a 'set(QT_USE_IMPORTED_TARGETS TRUE) 
> line in the top CMakeLists.txt. If the cmake version is not recent enough, 
> nothing will happen and the full path with be used in 
> AkonadiTargetsWithPrefix-*.cmake.

Sorry, bad quoting on my part. I was referring to the "get rid of
FindQt4.cmake in Akonadi part".

> > Thats because CMake's FindQt4 (or rather Qt4Macros.cmake) has no support
> > for reading any kind of extra arguments for the dbusxml2cpp call from
> > source properties. Apparently your team added that to your FindQt4.cmake
> > file without pushing this change upstream, so your stuck with your
> > FindQt4.cmake version until the upstream one gained the same feature and
> > you can require that new cmake version that has this feature included.
> > 
> 
> That won't be needed it seems. I've just looked at cmake git. The NO_NAMESPACE 
> and INCLUDE parameters in the QT4_ADD_DBUS_INTERFACE macro now exist in cmake 
> master but not in any tag. 

If I recall the release procedure with cmake correctly that means its
going to be in 2.8.8 - unless you also find the commits in 'next' too.
So once 2.8.8 (or 2.8.7) is released you could then require it in
Akonadi via cmake_minimum_required(VERSION 2.8.7) and everybody with
older cmake will get an error trying to build akonadi. Wether that'll
make your users very happy is a different story though ;)

Andreas



More information about the Kde-buildsystem mailing list