Mail archive
alpine-aports

[alpine-aports] [PATCH 3/7] main/qt: add s390x support

From: Tuan M. Hoang <tmhoang_at_flatglobe.org>
Date: Fri, 17 Mar 2017 07:02:48 -0400

---
 main/qt/APKBUILD                                   | 33 ++++------------------
 ...erywhere-opensource-src-4.8.0-s390-atomic.patch | 20 +++++++++++++
 .../qt-everywhere-opensource-src-4.8.6-s390.patch  | 31 ++++++++++++++++++++
 3 files changed, 56 insertions(+), 28 deletions(-)
 create mode 100644 main/qt/qt-everywhere-opensource-src-4.8.0-s390-atomic.patch
 create mode 100644 main/qt/qt-everywhere-opensource-src-4.8.6-s390.patch
diff --git a/main/qt/APKBUILD b/main/qt/APKBUILD
index 935222e0db..788b3eb751 100644
--- a/main/qt/APKBUILD
+++ b/main/qt/APKBUILD
_at_@ -35,6 +35,9 @@ source="http://download.qt-project.org/official_releases/qt/4.8/$pkgver/qt-every
 	qt-aarch64.patch
 	qtcore-4.8.5-libressl.patch
 	gcc-6.2.1-workaround.patch
+
+	qt-everywhere-opensource-src-4.8.0-s390-atomic.patch
+	qt-everywhere-opensource-src-4.8.6-s390.patch
 	"
 
 _builddir="$srcdir"/qt-everywhere-opensource-src-$pkgver
_at_@ -280,34 +283,6 @@ lang() {
 		"$subpkgdir"/usr/share/qt/
 }
 
-md5sums="d990ee66bf7ab0c785589776f35ba6ad  qt-everywhere-opensource-src-4.8.7.tar.gz
-a445c6917086d80f1cfc1e40cb6b0132  assistant.desktop
-d457f0a0ad68a3861c3cadefe3b42ded  designer.desktop
-668331d9798a0e2b94381efb7be4c513  linguist.desktop
-c29f2993d6a0f73d756d2fa36e130e1c  qtconfig.desktop
-8eeac363a5d9bc1ca06501a7cbe59b08  qt-gtk-theme-fix.patch
-bc83dc99f866423b4803453a0e2949d2  qt-musl.patch
-077e31e0cb0d25637a3b3638fffbef3c  qt-musl-iconv-no-bom.patch
-14549e243772acfe2e9e0bf5d8d001f3  qt-clucene-timeb.patch
-7467e168418c50b2737b4b2fab4448fe  qsettings-recursive-global-mutex.patch
-8ba77cd8f325c38daca8eadc982395a4  qt-everywhere-opensource-src-4.8.7-gcc6.patch
-2a9572f3b758fc3ca9ff5fc40012a2a4  qt-aarch64.patch
-5fb430ea26cc72dcb16164bd952c1b91  qtcore-4.8.5-libressl.patch
-2cbcd6e279e50eb2f230960c235dd35f  gcc-6.2.1-workaround.patch"
-sha256sums="e2882295097e47fe089f8ac741a95fef47e0a73a3f3cdf21b56990638f626ea0  qt-everywhere-opensource-src-4.8.7.tar.gz
-1094300e3d69e55eb69d87cbaac6724f68b0618938c6eb1b0ddd22ba99c7f8a2  assistant.desktop
-74c2c5d27a1c1ad08ab01122bcf333f75d0a014b4755d3ddd8764c2425f6e320  designer.desktop
-1b9ecd839c1a5dfcec87653849287c31bf2f4044300958be802ebb943e896998  linguist.desktop
-1e5cb7c2f12d4db35d668f01548a2bef131fe92133d76c78170fb74a377d5ef8  qtconfig.desktop
-b64ea69ca9ed18f464a3810964b340432c528ebb02c9c7851ecc8e99cfe74877  qt-gtk-theme-fix.patch
-e70bdddf67c358c02099bebee460e3c5456666562bff9ef9ebaacf9f4ea7a6df  qt-musl.patch
-40b337c16bbb1d259f315fe5a1b110f9917223aee53b82809934efa4fa5e62a3  qt-musl-iconv-no-bom.patch
-0c74a82080bcb8f4a700e907f4f1ed98a0338c6954620ee42c82002b199acedc  qt-clucene-timeb.patch
-8ef97783ff93a515a31c1e27c6b3b22e2ad2fd9cf0fa94965e5c413ae579e64c  qsettings-recursive-global-mutex.patch
-aaa073195b6fc47ebdc241574da4a29e7ba0a1ae51bdf9a64b866c683f30684a  qt-everywhere-opensource-src-4.8.7-gcc6.patch
-9269bd8552688b75be1468eaca6afdc0c054e644a73a9cffddb6855a96faf86f  qt-aarch64.patch
-0efa3b6f7f25e775874a5f2e09c4111143aafcf9b17b4494b0922a501750bc2c  qtcore-4.8.5-libressl.patch
-781d8ec3a2cfe4980e6707d1dcbb2a223c3aaa23f68a553527f0d38a765d98f6  gcc-6.2.1-workaround.patch"
 sha512sums="f9f81a2e7205e1fd05c8d923dc73244f29aa33f951fa6b7c5c8193449328b37084796b9b71ad0c317e4e6fd00017c10ea5d67b1b2032551cde00548522218125  qt-everywhere-opensource-src-4.8.7.tar.gz
 005ed6fe50b237e4541c0f30cbd87ec5425eff7e7c8d55d2b9b24ea8469e75e1fc8a3f26296841ab4cbd566517b3f1aa1fa7b36e1a9677d284cfff615fd24614  assistant.desktop
 731aae6a0d776c1be5a49dadc5480b205ba5c8e056d108e2bb96a19dd52b6c6ca22387b37505cf97a2575228cd5dd65c773d0fde1c26299e47fdc11a49f651fd  designer.desktop
_at_@ -321,4 +296,6 @@ a4947c7210f5b9a39f78b1056d2fe87bc9e25dda7d6287f138f8889ae8a3a8687ed7346261f219e9
 dd58096123e99d8cdd1a29dfca45d1f23c912a21edc6074a5398637ecca29b8b3535d862043c5d15b4ab44609d674242d93c31fcae835fede4ddfcc36e63ea26  qt-everywhere-opensource-src-4.8.7-gcc6.patch
 c76f7cb83e3e48e9798ada7c1d2406d560294fe7c38a73e42317db8f83ff9e86fdf7c18bd408cf658c07782733b72dcf03328b267db30cb9bccc11394b2ee93a  qt-aarch64.patch
 bde982ca01a6ee6a5d10a08babd8474e67e84932d996b1e19970e75fa4a9b71a08e81065a13f0a1cce1ac681d44d2e559562ee5ab92e9dfd5fd2cafe28370a74  qtcore-4.8.5-libressl.patch
+b079084fab01eb048151fec287e2bc8b2db756eaf3d8aadb98ef86bcca18f4a0a8319c06f94cdbbc67cf7792fd2d1780682fd0594a18444368f9fad10e7ba852  qt-everywhere-opensource-src-4.8.0-s390-atomic.patch
+89dbf72732cbec3ddeb5542049e4b810863e121697103212de89401d965fa228cdad5b94efaf5ce00a4e5dae43855a287fda8be47bfb12e3858149da19bece63  qt-everywhere-opensource-src-4.8.6-s390.patch
 bf316db4fbd3dfae40aad25573a201c7acc2fb5e34daff73e074a7c0232d9952f392c08b3b1271c7444c5d7da4d7d03fc56efee86a58a4578a9140739d45a616  gcc-6.2.1-workaround.patch"
diff --git a/main/qt/qt-everywhere-opensource-src-4.8.0-s390-atomic.patch b/main/qt/qt-everywhere-opensource-src-4.8.0-s390-atomic.patch
new file mode 100644
index 0000000000..6fedcc8104
--- /dev/null
+++ b/main/qt/qt-everywhere-opensource-src-4.8.0-s390-atomic.patch
_at_@ -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
+_at_@ -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/main/qt/qt-everywhere-opensource-src-4.8.6-s390.patch b/main/qt/qt-everywhere-opensource-src-4.8.6-s390.patch
new file mode 100644
index 0000000000..5098c08225
--- /dev/null
+++ b/main/qt/qt-everywhere-opensource-src-4.8.6-s390.patch
_at_@ -0,0 +1,31 @@
+diff -up qt-everywhere-opensource-src-4.8.6/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Platform.h.s390 qt-everywhere-opensource-src-4.8.6/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Platform.h
+--- qt-everywhere-opensource-src-4.8.6/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Platform.h.s390	2014-03-30 15:36:49.000000000 -0500
++++ qt-everywhere-opensource-src-4.8.6/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Platform.h	2014-03-31 17:59:16.846465899 -0500
+_at_@ -189,6 +189,18 @@
+ #define WTF_CPU_SPARC 1
+ #endif
+ 
++/* CPU(S390X) - S390 64-bit */
++#if defined(__s390x__)
++#define WTF_CPU_S390X 1
++#define WTF_CPU_BIG_ENDIAN 1
++#endif
++
++/* CPU(S390) - S390 32-bit */
++#if defined(__s390__)
++#define WTF_CPU_S390 1
++#define WTF_CPU_BIG_ENDIAN 1
++#endif
++
+ /* CPU(X86) - i386 / x86 32-bit */
+ #if   defined(__i386__) \
+     || defined(i386)     \
+_at_@ -903,7 +915,7 @@
+ #endif
+ 
+ #if !defined(WTF_USE_JSVALUE64) && !defined(WTF_USE_JSVALUE32) && !defined(WTF_USE_JSVALUE32_64)
+-#if (CPU(X86_64) && (OS(UNIX) || OS(WINDOWS) || OS(SOLARIS) || OS(HPUX))) || (CPU(IA64) && !CPU(IA64_32)) || CPU(ALPHA) || CPU(AIX64) || CPU(SPARC64) || CPU(MIPS64) || CPU(AARCH64)
++#if (CPU(X86_64) && (OS(UNIX) || OS(WINDOWS) || OS(SOLARIS) || OS(HPUX))) || (CPU(IA64) && !CPU(IA64_32)) || CPU(ALPHA) || CPU(AIX64) || CPU(SPARC64) || CPU(MIPS64) || CPU(AARCH64) || CPU(S390X)
+ #define WTF_USE_JSVALUE64 1
+ #elif CPU(ARM) || CPU(PPC64)
+ #define WTF_USE_JSVALUE32 1
-- 
2.11.1
---
Unsubscribe:  alpine-aports+unsubscribe_at_lists.alpinelinux.org
Help:         alpine-aports+help_at_lists.alpinelinux.org
---
Received on Fri Mar 17 2017 - 07:02:48 GMT