When using find_package(Qt4), QT_INCLUDES has include/QtCore before include/Qt (as it should be) but somehow leads to -isystem for include/QtCore and -I for include/Qt, so qglobal.h and others are picked up from include/Qt.
But we never hit this in KDE because we don't use find_package(Qt4) directly, we let find_package(KDE4) take care of it, somehow it doesn't lead to -isystem.