diff options
author | Nikolai Kosjar <nikolai.kosjar@qt.io> | 2019-08-02 10:33:06 +0200 |
---|---|---|
committer | Nikolai Kosjar <nikolai.kosjar@qt.io> | 2019-09-12 10:51:48 +0000 |
commit | 74688679b29412512e2dc0c1f3b5c3c15a678b29 (patch) | |
tree | a7fe05ff768b4cafd2256a0e12a10513306b7d38 /src/plugins/clangtools/clangtidyclazyrunner.cpp | |
parent | a8f00d147c4177be68ff5031b881066ee7004175 (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.cpp | 23 |
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) { |