[qt] add missing method for QBasicAtomicPointer on s390(x)
Dan Horák
sharkcz at fedoraproject.org
Mon Dec 19 09:13:24 UTC 2011
commit 41cb7e34913a5ff06d07701df3ec463720f0dc85
Author: Dan Horák <dan at danny.cz>
Date: Mon Dec 19 10:13:20 2011 +0100
add missing method for QBasicAtomicPointer on s390(x)
...erywhere-opensource-src-4.8.0-s390-atomic.patch | 20 ++++++++++++++++++++
qt.spec | 9 ++++++++-
2 files changed, 28 insertions(+), 1 deletions(-)
---
diff --git a/qt-everywhere-opensource-src-4.8.0-s390-atomic.patch b/qt-everywhere-opensource-src-4.8.0-s390-atomic.patch
new file mode 100644
index 0000000..6fedcc8
--- /dev/null
+++ b/qt-everywhere-opensource-src-4.8.0-s390-atomic.patch
@@ -0,0 +1,20 @@
+diff -up qt-everywhere-opensource-src-4.8.0/src/corelib/arch/qatomic_s390.h.s390-atomic qt-everywhere-opensource-src-4.8.0/src/corelib/arch/qatomic_s390.h
+--- qt-everywhere-opensource-src-4.8.0/src/corelib/arch/qatomic_s390.h.s390-atomic 2011-12-18 16:15:20.000000000 +0100
++++ qt-everywhere-opensource-src-4.8.0/src/corelib/arch/qatomic_s390.h 2011-12-18 16:17:34.000000000 +0100
+@@ -400,6 +400,16 @@ Q_INLINE_TEMPLATE T* QBasicAtomicPointer
+
+
+ template <typename T>
++Q_INLINE_TEMPLATE T *QBasicAtomicPointer<T>::fetchAndAddOrdered(qptrdiff valueToAdd)
++{
++#ifndef __s390x__
++ return (T *)__CS_OLD_LOOP(&_q_value, valueToAdd * sizeof(T), "ar", "", "bcr 15,0\n");
++#else
++ return (T *)__CSG_OLD_LOOP(&_q_value, valueToAdd * sizeof(T), "agr", "", "bcr 15,0\n");
++#endif
++}
++
++template <typename T>
+ Q_INLINE_TEMPLATE T *QBasicAtomicPointer<T>::fetchAndAddRelaxed(qptrdiff valueToAdd)
+ {
+ return fetchAndAddOrdered(valueToAdd);
diff --git a/qt.spec b/qt.spec
index 3c0be39..72c1527 100644
--- a/qt.spec
+++ b/qt.spec
@@ -11,7 +11,7 @@ Summary: Qt toolkit
Name: qt
Epoch: 1
Version: 4.8.0
-Release: 1%{?dist}
+Release: 2%{?dist}
# See LGPL_EXCEPTIONS.txt, LICENSE.GPL3, respectively, for exception details
License: (LGPLv2 with exceptions or GPLv3 with exceptions) and ASL 2.0 and BSD and FTL and MIT
@@ -94,6 +94,9 @@ Patch74: qt-everywhere-opensource-src-4.7.4-tds_no_strict_aliasing.patch
# workaround crash on ppc64
Patch75: qt-ppc64-crash.patch
+# add missing method for QBasicAtomicPointer on s390(x)
+Patch76: qt-everywhere-opensource-src-4.8.0-s390-atomic.patch
+
# upstream patches
# security patches
@@ -420,6 +423,7 @@ popd
%endif
%patch74 -p1 -b .tds_no_strict_aliasing
%patch75 -p1 -b .ppc64-crash
+%patch76 -p1 -b .s390-atomic
# upstream patches
@@ -1046,6 +1050,9 @@ fi
%changelog
+* Mon Dec 19 2011 Dan Horák <dan[at]dannu.cz> 4.8.0-2
+- add missing method for QBasicAtomicPointer on s390(x)
+
* Thu Dec 15 2011 Jaroslav Reznik <jreznik at redhat.com> 4.8.0-1
- 4.8.0
More information about the scm-commits
mailing list