From 7bdf007c8641c01a5c7bbbe2195f22df490ed936 Mon Sep 17 00:00:00 2001 From: Tobias Hunger Date: Tue, 7 Jul 2015 15:24:47 +0200 Subject: Adapt to removal of ToolChain::type() QtC change: e6d1141e1e524cce1bb43a1a859bfbd5441c02d8 Change-Id: I50c0861dc6a864e54170b21de94a4106921e5a71 Reviewed-by: Tobias Hunger --- .../clangstaticanalyzer/clangstaticanalyzerruncontrol.cpp | 15 ++++++++------- .../clangstaticanalyzerruncontrolfactory.cpp | 8 ++++---- .../clangstaticanalyzer/clangstaticanalyzerunittests.cpp | 2 +- plugins/clangstaticanalyzer/clangstaticanalyzerutils.cpp | 6 ++++-- plugins/clangstaticanalyzer/clangstaticanalyzerutils.h | 4 +++- 5 files changed, 20 insertions(+), 15 deletions(-) diff --git a/plugins/clangstaticanalyzer/clangstaticanalyzerruncontrol.cpp b/plugins/clangstaticanalyzer/clangstaticanalyzerruncontrol.cpp index 9ca6a1dfa1..6403e5f1c8 100644 --- a/plugins/clangstaticanalyzer/clangstaticanalyzerruncontrol.cpp +++ b/plugins/clangstaticanalyzer/clangstaticanalyzerruncontrol.cpp @@ -143,14 +143,15 @@ public: // Therefore, prevent the inclusion of the header that references them. Of course, this // will break if code actually requires stuff from there, but that should be the less common // case. - const QString type = projectPart->toolchainType; - if (type == QLatin1String("mingw") || type == QLatin1String("gcc")) + const Core::Id type = projectPart->toolchainType; + if (type == ProjectExplorer::Constants::MINGW_TOOLCHAIN_ID + || type == ProjectExplorer::Constants::GCC_TOOLCHAIN_ID) optionsBuilder.addDefine("#define _X86INTRIN_H_INCLUDED\n"); optionsBuilder.addToolchainAndProjectDefines(); optionsBuilder.addHeaderPathOptions(); - if (projectPart->toolchainType == QLatin1String("msvc")) + if (type == ProjectExplorer::Constants::MSVC_TOOLCHAIN_ID) optionsBuilder.add(QLatin1String("/EHsc")); // clang-cl does not understand exceptions else optionsBuilder.add(QLatin1String("-fPIC")); // TODO: Remove? @@ -163,7 +164,7 @@ public: private: ClangStaticAnalyzerOptionsBuilder(const CppTools::ProjectPart::Ptr &projectPart) : CompilerOptionsBuilder(projectPart) - , m_isMsvcToolchain(m_projectPart->toolchainType == QLatin1String("msvc")) + , m_isMsvcToolchain(m_projectPart->toolchainType == ProjectExplorer::Constants::MSVC_TOOLCHAIN_ID) { } @@ -281,10 +282,10 @@ static QDebug operator<<(QDebug debug, const AnalyzeUnits &analyzeUnits) return debug; } -static QString toolchainType(ProjectExplorer::RunConfiguration *runConfiguration) +static Core::Id toolchainType(ProjectExplorer::RunConfiguration *runConfiguration) { - QTC_ASSERT(runConfiguration, return QString()); - return ToolChainKitInformation::toolChain(runConfiguration->target()->kit())->type(); + QTC_ASSERT(runConfiguration, return Core::Id()); + return ToolChainKitInformation::toolChain(runConfiguration->target()->kit())->typeId(); } bool ClangStaticAnalyzerRunControl::startEngine() diff --git a/plugins/clangstaticanalyzer/clangstaticanalyzerruncontrolfactory.cpp b/plugins/clangstaticanalyzer/clangstaticanalyzerruncontrolfactory.cpp index c8a24e4fcf..ef628959a9 100644 --- a/plugins/clangstaticanalyzer/clangstaticanalyzerruncontrolfactory.cpp +++ b/plugins/clangstaticanalyzer/clangstaticanalyzerruncontrolfactory.cpp @@ -63,10 +63,10 @@ bool ClangStaticAnalyzerRunControlFactory::canRun(RunConfiguration *runConfigura Kit *kit = target->kit(); QTC_ASSERT(kit, return false); ToolChain *toolChain = ToolChainKitInformation::toolChain(kit); - return toolChain && (toolChain->type() == QLatin1String("clang") - || toolChain->type() == QLatin1String("gcc") - || toolChain->type() == QLatin1String("mingw") - || toolChain->type() == QLatin1String("msvc")); + return toolChain && (toolChain->typeId() == ProjectExplorer::Constants::CLANG_TOOLCHAIN_ID + || toolChain->typeId() == ProjectExplorer::Constants::GCC_TOOLCHAIN_ID + || toolChain->typeId() == ProjectExplorer::Constants::MINGW_TOOLCHAIN_ID + || toolChain->typeId() == ProjectExplorer::Constants::MSVC_TOOLCHAIN_ID); } RunControl *ClangStaticAnalyzerRunControlFactory::create(RunConfiguration *runConfiguration, diff --git a/plugins/clangstaticanalyzer/clangstaticanalyzerunittests.cpp b/plugins/clangstaticanalyzer/clangstaticanalyzerunittests.cpp index faa2190726..65873400ab 100644 --- a/plugins/clangstaticanalyzer/clangstaticanalyzerunittests.cpp +++ b/plugins/clangstaticanalyzer/clangstaticanalyzerunittests.cpp @@ -61,7 +61,7 @@ void ClangStaticAnalyzerUnitTests::initTestCase() if (!toolchain) QSKIP("This test requires that there is a kit with a toolchain."); bool hasClangExecutable; - clangExecutableFromSettings(toolchain->type(), &hasClangExecutable); + clangExecutableFromSettings(toolchain->typeId(), &hasClangExecutable); if (!hasClangExecutable) QSKIP("No clang suitable for analyzing found"); diff --git a/plugins/clangstaticanalyzer/clangstaticanalyzerutils.cpp b/plugins/clangstaticanalyzer/clangstaticanalyzerutils.cpp index 65a5bb0a65..c3c68fa538 100644 --- a/plugins/clangstaticanalyzer/clangstaticanalyzerutils.cpp +++ b/plugins/clangstaticanalyzer/clangstaticanalyzerutils.cpp @@ -21,6 +21,8 @@ #include "clangstaticanalyzerdiagnostic.h" #include "clangstaticanalyzersettings.h" +#include + #include #include @@ -38,10 +40,10 @@ static bool isFileExecutable(const QString &executablePath) namespace ClangStaticAnalyzer { namespace Internal { -QString clangExecutableFromSettings(const QString &toolchainType, bool *isValid) +QString clangExecutableFromSettings(Core::Id toolchainType, bool *isValid) { QString exeFromSettings = ClangStaticAnalyzerSettings::instance()->clangExecutable(); - if (toolchainType == QLatin1String("msvc")) + if (toolchainType == ProjectExplorer::Constants::MSVC_TOOLCHAIN_ID) exeFromSettings.replace(QLatin1String("clang.exe"), QLatin1String("clang-cl.exe")); return clangExecutable(exeFromSettings, isValid); } diff --git a/plugins/clangstaticanalyzer/clangstaticanalyzerutils.h b/plugins/clangstaticanalyzer/clangstaticanalyzerutils.h index 38485e8210..9885fc7390 100644 --- a/plugins/clangstaticanalyzer/clangstaticanalyzerutils.h +++ b/plugins/clangstaticanalyzer/clangstaticanalyzerutils.h @@ -19,6 +19,8 @@ #ifndef CLANGSTATICANALYZERUTILS_H #define CLANGSTATICANALYZERUTILS_H +#include + #include QT_BEGIN_NAMESPACE @@ -33,7 +35,7 @@ class Location; bool isClangExecutableUsable(const QString &filePath, QString *errorMessage = 0); QString clangExecutable(const QString &fileNameOrPath, bool *isValid); -QString clangExecutableFromSettings(const QString &toolchainType, bool *isValid); +QString clangExecutableFromSettings(Core::Id toolchainType, bool *isValid); QString createFullLocationString(const ClangStaticAnalyzer::Internal::Location &location); -- cgit v1.2.1