Kits: Save several ToolChains per kit

BREAKS BACKWARD COMPATIBILITY OF TOOLCHAIN SETTINGS!

* Convert old ToolChainKitInformation to new version
* Store several toolchains in one kit (one per language)

Change-Id: Ia59a2ad067c57971ec34ce9b2e43758344443755
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
This commit is contained in:
Tobias Hunger
2016-07-12 16:27:45 +02:00
parent ce9ca1f0ef
commit cb14fb0d71
38 changed files with 166 additions and 98 deletions

View File

@@ -170,7 +170,7 @@ void QmakeBuildConfiguration::kitChanged()
void QmakeBuildConfiguration::toolChainUpdated(ToolChain *tc)
{
if (ToolChainKitInformation::toolChain(target()->kit()) == tc)
if (ToolChainKitInformation::toolChain(target()->kit(), ToolChain::Language::Cxx) == tc)
emitProFileEvaluateNeeded();
}
@@ -766,7 +766,7 @@ QmakeBuildConfiguration::LastKitState::LastKitState(Kit *k)
m_sysroot(SysRootKitInformation::sysRoot(k).toString()),
m_mkspec(QmakeKitInformation::mkspec(k).toString())
{
ToolChain *tc = ToolChainKitInformation::toolChain(k);
ToolChain *tc = ToolChainKitInformation::toolChain(k, ToolChain::Language::Cxx);
m_toolchain = tc ? tc->id() : QByteArray();
}