ProjectExplorer: Collect bad baremetal toolchains

Extends 16ef8b6253.

Change-Id: I51d16057b45f21f50453a1d54a8bed7915c4d053
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
This commit is contained in:
Christian Kandeler
2022-01-21 12:00:27 +01:00
parent 7a5b71b9b8
commit a04cc5b7e1
2 changed files with 10 additions and 2 deletions

View File

@@ -535,10 +535,14 @@ Toolchains IarToolChainFactory::autoDetectToolchains(
Toolchains IarToolChainFactory::autoDetectToolchain(const Candidate &candidate, Id languageId) const
{
if (ToolChainManager::isBadToolchain(candidate.compilerPath))
return {};
const auto env = Environment::systemEnvironment();
const Macros macros = dumpPredefinedMacros(candidate.compilerPath, {}, languageId, env);
if (macros.isEmpty())
if (macros.isEmpty()) {
ToolChainManager::addBadToolchain(candidate.compilerPath);
return {};
}
const Abi abi = guessAbi(macros);
const auto tc = new IarToolChain;

View File

@@ -681,13 +681,17 @@ Toolchains KeilToolChainFactory::autoDetectToolchains(
Toolchains KeilToolChainFactory::autoDetectToolchain(const Candidate &candidate, Id language) const
{
if (ToolChainManager::isBadToolchain(candidate.compilerPath))
return {};
const auto env = Environment::systemEnvironment();
QStringList extraArgs;
addDefaultCpuArgs(candidate.compilerPath, extraArgs);
const Macros macros = dumpPredefinedMacros(candidate.compilerPath, extraArgs, env);
if (macros.isEmpty())
if (macros.isEmpty()) {
ToolChainManager::addBadToolchain(candidate.compilerPath);
return {};
}
const Abi abi = guessAbi(macros);
const Abi::Architecture arch = abi.architecture();