Clangd: Fix version check to use (remote) executable

Fixes: QTCREATORBUG-30374
Change-Id: I4a98a82ea24bb55a2ab3eed72f13d3d6f648df8a
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
This commit is contained in:
Marcus Tillmanns
2024-02-15 12:49:39 +01:00
parent 6849c173c1
commit 4329b67c74
3 changed files with 3 additions and 4 deletions

View File

@@ -207,11 +207,11 @@ static BaseClientInterface *clientInterface(Project *project, const Utils::FileP
"--clang-tidy=0"}}; "--clang-tidy=0"}};
if (settings.workerThreadLimit() != 0) if (settings.workerThreadLimit() != 0)
cmd.addArg("-j=" + QString::number(settings.workerThreadLimit())); cmd.addArg("-j=" + QString::number(settings.workerThreadLimit()));
if (indexingEnabled && settings.clangdVersion() >= QVersionNumber(15)) { if (indexingEnabled && Utils::clangdVersion(clangdExePath) >= QVersionNumber(15)) {
cmd.addArg("--background-index-priority=" cmd.addArg("--background-index-priority="
+ ClangdSettings::priorityToString(indexingPriority)); + ClangdSettings::priorityToString(indexingPriority));
} }
if (settings.clangdVersion() >= QVersionNumber(16)) if (Utils::clangdVersion(clangdExePath) >= QVersionNumber(16))
cmd.addArg("--rename-file-limit=0"); cmd.addArg("--rename-file-limit=0");
if (!jsonDbDir.isEmpty()) if (!jsonDbDir.isEmpty())
cmd.addArg("--compile-commands-dir=" + clangdExePath.withNewMappedPath(jsonDbDir).path()); cmd.addArg("--compile-commands-dir=" + clangdExePath.withNewMappedPath(jsonDbDir).path());

View File

@@ -273,7 +273,7 @@ ClangdSettings::ClangdSettings()
bool ClangdSettings::useClangd() const bool ClangdSettings::useClangd() const
{ {
return m_data.useClangd && clangdVersion() >= QVersionNumber(14); return m_data.useClangd && Utils::clangdVersion(clangdFilePath()) >= QVersionNumber(14);
} }
void ClangdSettings::setUseClangd(bool use) { instance().m_data.useClangd = use; } void ClangdSettings::setUseClangd(bool use) { instance().m_data.useClangd = use; }

View File

@@ -182,7 +182,6 @@ public:
void setData(const Data &data); void setData(const Data &data);
Data data() const { return m_data; } Data data() const { return m_data; }
QVersionNumber clangdVersion() const { return Utils::clangdVersion(clangdFilePath()); }
Utils::FilePath clangdIncludePath() const; Utils::FilePath clangdIncludePath() const;
static Utils::FilePath clangdUserConfigFilePath(); static Utils::FilePath clangdUserConfigFilePath();