GccToolChain: Respect user changes to the ABI

Upon restoring toolchain settings, we would overwrite the ABI with an
auto-detected value if it contained any "unknown" parts.

Fixes: QTCREATORBUG-19896
Change-Id: I38fd704da2c12603961a125fb779eca625815246
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
This commit is contained in:
Christian Kandeler
2019-01-16 16:24:02 +01:00
parent c7f22213ee
commit 5f61381cba

View File

@@ -787,7 +787,8 @@ bool GccToolChain::fromMap(const QVariantMap &data)
m_compilerCommand = FileName::fromString(data.value(compilerCommandKeyC).toString());
m_platformCodeGenFlags = data.value(compilerPlatformCodeGenFlagsKeyC).toStringList();
m_platformLinkerFlags = data.value(compilerPlatformLinkerFlagsKeyC).toStringList();
m_targetAbi = Abi::fromString(data.value(targetAbiKeyC).toString());
const QString targetAbiString = data.value(targetAbiKeyC).toString();
m_targetAbi = Abi::fromString(targetAbiString);
m_originalTargetTriple = data.value(originalTargetTripleKeyC).toString();
const QStringList abiList = data.value(supportedAbisKeyC).toStringList();
m_supportedAbis.clear();
@@ -798,7 +799,7 @@ bool GccToolChain::fromMap(const QVariantMap &data)
m_supportedAbis.append(abi);
}
if (!m_targetAbi.isValid())
if (targetAbiString.isEmpty())
resetToolChain(m_compilerCommand);
return true;