diff options
author | Nikolai Kosjar <nikolai.kosjar@qt.io> | 2019-01-04 12:35:28 +0100 |
---|---|---|
committer | Nikolai Kosjar <nikolai.kosjar@qt.io> | 2019-01-10 07:13:38 +0000 |
commit | 4ce9ec5d63e5690d4402ec56a46ed99a60eaa6d3 (patch) | |
tree | c551955f0b3cf6df3f9178b8b8486abfea861186 /src/plugins/autotoolsprojectmanager | |
parent | 6b5b94d7caf6dc427c25e4ed9b3d9e1240532ec6 (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.cpp | 32 |
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}}); } |