From 2c1c89fa352ce57e31d76455791debea6d8e3545 Mon Sep 17 00:00:00 2001 From: Orgad Shaneh Date: Sat, 28 Apr 2012 22:24:33 +0300 Subject: [PATCH] Qt4PM: Parse object extension and objects dir Task-number: QTCREATORBUG-106 Change-Id: I01682bbcf19dbe26cc8325fa9ed5999b7f2fe15e Reviewed-by: Daniel Teske Reviewed-by: Oswald Buddenhagen --- src/plugins/qt4projectmanager/qt4nodes.cpp | 21 +++++++++++++++++++++ src/plugins/qt4projectmanager/qt4nodes.h | 6 +++++- 2 files changed, 26 insertions(+), 1 deletion(-) diff --git a/src/plugins/qt4projectmanager/qt4nodes.cpp b/src/plugins/qt4projectmanager/qt4nodes.cpp index 6698dc68da2..221c1e25d43 100644 --- a/src/plugins/qt4projectmanager/qt4nodes.cpp +++ b/src/plugins/qt4projectmanager/qt4nodes.cpp @@ -1424,6 +1424,25 @@ QStringList Qt4ProFileNode::symbianCapabilities() const return result; } +QString Qt4ProFileNode::objectExtension() const +{ + if (m_varValues[ObjectExt].isEmpty()) { +#ifdef Q_OS_WIN + return QLatin1String(".obj"); +#else + return QLatin1String(".o"); +#endif + } + return m_varValues[ObjectExt].first(); +} + +QString Qt4ProFileNode::objectsDirectory() const +{ + if (m_varValues[ObjectsDir].isEmpty()) + return buildDir(); + return m_varValues[ObjectsDir].first(); +} + QByteArray Qt4ProFileNode::cxxDefines() const { QByteArray result; @@ -1883,6 +1902,8 @@ void Qt4ProFileNode::applyEvaluate(EvalResult evalResult, bool async) newVarValues[Makefile] = m_readerExact->values(QLatin1String("MAKEFILE")); newVarValues[SymbianCapabilities] = m_readerExact->values(QLatin1String("TARGET.CAPABILITY")); newVarValues[QtVar] = m_readerExact->values(QLatin1String("QT")); + newVarValues[ObjectExt] = m_readerExact->values(QLatin1String("QMAKE_EXT_OBJ")); + newVarValues[ObjectsDir] = m_readerExact->values(QLatin1String("OBJECTS_DIR")); m_isDeployable = false; if (m_projectType == ApplicationTemplate) { diff --git a/src/plugins/qt4projectmanager/qt4nodes.h b/src/plugins/qt4projectmanager/qt4nodes.h index 962c813e535..0b6819f742e 100644 --- a/src/plugins/qt4projectmanager/qt4nodes.h +++ b/src/plugins/qt4projectmanager/qt4nodes.h @@ -95,7 +95,9 @@ enum Qt4Variable { QtVar, QmlImportPathVar, Makefile, - SymbianCapabilities + SymbianCapabilities, + ObjectExt, + ObjectsDir }; // Import base classes into namespace @@ -358,6 +360,8 @@ public: QString makefile() const; QStringList symbianCapabilities() const; + QString objectExtension() const; + QString objectsDirectory() const; QByteArray cxxDefines() const; bool isDeployable() const; QString resolvedMkspecPath() const;