[SCM] qtdeclarative packaging branch, master, updated. debian/5.6.1-10-3-g749f78c

Dmitry Shachnev mitya57 at moszumanska.debian.org
Fri Oct 7 06:58:50 UTC 2016


Gitweb-URL: http://git.debian.org/?p=pkg-kde/qt/qtdeclarative.git;a=commitdiff;h=749f78c

The following commit has been merged in the master branch:
commit 749f78c7842d5be368a01e3f65c3aa6e287789ec
Author: Dmitry Shachnev <mitya57 at gmail.com>
Date:   Fri Oct 7 09:58:31 2016 +0300

    Update fix-V4-on-big-endian.patch with a fix for 32-bit big endian archs.
    
    Drop fix_engine_64bits_big_endian.diff, now redundant.
---
 debian/changelog                                 |  3 ++
 debian/patches/fix-V4-on-big-endian.patch        | 48 +++++++++++++-----------
 debian/patches/fix_engine_64bits_big_endian.diff | 26 -------------
 debian/patches/series                            |  1 -
 4 files changed, 29 insertions(+), 49 deletions(-)

diff --git a/debian/changelog b/debian/changelog
index b660d7a..6dd60df 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -2,6 +2,9 @@ qtdeclarative-opensource-src (5.6.1-11) UNRELEASED; urgency=medium
 
   [ Dmitry Shachnev ]
   * Run make check with -k flag to get as much output as possible.
+  * Update fix-V4-on-big-endian.patch with a fix for 32-bit big endian
+    architectures.
+  * Drop fix_engine_64bits_big_endian.diff, now redundant.
 
  -- Debian Qt/KDE Maintainers <debian-qt-kde at lists.debian.org>  Fri, 30 Sep 2016 22:58:19 +0300
 
diff --git a/debian/patches/fix-V4-on-big-endian.patch b/debian/patches/fix-V4-on-big-endian.patch
index 915d479..c018129 100644
--- a/debian/patches/fix-V4-on-big-endian.patch
+++ b/debian/patches/fix-V4-on-big-endian.patch
@@ -1,28 +1,32 @@
-From 2a658344397729450f869138bf77e063a0a6166b Mon Sep 17 00:00:00 2001
-From: Allan Sandfeld Jensen <allan.jensen at theqtcompany.com>
-Date: Mon, 12 Sep 2016 13:15:20 +0200
-Subject: [PATCH] Fix V4 on big-endian
-
-We can't both invert offset position and inter-value positions of tag
-and value.
-
-This patch changes 32-bit big-endian to use the same order inside
-the tag/value but just at different offsets. This also make it
-compatible with how we use it with doubles.
-
-This fixes value/tag reads on 32-bit big-endian and offsets on 64-bit.
-
-Change-Id: I95cf792c29ac3f42a4018ce1f115193c143a0df0
-Reviewed-by: Erik Verbruggen <erik.verbruggen at qt.io>
-Backport-By: Sandro Knauß <bugs at sandroknauss.de>
-Backport-Info: Upstream has developed this patch for 5.7
----
- src/qml/jsruntime/qv4value_p.h | 13 +++++--------
- 1 file changed, 5 insertions(+), 8 deletions(-)
+Description: Fix V4 on big-endian
+ We can't both invert offset position and inter-value positions of tag
+ and value.
+ .
+ This patch changes 32-bit big-endian to use the same order inside
+ the tag/value but just at different offsets. This also make it
+ compatible with how we use it with doubles.
+ .
+ This fixes value/tag reads on 32-bit big-endian and offsets on 64-bit.
+ .
+ Patch adapted for Qt 5.6 branch by Dmitry Shachnev <mitya57 at debian.org>.
+Origin: upstream, https://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=2a65834439772945
+Last-Update: 2016-10-06
 
 --- a/src/qml/jsruntime/qv4value_p.h
 +++ b/src/qml/jsruntime/qv4value_p.h
-@@ -98,16 +98,13 @@ struct Q_QML_PRIVATE_EXPORT Value
+@@ -92,22 +92,25 @@
+ 
+     Q_ALWAYS_INLINE quint64 val() const { return _val; }
+     Q_ALWAYS_INLINE void setVal(quint64 v) { _val = v; }
++
++#if Q_BYTE_ORDER == Q_BIG_ENDIAN
++    Q_ALWAYS_INLINE void setValue(quint32 t) { memcpy(4 + (quint8 *)&_val, &t, 4); }
++    Q_ALWAYS_INLINE void setTag(quint32 v) { memcpy(&_val, &v, 4); }
++#else
+     Q_ALWAYS_INLINE void setValue(quint32 v) { memcpy(&_val, &v, 4); }
+     Q_ALWAYS_INLINE void setTag(quint32 t) { memcpy(4 + (quint8 *)&_val, &t, 4); }
++#endif
+ 
  #if Q_BYTE_ORDER == Q_LITTLE_ENDIAN
      static inline int valueOffset() { return 0; }
      static inline int tagOffset() { return 4; }
diff --git a/debian/patches/fix_engine_64bits_big_endian.diff b/debian/patches/fix_engine_64bits_big_endian.diff
deleted file mode 100644
index d54d931..0000000
--- a/debian/patches/fix_engine_64bits_big_endian.diff
+++ /dev/null
@@ -1,26 +0,0 @@
-From: Maximilaino Curia <maxy at debian.org>
-Date: Tue, 19 Jul 2016 12:20:00 +0200
-Subject: Fix engine in big endian 64 arches (s390x)
-
-This fixes https://bugreports.qt.io/browse/QTBUG-54717
-
---- a/src/qml/jsruntime/qv4value_p.h
-+++ b/src/qml/jsruntime/qv4value_p.h
-@@ -92,10 +92,16 @@ struct Q_QML_PRIVATE_EXPORT Value
- 
-     Q_ALWAYS_INLINE quint64 val() const { return _val; }
-     Q_ALWAYS_INLINE void setVal(quint64 v) { _val = v; }
-+
-+#if defined(QV4_USE_64_BIT_VALUE_ENCODING) && Q_BYTE_ORDER == Q_BIG_ENDIAN
-+    Q_ALWAYS_INLINE void setValue(quint32 t) { memcpy(4 + (quint8 *)&_val, &t, 4); }
-+    Q_ALWAYS_INLINE void setTag(quint32 v) { memcpy(&_val, &v, 4); }
-+#else
-     Q_ALWAYS_INLINE void setValue(quint32 v) { memcpy(&_val, &v, 4); }
-     Q_ALWAYS_INLINE void setTag(quint32 t) { memcpy(4 + (quint8 *)&_val, &t, 4); }
-+#endif
- 
--#if Q_BYTE_ORDER == Q_LITTLE_ENDIAN
-+#if Q_BYTE_ORDER == Q_LITTLE_ENDIAN || defined(QV4_USE_64_BIT_VALUE_ENCODING)
-     static inline int valueOffset() { return 0; }
-     static inline int tagOffset() { return 4; }
- #else // !Q_LITTLE_ENDIAN
diff --git a/debian/patches/series b/debian/patches/series
index 29b9c5e..09562e6 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -5,6 +5,5 @@ fix-V4-on-big-endian.patch
 
 # Debian patches
 check_system_double-conversion.patch
-fix_engine_64bits_big_endian.diff
 disableopengltests.patch
 fix_test_remove_qlibraryinfo.patch

-- 
qtdeclarative packaging



More information about the pkg-kde-commits mailing list