summaryrefslogtreecommitdiff
path: root/src/plugins/projectexplorer/toolchainsettingsaccessor.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/projectexplorer/toolchainsettingsaccessor.cpp')
-rw-r--r--src/plugins/projectexplorer/toolchainsettingsaccessor.cpp17
1 files changed, 9 insertions, 8 deletions
diff --git a/src/plugins/projectexplorer/toolchainsettingsaccessor.cpp b/src/plugins/projectexplorer/toolchainsettingsaccessor.cpp
index 7142ffdce9..021cd0992f 100644
--- a/src/plugins/projectexplorer/toolchainsettingsaccessor.cpp
+++ b/src/plugins/projectexplorer/toolchainsettingsaccessor.cpp
@@ -58,7 +58,7 @@ public:
static const char TOOLCHAIN_DATA_KEY[] = "ToolChain.";
static const char TOOLCHAIN_COUNT_KEY[] = "ToolChain.Count";
-static const char TOOLCHAIN_FILENAME[] = "/toolchains.xml";
+static const char TOOLCHAIN_FILENAME[] = "toolchains.xml";
struct ToolChainOperations
{
@@ -67,11 +67,12 @@ struct ToolChainOperations
QList<ToolChain *> toDelete;
};
-static QList<ToolChain *> autoDetectToolChains(const QList<ToolChain *> alreadyKnownTcs)
+static QList<ToolChain *> autoDetectToolChains(const QList<ToolChain *> alreadyKnownTcs,
+ const IDevice::Ptr &device)
{
QList<ToolChain *> result;
for (ToolChainFactory *f : ToolChainFactory::allToolChainFactories())
- result.append(f->autoDetect(alreadyKnownTcs));
+ result.append(f->autoDetect(alreadyKnownTcs, device));
// Remove invalid toolchains that might have sneaked in.
return Utils::filtered(result, [](const ToolChain *tc) { return tc->isValid(); });
@@ -184,7 +185,7 @@ ToolChainSettingsAccessor::ToolChainSettingsAccessor() :
QCoreApplication::translate("ProjectExplorer::ToolChainManager", "Tool Chains"),
Core::Constants::IDE_DISPLAY_NAME)
{
- setBaseFilePath(FilePath::fromString(Core::ICore::userResourcePath() + TOOLCHAIN_FILENAME));
+ setBaseFilePath(Core::ICore::userResourcePath(TOOLCHAIN_FILENAME));
addVersionUpgrader(std::make_unique<ToolChainSettingsUpgraderV0>());
}
@@ -192,9 +193,8 @@ ToolChainSettingsAccessor::ToolChainSettingsAccessor() :
QList<ToolChain *> ToolChainSettingsAccessor::restoreToolChains(QWidget *parent) const
{
// read all tool chains from SDK
- const QList<ToolChain *> systemFileTcs
- = toolChains(restoreSettings(FilePath::fromString(Core::ICore::installerResourcePath() + TOOLCHAIN_FILENAME),
- parent));
+ const QList<ToolChain *> systemFileTcs = toolChains(
+ restoreSettings(Core::ICore::installerResourcePath(TOOLCHAIN_FILENAME), parent));
for (ToolChain * const systemTc : systemFileTcs)
systemTc->setDetection(ToolChain::AutoDetectionFromSdk);
@@ -204,7 +204,8 @@ QList<ToolChain *> ToolChainSettingsAccessor::restoreToolChains(QWidget *parent)
// Autodetect: Pass autodetected toolchains from user file so the information can be reused:
const QList<ToolChain *> autodetectedUserFileTcs
= Utils::filtered(userFileTcs, &ToolChain::isAutoDetected);
- const QList<ToolChain *> autodetectedTcs = autoDetectToolChains(autodetectedUserFileTcs);
+ // FIXME: Use real device?
+ const QList<ToolChain *> autodetectedTcs = autoDetectToolChains(autodetectedUserFileTcs, {});
// merge tool chains and register those that we need to keep:
const ToolChainOperations ops = mergeToolChainLists(systemFileTcs, userFileTcs, autodetectedTcs);