aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/clangtools/clangtoolruncontrol.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/clangtools/clangtoolruncontrol.cpp')
-rw-r--r--src/plugins/clangtools/clangtoolruncontrol.cpp30
1 files changed, 15 insertions, 15 deletions
diff --git a/src/plugins/clangtools/clangtoolruncontrol.cpp b/src/plugins/clangtools/clangtoolruncontrol.cpp
index b60e3d0400..090e9d8216 100644
--- a/src/plugins/clangtools/clangtoolruncontrol.cpp
+++ b/src/plugins/clangtools/clangtoolruncontrol.cpp
@@ -31,6 +31,7 @@
#include "clangtoolsprojectsettings.h"
#include "clangtoolssettings.h"
#include "clangtoolsutils.h"
+#include "executableinfo.h"
#include <debugger/analyzer/analyzerconstants.h>
@@ -153,7 +154,8 @@ private:
bool m_success = false;
};
-static AnalyzeUnits toAnalyzeUnits(const FileInfos &fileInfos)
+static AnalyzeUnits toAnalyzeUnits(const FileInfos &fileInfos, const FilePath &clangResourceDir,
+ const QString &clangVersion)
{
AnalyzeUnits unitsToAnalyze;
const UsePrecompiledHeaders usePrecompiledHeaders = CppTools::getPchUsage();
@@ -163,8 +165,8 @@ static AnalyzeUnits toAnalyzeUnits(const FileInfos &fileInfos)
UseTweakedHeaderPaths::Yes,
UseLanguageDefines::No,
UseBuildSystemWarnings::No,
- QString(CLANG_VERSION),
- QString(CLANG_RESOURCE_DIR));
+ clangVersion,
+ clangResourceDir.toString());
QStringList arguments = extraClangToolsPrependOptions();
arguments.append(optionsBuilder.build(fileInfo.kind, usePrecompiledHeaders));
arguments.append(extraClangToolsAppendOptions());
@@ -174,11 +176,12 @@ static AnalyzeUnits toAnalyzeUnits(const FileInfos &fileInfos)
return unitsToAnalyze;
}
-AnalyzeUnits ClangToolRunWorker::unitsToAnalyze()
+AnalyzeUnits ClangToolRunWorker::unitsToAnalyze(const FilePath &clangResourceDir,
+ const QString &clangVersion)
{
QTC_ASSERT(m_projectInfo.isValid(), return AnalyzeUnits());
- return toAnalyzeUnits(m_fileInfos);
+ return toAnalyzeUnits(m_fileInfos, clangResourceDir, clangVersion);
}
static QDebug operator<<(QDebug debug, const Utils::Environment &environment)
@@ -223,8 +226,7 @@ ClangToolRunWorker::ClangToolRunWorker(RunControl *runControl,
QTC_ASSERT(buildConfiguration, return);
m_environment = buildConfiguration->environment();
- ToolChain *toolChain = ToolChainKitAspect::toolChain(target->kit(),
- ProjectExplorer::Constants::CXX_LANGUAGE_ID);
+ ToolChain *toolChain = ToolChainKitAspect::cxxToolChain(target->kit());
QTC_ASSERT(toolChain, return);
m_targetTriple = toolChain->originalTargetTriple();
m_toolChainType = toolChain->typeId();
@@ -237,12 +239,8 @@ QList<RunnerCreator> ClangToolRunWorker::runnerCreators()
if (m_diagnosticConfig.isClangTidyEnabled())
creators << [this]() { return createRunner<ClangTidyRunner>(); };
- if (m_diagnosticConfig.isClazyEnabled()) {
- if (!qEnvironmentVariable("QTC_USE_CLAZY_STANDALONE_PATH").isEmpty())
- creators << [this]() { return createRunner<ClazyStandaloneRunner>(); };
- else
- creators << [this]() { return createRunner<ClazyPluginRunner>(); };
- }
+ if (m_diagnosticConfig.isClazyEnabled())
+ creators << [this]() { return createRunner<ClazyStandaloneRunner>(); };
return creators;
}
@@ -290,7 +288,10 @@ void ClangToolRunWorker::start()
Utils::NormalMessageFormat);
// Collect files
- const AnalyzeUnits unitsToProcess = unitsToAnalyze();
+ const auto clangResourceDirAndVersion =
+ getClangResourceDirAndVersion(runControl()->runnable().executable);
+ const AnalyzeUnits unitsToProcess = unitsToAnalyze(clangResourceDirAndVersion.first,
+ clangResourceDirAndVersion.second);
qCDebug(LOG) << "Files to process:" << unitsToProcess;
m_queue.clear();
@@ -389,7 +390,6 @@ void ClangToolRunWorker::onRunnerFinishedWithSuccess(const QString &filePath)
QString errorMessage;
const Diagnostics diagnostics = tool()->read(runner->outputFileFormat(),
outputFilePath,
- filePath,
m_projectFiles,
&errorMessage);