summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/plugins/qt4projectmanager/qt4nodes.cpp6
-rw-r--r--src/plugins/qt4projectmanager/qt4nodes.h2
-rw-r--r--src/plugins/qt4projectmanager/qt4project.cpp15
-rw-r--r--src/plugins/qt4projectmanager/qt4project.h2
4 files changed, 22 insertions, 3 deletions
diff --git a/src/plugins/qt4projectmanager/qt4nodes.cpp b/src/plugins/qt4projectmanager/qt4nodes.cpp
index d928c94573..af88146100 100644
--- a/src/plugins/qt4projectmanager/qt4nodes.cpp
+++ b/src/plugins/qt4projectmanager/qt4nodes.cpp
@@ -1813,6 +1813,7 @@ void Qt4ProFileNode::applyEvaluate(EvalResult evalResult, bool async)
// update TargetInformation
m_qt4targetInformation = targetInformation(m_readerExact);
+ m_resolvedMkspecPath = m_project->proFileOption()->qmakespec;
setupInstallsList(m_readerExact);
setupProjectVersion(m_readerExact);
@@ -2141,6 +2142,11 @@ TargetInformation Qt4ProFileNode::targetInformation() const
return m_qt4targetInformation;
}
+QString Qt4ProFileNode::resolvedMkspecPath() const
+{
+ return m_resolvedMkspecPath;
+}
+
void Qt4ProFileNode::setupInstallsList(const QtSupport::ProFileReader *reader)
{
m_installsList.clear();
diff --git a/src/plugins/qt4projectmanager/qt4nodes.h b/src/plugins/qt4projectmanager/qt4nodes.h
index ed91b74b0d..0d78d28efb 100644
--- a/src/plugins/qt4projectmanager/qt4nodes.h
+++ b/src/plugins/qt4projectmanager/qt4nodes.h
@@ -355,6 +355,7 @@ public:
QString makefile() const;
QStringList symbianCapabilities() const;
bool isDeployable() const;
+ QString resolvedMkspecPath() const;
void update();
void scheduleUpdate();
@@ -404,6 +405,7 @@ private:
QMap<QString, QDateTime> m_uitimestamps;
TargetInformation m_qt4targetInformation;
+ QString m_resolvedMkspecPath;
InstallsList m_installsList;
ProjectVersion m_projectVersion;
friend class Qt4NodeHierarchy;
diff --git a/src/plugins/qt4projectmanager/qt4project.cpp b/src/plugins/qt4projectmanager/qt4project.cpp
index 1d06522bb1..8bf78b296f 100644
--- a/src/plugins/qt4projectmanager/qt4project.cpp
+++ b/src/plugins/qt4projectmanager/qt4project.cpp
@@ -553,7 +553,9 @@ void Qt4Project::updateCppCodeModel()
}
// Add mkspec directory
- if (activeBC->qtVersion())
+ if (rootQt4ProjectNode())
+ allIncludePaths.append(rootQt4ProjectNode()->resolvedMkspecPath());
+ else if (activeBC->qtVersion())
allIncludePaths.append(activeBC->qtVersion()->mkspecPath());
allIncludePaths.append(predefinedIncludePaths);
@@ -969,10 +971,12 @@ QtSupport::ProFileReader *Qt4Project::createProFileReader(Qt4ProFileNode *qt4Pro
m_proFileOption->environment.insert(env.key(eit), env.value(eit));
QStringList args;
- if (QMakeStep *qs = bc->qmakeStep())
+ if (QMakeStep *qs = bc->qmakeStep()) {
args = qs->parserArguments();
- else
+ m_proFileOption->qmakespec = qs->mkspec();
+ } else {
args = bc->configCommandLineArguments();
+ }
m_proFileOption->setCommandLineArguments(args);
}
@@ -987,6 +991,11 @@ QtSupport::ProFileReader *Qt4Project::createProFileReader(Qt4ProFileNode *qt4Pro
return reader;
}
+ProFileOption *Qt4Project::proFileOption()
+{
+ return m_proFileOption;
+}
+
void Qt4Project::destroyProFileReader(QtSupport::ProFileReader *reader)
{
delete reader;
diff --git a/src/plugins/qt4projectmanager/qt4project.h b/src/plugins/qt4projectmanager/qt4project.h
index f9533b36bf..500af03cd3 100644
--- a/src/plugins/qt4projectmanager/qt4project.h
+++ b/src/plugins/qt4projectmanager/qt4project.h
@@ -118,6 +118,8 @@ public:
/// \internal
QtSupport::ProFileReader *createProFileReader(Qt4ProFileNode *qt4ProFileNode, Qt4BuildConfiguration *bc = 0);
/// \internal
+ ProFileOption *proFileOption();
+ /// \internal
void destroyProFileReader(QtSupport::ProFileReader *reader);
/// \internal