ClangTools: Query the tools for supported checks

...instead of hardcoding them for a particular version of
clang-tidy/clazy.

While at it, move also the tidy/clazy widgets to ClangTools as this
simplifies feeding data to them.

Reduce also the built-in configs to a single one using clang-tidy's and
clazy's default checks as they look very reasonable and saves us some
porting effort. Also, our previous built-in configs were just too
numerous.

Change-Id: Ib9297acb7810a940b86a23a8695530506a570394
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
This commit is contained in:
Nikolai Kosjar
2019-10-21 14:59:57 +02:00
parent 9a7f5e08fd
commit 0d7a30cdfe
36 changed files with 1762 additions and 2302 deletions

View File

@@ -75,11 +75,11 @@ static QStringList clazyPluginArguments(const ClangDiagnosticConfig diagnosticCo
static QStringList tidyChecksArguments(const ClangDiagnosticConfig diagnosticConfig)
{
const ClangDiagnosticConfig::TidyMode tidyMode = diagnosticConfig.clangTidyMode();
if (tidyMode != ClangDiagnosticConfig::TidyMode::Disabled) {
if (tidyMode != ClangDiagnosticConfig::TidyMode::File)
return {"-checks=" + diagnosticConfig.clangTidyChecks()};
}
// The argument "-config={}" stops stating/evaluating the .clang-tidy file.
if (tidyMode == ClangDiagnosticConfig::TidyMode::Default)
return {"-config={}"};
if (tidyMode == ClangDiagnosticConfig::TidyMode::ChecksPrefixList)
return {"-config={}", "-checks=" + diagnosticConfig.clangTidyChecks()};
return {};
}