KDE/kdelibs

Alexander Neundorf neundorf at kde.org
Sat Dec 5 21:37:53 CET 2009


On Saturday 05 December 2009, Mike Arthur wrote:
> On 5 Dec 2009, at 15:54, Alexander Neundorf wrote:
...
> > Yes. It "just" needs to be ported away from Qt. CMake itself uses STL and
> > has its own cross platform helper classes. I think the biggest change
> > would probably be QProcess.
> > That's the list of includes used in kde4automoc.cpp (it's really just one
> > file):
>
> Maybe I'm crazy here but I'm wondering if it might be less effort to either
> have automoc as an optional part of CMake (that only get installed if it
> finds Qt) or perhaps even try to modify qmake itself to make it more
> CMake-friendly (as Nokia seem pretty open to accepting patches now they are
> using Gitorious). Thoughts?

Hmm, not sure how this should look like. qmake "just" generates the makefiles 
with the dependencies, it doesn't really call moc.
This is what automoc does, it parses the source files and executes moc.
AFAIK Kitware would be happy to have that functionality in cmake.

> > Hmm, the attached archive doesn't really help me.
> > What I'd like to see is one complete (but maybe unbuilt) build tree with
> > cmake with UseQt4.cmake, and one without UseQt4.cmake, so I can have a
> > look what the differences are.
> > Or you post the compile commands for one file got both cases.
>
> Sorry, I should have made it more clear, I've sent you that.
>
> If I leave it as I've sent it to you it won't build. As you can see I've
> got a "#include(${QT_USE_FILE})" line, it's just commented out. If I
> comment out the "include_directories(${QT_QTCORE_INCLUDE_DIR}
> ${QT_QTGUI_INCLUDE_DIR})" line and instead uncomment the
> "#include(${QT_USE_FILE})" then it will then compile.

Yes, I saw that (and it still doesn't help me).
Please make one source dir where UseQt4.cmake is used, and run cmake on that 
source dir, and send me the resulting build dir (including CMakeCache.txt and 
the CMakeFiles/ subdir).

And for comparison, please do the same without using UseQt4.cmake, run cmake, 
and send me the resulting build tree (which will not build successfully).

Alex





More information about the Kde-buildsystem mailing list