[SCM] Qt 4 packaging branch, experimental, updated. debian/4.7.4-1-31-gbe474c3

Fathi Boudra fabo at alioth.debian.org
Tue Dec 27 16:43:28 UTC 2011


The following commit has been merged in the experimental branch:
commit 8c8e2a5961fa34597c44c91ddfa4536b5e155374
Author: Fathi Boudra <fabo at debian.org>
Date:   Tue Dec 27 18:19:52 2011 +0200

    Add qt-multiarch-plugin-path-compat.diff - include legacy pre-multiarch plugin path.
---
 debian/changelog                                   |    3 ++
 .../patches/qt-multiarch-plugin-path-compat.diff   |   39 ++++++++++++++++++++
 debian/patches/series                              |    1 +
 3 files changed, 43 insertions(+), 0 deletions(-)

diff --git a/debian/changelog b/debian/changelog
index 1cf2af8..6fc3767 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -21,6 +21,9 @@ qt4-x11 (4:4.8.0-0multiarch1) UNRELEASED; urgency=low
     - blacklist-diginotar-cert.diff
     - Remove_QtHelp_dependency_on_QtXml.patch
   * Drop openssl_no_ssl2.patch - fixed upstream.
+  * Add patches:
+    - qt-multiarch-plugin-path-compat.diff - include legacy pre-multiarch
+      plugin path.
 
   [ Pino Toscano ]
   * Use the hurd-g++ mkspec when building on Hurd:
diff --git a/debian/patches/qt-multiarch-plugin-path-compat.diff b/debian/patches/qt-multiarch-plugin-path-compat.diff
new file mode 100644
index 0000000..c2250c1
--- /dev/null
+++ b/debian/patches/qt-multiarch-plugin-path-compat.diff
@@ -0,0 +1,39 @@
+Description: include legacy pre-multiarch plugin path
+ A full multiarch system requires an architecture-qualified plugin path for
+ Qt, but installed systems may still have plugins (e.g., from other
+ distribution packages) in another pre-multiarch directory.  When constructing
+ the plugin path, include both the configured plugin path and a plugin path
+ with the architecture triplet stripped out.
+Author: Steve Langasek <steve.langasek at ubuntu.com>
+Last-Update: 2011-09-23
+
+---
+ src/corelib/kernel/qcoreapplication.cpp |   17 +++++++++++++++++
+ 1 file changed, 17 insertions(+)
+
+--- a/src/corelib/kernel/qcoreapplication.cpp
++++ b/src/corelib/kernel/qcoreapplication.cpp
+@@ -2398,6 +2398,23 @@ QStringList QCoreApplication::libraryPat
+             if (!app_libpaths->contains(installPathPlugins))
+                 app_libpaths->append(installPathPlugins);
+         }
++        QString pathSep("/");
++        QStringList dirnames = QString(installPathPlugins).split(QLatin1Char('/'), QString::SkipEmptyParts);
++        if (dirnames[0] == QLatin1String("usr") && dirnames[1] == QLatin1String("lib") && dirnames[3] == QLatin1String("qt4"))
++        {
++            QString legacyPathPlugins = pathSep;
++            int i = 0;
++            for (QStringList::const_iterator it = dirnames.constBegin(); it != dirnames.constEnd(); ++it) {
++                if (++i == 3)
++                    continue;
++                legacyPathPlugins = legacyPathPlugins + QString(*it) + pathSep;
++            }
++            if (QFile::exists(legacyPathPlugins)) {
++                legacyPathPlugins = QDir(legacyPathPlugins).canonicalPath();
++                if (!app_libpaths->contains(legacyPathPlugins))
++                    app_libpaths->append(legacyPathPlugins);
++            }
++        }
+ #endif
+ 
+         // If QCoreApplication is not yet instantiated,
diff --git a/debian/patches/series b/debian/patches/series
index 57c6ce2..f0d1e8e 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -36,3 +36,4 @@ powerpcspe.diff
 sh.diff
 kfreebsd_monotonic_clock.diff
 powerpc_designer_gstabs.diff
+qt-multiarch-plugin-path-compat.diff

-- 
Qt 4 packaging



More information about the pkg-kde-commits mailing list