summaryrefslogtreecommitdiff
path: root/src/plugins/qnx/blackberryconfigurationmanager.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/qnx/blackberryconfigurationmanager.cpp')
-rw-r--r--src/plugins/qnx/blackberryconfigurationmanager.cpp20
1 files changed, 20 insertions, 0 deletions
diff --git a/src/plugins/qnx/blackberryconfigurationmanager.cpp b/src/plugins/qnx/blackberryconfigurationmanager.cpp
index c5136172be..7af64cc3d0 100644
--- a/src/plugins/qnx/blackberryconfigurationmanager.cpp
+++ b/src/plugins/qnx/blackberryconfigurationmanager.cpp
@@ -33,6 +33,7 @@
#include "blackberrycertificate.h"
#include "blackberryconfiguration.h"
+#include "qnxtoolchain.h"
#include "qnxutils.h"
#include <coreplugin/icore.h>
@@ -210,6 +211,24 @@ void BlackBerryConfigurationManager::clearInvalidConfigurations()
}
}
+// Switch to QnxToolchain for exisintg configuration using GccToolChain
+void BlackBerryConfigurationManager::checkToolChainConfiguration()
+{
+ foreach (BlackBerryConfiguration *config, m_configs) {
+ foreach (ToolChain *tc, ToolChainManager::toolChains()) {
+ if (tc->compilerCommand() == config->gccCompiler()
+ && !tc->id().startsWith(QLatin1String(Constants::QNX_TOOLCHAIN_ID))) {
+ if (config->isActive()) {
+ // reset
+ config->deactivate();
+ config->activate();
+ break;
+ }
+ }
+ }
+ }
+}
+
bool BlackBerryConfigurationManager::addConfiguration(BlackBerryConfiguration *config)
{
foreach (BlackBerryConfiguration *c, m_configs) {
@@ -298,6 +317,7 @@ void BlackBerryConfigurationManager::loadSettings()
clearInvalidConfigurations();
loadAutoDetectedConfigurations();
loadManualConfigurations();
+ checkToolChainConfiguration();
emit settingsLoaded();
}