diff --git a/src/plugins/qt4projectmanager/qt4nodes.cpp b/src/plugins/qt4projectmanager/qt4nodes.cpp index e2ed24cadc0fa4eea10ce6758e128e0f7e6d86ff..1a33bbf21527c2fa28e81d932da343ccaaf03e01 100644 --- a/src/plugins/qt4projectmanager/qt4nodes.cpp +++ b/src/plugins/qt4projectmanager/qt4nodes.cpp @@ -691,17 +691,10 @@ void Qt4ProFileNode::update() Qt4PriFileNode::update(fileForCurrentProject, reader); - QString qmakeCxx = reader->value(QLatin1String("QMAKE_CXX")); - if (qmakeCxx.isEmpty()) { - // macx-xcode mkspec resets the value of QMAKE_CXX. - // Unfortunately, we need a valid QMAKE_CXX to configure the parser. - qmakeCxx = QLatin1String("c++"); - } - // update other variables QHash<Qt4Variable, QStringList> newVarValues; - newVarValues[CxxCompilerVar] << qmakeCxx; + newVarValues[CxxCompilerVar] << reader->value(QLatin1String("QMAKE_CXX")); newVarValues[DefinesVar] = reader->values(QLatin1String("DEFINES")); newVarValues[IncludePathVar] = includePaths(reader); newVarValues[UiDirVar] = uiDirPaths(reader); diff --git a/src/plugins/qt4projectmanager/qt4project.cpp b/src/plugins/qt4projectmanager/qt4project.cpp index ac30added53d636957bce0315c7c0a204ab99e37..b5eb66d909b900fa63248f78fdf45488596ec907 100644 --- a/src/plugins/qt4projectmanager/qt4project.cpp +++ b/src/plugins/qt4projectmanager/qt4project.cpp @@ -420,6 +420,13 @@ void Qt4Project::updateCodeModel() if (t == QtVersion::MinGW || t == QtVersion::OTHER) { QStringList list = rootProjectNode()->variableValue(Internal::CxxCompilerVar); QString qmake_cxx = list.isEmpty() ? QString::null : list.first(); + + if (qmake_cxx.isEmpty()) { + // macx-xcode mkspec resets the value of QMAKE_CXX. + // Unfortunately, we need a valid QMAKE_CXX to configure the parser. + qmake_cxx = QLatin1String("cc"); + } + qmake_cxx = environment(activeBuildConfiguration()).searchInPath(qmake_cxx); m_preproc.setGcc(qmake_cxx); predefinedMacros = m_preproc.predefinedMacros();