void QmakeKitInformation::setup(Kit *k) { QtSupport::BaseQtVersion *version = QtSupport::QtKitInformation::qtVersion(k); if (!version) return; FileName spec = QmakeKitInformation::mkspec(k); if (spec.isEmpty()) spec = version->mkspec(); ToolChain *tc = ToolChainKitInformation::toolChain(k); if (!tc || (!tc->suggestedMkspecList().empty() && !tc->suggestedMkspecList().contains(spec))) { ToolChain *possibleTc = 0; foreach (ToolChain *current, ToolChainManager::toolChains()) { if (version->qtAbis().contains(current->targetAbi())) { possibleTc = current; if (current->suggestedMkspecList().contains(spec)) break; } } ToolChainKitInformation::setToolChain(k, possibleTc); }
void QmlProject::refresh(RefreshOptions options) { parseProject(options); if (options & Files) m_rootNode->refresh(); QmlJS::ModelManagerInterface::ProjectInfo pinfo(this); pinfo.sourceFiles = files(); pinfo.importPaths = importPaths(); QtSupport::BaseQtVersion *version = 0; if (activeTarget()) { if (QmlProjectRunConfiguration *rc = qobject_cast<QmlProjectRunConfiguration *>(activeTarget()->activeRunConfiguration())) version = rc->qtVersion(); QList<ProjectExplorer::ToolChain *> tcList; if (version && !version->qtAbis().isEmpty()) tcList = ProjectExplorer::ToolChainManager::instance()->findToolChains(version->qtAbis().at(0)); if (!tcList.isEmpty()) QtSupport::QmlDumpTool::pathAndEnvironment(this, version, tcList.first(), false, &pinfo.qmlDumpPath, &pinfo.qmlDumpEnvironment); } if (version) { pinfo.tryQmlDump = true; pinfo.qtImportsPath = version->versionInfo().value("QT_INSTALL_IMPORTS"); pinfo.qtVersionString = version->qtVersionString(); } m_modelManager->updateProjectInfo(pinfo); }
void QmakeKitInformation::setup(Kit *k) { QtSupport::BaseQtVersion *version = QtSupport::QtKitInformation::qtVersion(k); if (!version) return; if (version->type() == "Boot2Qt.QtVersionType") // HACK: Ignore boot2Qt kits! return; FileName spec = QmakeKitInformation::mkspec(k); if (spec.isEmpty()) spec = version->mkspec(); ToolChain *tc = ToolChainKitInformation::toolChain(k, ToolChain::Language::Cxx); if (!tc || (!tc->suggestedMkspecList().empty() && !tc->suggestedMkspecList().contains(spec))) { ToolChain *possibleTc = nullptr; foreach (ToolChain *current, ToolChainManager::toolChains()) { if (current->language() == ToolChain::Language::Cxx && version->qtAbis().contains(current->targetAbi())) { possibleTc = current; if (current->suggestedMkspecList().contains(spec)) break; } } if (possibleTc) ToolChainKitInformation::setToolChain(k, possibleTc); }