aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/clangtools/clangtidyclazyrunner.cpp
diff options
context:
space:
mode:
authorNikolai Kosjar <nikolai.kosjar@qt.io>2019-08-02 10:33:06 +0200
committerNikolai Kosjar <nikolai.kosjar@qt.io>2019-09-12 10:51:48 +0000
commit74688679b29412512e2dc0c1f3b5c3c15a678b29 (patch)
treea7fe05ff768b4cafd2256a0e12a10513306b7d38 /src/plugins/clangtools/clangtidyclazyrunner.cpp
parenta8f00d147c4177be68ff5031b881066ee7004175 (diff)
ClangTools: Allow invoking clazy-standalone instead of clang
...this is for testing and debugging purposes so far. Eventually, we want to switch to clazy-standalone. But as of now there is no released clazy version supporting the required "-export-fixes=" option. It's in clazy's master branch only. Change-Id: If09941dc387658bbc17646a9140f4ee8fad4d6b3 Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io> Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Diffstat (limited to 'src/plugins/clangtools/clangtidyclazyrunner.cpp')
-rw-r--r--src/plugins/clangtools/clangtidyclazyrunner.cpp23
1 files changed, 23 insertions, 0 deletions
diff --git a/src/plugins/clangtools/clangtidyclazyrunner.cpp b/src/plugins/clangtools/clangtidyclazyrunner.cpp
index c09c914b11..1a3a0cea47 100644
--- a/src/plugins/clangtools/clangtidyclazyrunner.cpp
+++ b/src/plugins/clangtools/clangtidyclazyrunner.cpp
@@ -86,6 +86,14 @@ static QStringList tidyChecksArguments(const ClangDiagnosticConfig diagnosticCon
return {};
}
+static QStringList clazyChecksArguments(const ClangDiagnosticConfig diagnosticConfig)
+{
+ const QString clazyChecks = diagnosticConfig.clazyChecks();
+ if (!clazyChecks.isEmpty())
+ return {"-checks=" + diagnosticConfig.clazyChecks()};
+ return {};
+}
+
static QStringList mainToolArguments(const QString &mainFilePath, const QString &outputFilePath)
{
return {
@@ -123,6 +131,21 @@ ClangTidyRunner::ClangTidyRunner(const ClangDiagnosticConfig &config, QObject *p
});
}
+ClazyStandaloneRunner::ClazyStandaloneRunner(const ClangDiagnosticConfig &config, QObject *parent)
+ : ClangToolRunner(parent)
+{
+ setName(tr("Clazy"));
+ setOutputFileFormat(OutputFileFormat::Yaml);
+ setExecutable(qEnvironmentVariable("QTC_USE_CLAZY_STANDALONE_PATH"));
+ setArgsCreator([this, config](const QStringList &baseOptions) {
+ return QStringList()
+ << clazyChecksArguments(config)
+ << mainToolArguments(filePath(), m_logFile)
+ << "--"
+ << clangArguments(config, baseOptions);
+ });
+}
+
ClazyPluginRunner::ClazyPluginRunner(const ClangDiagnosticConfig &config, QObject *parent)
: ClangToolRunner(parent)
{