CMake plugin crashes with cmake 2.6.3 rc4 FindQt4.cmake
Andreas Pakulat
apaku at gmx.de
Sun Nov 16 17:48:41 UTC 2008
Hi,
finally I found out why cmake support crashes here and on my work-machine.
It apparently cannot handle the following condition:
# ask qmake for the binary dir
IF ((QT_LIBRARY_DIR AND NOT QT_BINARY_DIR) OR QT_QMAKE_CHANGED)
EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE}
ARGS "-query QT_INSTALL_BINS"
OUTPUT_VARIABLE qt_bins )
# make sure we have / and not \ as qmake gives on windows
FILE(TO_CMAKE_PATH "${qt_bins}" qt_bins)
SET(QT_BINARY_DIR ${qt_bins} CACHE INTERNAL "" FORCE)
ENDIF ((QT_LIBRARY_DIR AND NOT QT_BINARY_DIR) OR QT_QMAKE_CHANGED)
The probelm is that for some reason the IfAst's condition is an empty list,
which means CMakeCondition::condition and the called functions break
(because it assumes that constBegin != constEnd, in particular that there's
at least 1 entry in the list).
I've fixed the crash, with a expression.isEmpty() in
CMakeCondition::condition(), but someone more familiar with the parser
should look into why it creates an empty expression-list in the first
place.
Andreas
--
You are a fluke of the universe; you have no right to be here.
More information about the KDevelop-devel
mailing list