aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/autotoolsprojectmanager
diff options
context:
space:
mode:
authorNikolai Kosjar <nikolai.kosjar@qt.io>2019-01-04 12:35:28 +0100
committerNikolai Kosjar <nikolai.kosjar@qt.io>2019-01-10 07:13:38 +0000
commit4ce9ec5d63e5690d4402ec56a46ed99a60eaa6d3 (patch)
treec551955f0b3cf6df3f9178b8b8486abfea861186 /src/plugins/autotoolsprojectmanager
parent6b5b94d7caf6dc427c25e4ed9b3d9e1240532ec6 (diff)
CppTools: De-duplicate code for CppProjectUpdater
Centralize gathering the kit, toolchains and qt version. Change-Id: I6bd586ac7925e2ee556fd119f1dab096cd500e41 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Diffstat (limited to 'src/plugins/autotoolsprojectmanager')
-rw-r--r--src/plugins/autotoolsprojectmanager/autotoolsproject.cpp32
1 files changed, 8 insertions, 24 deletions
diff --git a/src/plugins/autotoolsprojectmanager/autotoolsproject.cpp b/src/plugins/autotoolsprojectmanager/autotoolsproject.cpp
index 952fdcf238..95dc6e5cd0 100644
--- a/src/plugins/autotoolsprojectmanager/autotoolsproject.cpp
+++ b/src/plugins/autotoolsprojectmanager/autotoolsproject.cpp
@@ -49,6 +49,7 @@
#include <coreplugin/icore.h>
#include <coreplugin/icontext.h>
#include <qtsupport/baseqtversion.h>
+#include <qtsupport/qtcppkitinfo.h>
#include <qtsupport/qtkitinformation.h>
#include <utils/algorithm.h>
#include <utils/qtcassert.h>
@@ -256,37 +257,19 @@ static QStringList filterIncludes(const QString &absSrc, const QString &absBuild
void AutotoolsProject::updateCppCodeModel()
{
- const Kit *k = nullptr;
- if (Target *target = activeTarget())
- k = target->kit();
- else
- k = KitManager::defaultKit();
- QTC_ASSERT(k, return);
-
- ToolChain *cToolChain
- = ToolChainKitInformation::toolChain(k, ProjectExplorer::Constants::C_LANGUAGE_ID);
- ToolChain *cxxToolChain
- = ToolChainKitInformation::toolChain(k, ProjectExplorer::Constants::CXX_LANGUAGE_ID);
+ QtSupport::CppKitInfo kitInfo(this);
+ QTC_ASSERT(kitInfo.isValid(), return);
CppTools::RawProjectPart rpp;
rpp.setDisplayName(displayName());
rpp.setProjectFileLocation(projectFilePath().toString());
-
- CppTools::ProjectPart::QtVersion activeQtVersion = CppTools::ProjectPart::NoQt;
- if (QtSupport::BaseQtVersion *qtVersion = QtSupport::QtKitInformation::qtVersion(k)) {
- if (qtVersion->qtVersion() < QtSupport::QtVersionNumber(5,0,0))
- activeQtVersion = CppTools::ProjectPart::Qt4;
- else
- activeQtVersion = CppTools::ProjectPart::Qt5;
- }
-
- rpp.setQtVersion(activeQtVersion);
+ rpp.setQtVersion(kitInfo.projectPartQtVersion);
const QStringList cflags = m_makefileParserThread->cflags();
QStringList cxxflags = m_makefileParserThread->cxxflags();
if (cxxflags.isEmpty())
cxxflags = cflags;
- rpp.setFlagsForC({cToolChain, cflags});
- rpp.setFlagsForCxx({cxxToolChain, cxxflags});
+ rpp.setFlagsForC({kitInfo.cToolChain, cflags});
+ rpp.setFlagsForCxx({kitInfo.cxxToolChain, cxxflags});
const QString absSrc = projectDirectory().toString();
const Target *target = activeTarget();
@@ -297,5 +280,6 @@ void AutotoolsProject::updateCppCodeModel()
rpp.setMacros(m_makefileParserThread->macros());
rpp.setFiles(m_files);
- m_cppCodeModelUpdater->update({this, cToolChain, cxxToolChain, k, {rpp}});
+ m_cppCodeModelUpdater->update(
+ {this, kitInfo.cToolChain, kitInfo.cxxToolChain, kitInfo.kit, {rpp}});
}