[SCM] qtcreator packaging branch, master, updated. debian/3.2.1+dfsg-4-2-gbfbe369
Adam Majer
adamm at moszumanska.debian.org
Fri Oct 24 04:46:10 UTC 2014
Gitweb-URL: http://git.debian.org/?p=pkg-kde/qt/qtcreator.git;a=commitdiff;h=bfbe369
The following commit has been merged in the master branch:
commit bfbe36955bb6d660d5f629c81fc5c3843dc4aa94
Author: Adam Majer <adamm at zombino.com>
Date: Thu Oct 23 23:45:57 2014 -0500
Fix Qt version autodetection so autodetected Qt versions can be used in kits
---
debian/changelog | 7 +++
debian/patches/always_autotect_qt_versions | 92 ++++++++++++++++++++++++------
2 files changed, 83 insertions(+), 16 deletions(-)
diff --git a/debian/changelog b/debian/changelog
index 3a4eaf3..ca345a5 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,10 @@
+qtcreator (3.2.1+dfsg-6) UNRELEASED; urgency=medium
+
+ * Fix previous patch so autodetected Qt versions can be used and saved
+ in "kits"
+
+ -- Adam Majer <adamm at zombino.com> Thu, 23 Oct 2014 23:44:13 -0500
+
qtcreator (3.2.1+dfsg-5) unstable; urgency=medium
* Modify Qt autodetection to always have up-to-date-list of installed Qt
diff --git a/debian/patches/always_autotect_qt_versions b/debian/patches/always_autotect_qt_versions
index 38094f3..94e6910 100644
--- a/debian/patches/always_autotect_qt_versions
+++ b/debian/patches/always_autotect_qt_versions
@@ -1,7 +1,16 @@
Index: qtcreator/src/plugins/qtsupport/qtversionmanager.cpp
===================================================================
--- qtcreator.orig/src/plugins/qtsupport/qtversionmanager.cpp 2014-10-22 21:36:36.474107687 -0500
-+++ qtcreator/src/plugins/qtsupport/qtversionmanager.cpp 2014-10-22 21:39:50.470102437 -0500
++++ qtcreator/src/plugins/qtsupport/qtversionmanager.cpp 2014-10-23 23:35:56.154526332 -0500
+@@ -139,7 +139,7 @@
+ static BaseQtVersion::QmakeBuildConfigs qmakeBuildConfigFromCmdArgs(QList<QMakeAssignment> *assignments,
+ BaseQtVersion::QmakeBuildConfigs defaultBuildConfig);
+ static bool restoreQtVersions();
+-static void findSystemQt();
++static void updateSystemQt();
+ static void saveQtVersions();
+ static void updateDocumentation();
+
@@ -168,14 +168,11 @@
disconnect(ProjectExplorer::ToolChainManager::instance(), SIGNAL(toolChainsLoaded()),
this, SLOT(triggerQtVersionRestore()));
@@ -17,26 +26,77 @@ Index: qtcreator/src/plugins/qtsupport/qtversionmanager.cpp
- }
+
+ // add system Qt
-+ findSystemQt();
++ updateSystemQt();
emit m_instance->qtVersionsLoaded();
emit m_instance->qtVersionsChanged(m_versions.keys(), QList<int>(), QList<int>());
-@@ -424,6 +421,9 @@
+@@ -435,27 +432,54 @@
+ m_writer->save(data, Core::ICore::mainWindow());
+ }
+
+-static void findSystemQt()
++static void addSystemVersion(FileName qmake_fn)
+ {
+- QList<FileName> systemQMakes;
+- FileName systemQMakePath = BuildableHelperLibrary::findSystemQt(Environment::systemEnvironment());
+-
+- if (!systemQMakePath.isNull())
+- systemQMakes << systemQMakePath;
++ BaseQtVersion *v = QtVersionFactory::createQtVersionFromQMakePath(qmake_fn, true);
++ m_versions.insert(v->uniqueId(), v);
++}
- int count = 0;
- foreach (BaseQtVersion *qtv, m_versions) {
-+ if (qtv->isAutodetected())
-+ continue;
++static void updateSystemQt()
++{
++ QString systemQMakePath = BuildableHelperLibrary::findSystemQt(Environment::systemEnvironment()).toString();
+ QStringList qmakePathsFromQtChooser = gatherQmakePathsFromQtChooser();
+- qmakePathsFromQtChooser.removeAll(systemQMakePath.toString());
+- foreach (const QString &qmakePath, qmakePathsFromQtChooser) {
+- FileName qmake = FileName::fromString(qmakePath);
+- systemQMakes << qmake;
++ if (!qmakePathsFromQtChooser.contains(systemQMakePath))
++ qmakePathsFromQtChooser << systemQMakePath;
++ qmakePathsFromQtChooser.sort();
+
- QVariantMap tmp = qtv->toMap();
- if (tmp.isEmpty())
- continue;
-@@ -451,7 +451,7 @@
++ QMap<QString,int> currentAutoVersions;
++ for (QMap<int, BaseQtVersion*>::const_iterator i = m_versions.begin(); i != m_versions.end(); ++i) {
++ if (i.value()->isAutodetected()) {
++ currentAutoVersions.insert(i.value()->qmakeCommand().toString(), i.key());
++ }
}
- foreach (const FileName &qmakePath, systemQMakes) {
+- foreach (const FileName &qmakePath, systemQMakes) {
- BaseQtVersion *version = QtVersionFactory::createQtVersionFromQMakePath(qmakePath);
-+ BaseQtVersion *version = QtVersionFactory::createQtVersionFromQMakePath(qmakePath, true);
- if (version) {
- version->setDisplayName(BaseQtVersion::defaultDisplayName(version->qtVersionString(), qmakePath, true));
- m_versions.insert(version->uniqueId(), version);
+- if (version) {
+- version->setDisplayName(BaseQtVersion::defaultDisplayName(version->qtVersionString(), qmakePath, true));
+- m_versions.insert(version->uniqueId(), version);
++ QMap<QString,int>::const_iterator av = currentAutoVersions.begin();
++ QStringList::const_iterator dv = qmakePathsFromQtChooser.begin();
++ while (av != currentAutoVersions.end() && dv != qmakePathsFromQtChooser.end()) {
++ if (av.key() == *dv) {
++ ++av;
++ ++dv;
+ }
++ else if (av.key() < *dv) {
++ // currently saved automatic version has been removed
++ m_versions.remove(*av);
++ ++av;
++ }
++ else { // av.key() > *dv
++ // detected version is missing, add it
++ addSystemVersion(FileName::fromString(*dv));
++ ++dv;
++ }
++ }
++
++ while (av != currentAutoVersions.end()) {
++ m_versions.remove(*av);
++ ++av;
++ }
++
++ while (dv != qmakePathsFromQtChooser.end()) {
++ addSystemVersion(FileName::fromString(*dv));
++ ++dv;
+ }
+ }
+
--
qtcreator packaging
More information about the pkg-kde-commits
mailing list