qt5: armv5* and mips* broken
This commit is contained in:
parent
a2e3e669ed
commit
d3256d7466
4 changed files with 139 additions and 0 deletions
srcpkgs/qt5
40
srcpkgs/qt5/patches/mips-fix.patch
Normal file
40
srcpkgs/qt5/patches/mips-fix.patch
Normal file
|
@ -0,0 +1,40 @@
|
|||
--- qtscript/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Platform.h 2016-12-07 06:58:00.000000000 +0100
|
||||
+++ qtscript/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Platform.h 2017-12-12 19:51:36.048485198 +0100
|
||||
@@ -377,7 +377,7 @@
|
||||
|
||||
#if (defined(mips) || defined(__mips__) || defined(MIPS) || defined(_MIPS_))
|
||||
#define WTF_CPU_MIPS 1
|
||||
-#include <sgidefs.h>
|
||||
+#include <asm/sgidefs.h>
|
||||
#if defined(__MIPSEB__)
|
||||
#define WTF_CPU_BIG_ENDIAN 1
|
||||
#endif
|
||||
--- qtwebengine/src/3rdparty/chromium/third_party/webrtc/typedefs.h 2017-01-03 10:28:53.000000000 +0100
|
||||
+++ qtwebengine/src/3rdparty/chromium/third_party/webrtc/typedefs.h 2017-12-12 20:11:16.501569388 +0100
|
||||
@@ -47,6 +47,12 @@
|
||||
#elif defined(__pnacl__)
|
||||
#define WEBRTC_ARCH_32_BITS
|
||||
#define WEBRTC_ARCH_LITTLE_ENDIAN
|
||||
+#elif defined(__MIPSEB__)
|
||||
+#define WEBRTC_ARCH_32_BITS
|
||||
+#define WEBRTC_ARCH_BIG_ENDIAN
|
||||
+#elif defined(__MIPSEL__)
|
||||
+#define WEBRTC_ARCH_32_BITS
|
||||
+#define WEBRTC_ARCH_LITTLE_ENDIAN
|
||||
#else
|
||||
#error Please add support for your architecture in typedefs.h
|
||||
#endif
|
||||
--- qtwebengine/src/3rdparty/chromium/build/build_config.h 2017-01-03 10:28:53.000000000 +0100
|
||||
+++ qtwebengine/src/3rdparty/chromium/build/build_config.h 2017-12-12 22:35:11.094185212 +0100
|
||||
@@ -132,6 +132,11 @@
|
||||
#define ARCH_CPU_MIPSEL 1
|
||||
#define ARCH_CPU_32_BITS 1
|
||||
#define ARCH_CPU_LITTLE_ENDIAN 1
|
||||
#endif
|
||||
+#elif defined(__MIPSEB__)
|
||||
+#define ARCH_CPU_MIPS_FAMILY 1
|
||||
+#define ARCH_CPU_MIPSEL 1
|
||||
+#define ARCH_CPU_32_BITS 1
|
||||
+#define ARCH_CPU_BIG_ENDIAN 1
|
||||
#else
|
||||
#error Please add support for your architecture in build/build_config.h
|
66
srcpkgs/qt5/patches/mipseb-fix.patch
Normal file
66
srcpkgs/qt5/patches/mipseb-fix.patch
Normal file
|
@ -0,0 +1,66 @@
|
|||
--- qtbase/src/plugins/platforms/vnc/qvncclient.cpp 2017-01-18 15:20:58.000000000 +0100
|
||||
+++ qtbase/src/plugins/platforms/vnc/qvncclient.cpp 2017-12-12 18:56:14.884248330 +0100
|
||||
@@ -142,8 +142,8 @@
|
||||
case 16: {
|
||||
quint16 p = *reinterpret_cast<const quint16*>(src);
|
||||
#if Q_BYTE_ORDER == Q_BIG_ENDIAN
|
||||
- if (swapBytes)
|
||||
- p = ((p & 0xff) << 8) | ((p & 0xff00) >> 8);
|
||||
+ if (m_swapBytes)
|
||||
+ p = (p << 8) | (p >> 8);
|
||||
#endif
|
||||
r = (p >> 11) & 0x1f;
|
||||
g = (p >> 5) & 0x3f;
|
||||
@@ -484,7 +484,7 @@
|
||||
m_sameEndian = (QSysInfo::ByteOrder == QSysInfo::BigEndian) == !!m_pixelFormat.bigEndian;
|
||||
m_needConversion = pixelConversionNeeded();
|
||||
#if Q_BYTE_ORDER == Q_BIG_ENDIAN
|
||||
- m_swapBytes = qvnc_screen->swapBytes();
|
||||
+ m_swapBytes = m_server->screen()->swapBytes();
|
||||
#endif
|
||||
}
|
||||
}
|
||||
@@ -639,7 +639,7 @@
|
||||
return true;
|
||||
|
||||
#if Q_BYTE_ORDER == Q_BIG_ENDIAN
|
||||
- if (qvnc_screen->swapBytes())
|
||||
+ if (m_server->screen()->swapBytes())
|
||||
return true;
|
||||
#endif
|
||||
|
||||
--- qtbase/src/plugins/platforms/vnc/qvncscreen.cpp 2017-01-18 15:20:58.000000000 +0100
|
||||
+++ qtbase/src/plugins/platforms/vnc/qvncscreen.cpp 2017-12-12 18:42:41.609190327 +0100
|
||||
@@ -172,14 +172,16 @@
|
||||
}
|
||||
|
||||
#if Q_BYTE_ORDER == Q_BIG_ENDIAN
|
||||
-bool QVNCScreen::swapBytes() const
|
||||
+bool QVncScreen::swapBytes() const
|
||||
{
|
||||
if (depth() != 16)
|
||||
return false;
|
||||
-
|
||||
- if (screen())
|
||||
- return screen()->frameBufferLittleEndian();
|
||||
- return frameBufferLittleEndian();
|
||||
+ for (int y = 0; y < mScreenImage->height(); y++) {
|
||||
+ quint16* p = reinterpret_cast<quint16*>(mScreenImage->scanLine(y));
|
||||
+ for (int x = 0; x < mScreenImage->width(); x++, p++)
|
||||
+ *p = (*p >> 8) | (*p << 8);
|
||||
+ }
|
||||
+ return true;
|
||||
}
|
||||
#endif
|
||||
|
||||
--- qtbase/src/plugins/platforms/vnc/qvncscreen.h 2017-01-18 15:20:58.000000000 +0100
|
||||
+++ qtbase/src/plugins/platforms/vnc/qvncscreen.h 2017-12-12 17:38:29.003915557 +0100
|
||||
@@ -73,7 +73,7 @@
|
||||
void clearDirty() { dirtyRegion = QRegion(); }
|
||||
|
||||
#if Q_BYTE_ORDER == Q_BIG_ENDIAN
|
||||
- bool swapBytes() const
|
||||
+ bool swapBytes() const;
|
||||
#endif
|
||||
|
||||
QStringList mArgs;
|
30
srcpkgs/qt5/patches/qt-cross-enable_tools.patch
Normal file
30
srcpkgs/qt5/patches/qt-cross-enable_tools.patch
Normal file
|
@ -0,0 +1,30 @@
|
|||
--- qttools/src/src.pro 2017-01-02 07:50:13.000000000 +0100
|
||||
+++ qttools/src/src.pro 2017-12-21 12:27:33.414867228 +0100
|
||||
@@ -1,20 +1,13 @@
|
||||
TEMPLATE = subdirs
|
||||
|
||||
-qtHaveModule(widgets) {
|
||||
- no-png {
|
||||
- message("Some graphics-related tools are unavailable without PNG support")
|
||||
- } else {
|
||||
- SUBDIRS = assistant \
|
||||
- pixeltool \
|
||||
- designer
|
||||
+SUBDIRS = assistant \
|
||||
+ pixeltool \
|
||||
+ designer \
|
||||
+ linguist \
|
||||
+ qdoc \
|
||||
+ qtattributionsscanner
|
||||
|
||||
- linguist.depends = designer
|
||||
- }
|
||||
-}
|
||||
-
|
||||
-SUBDIRS += linguist \
|
||||
- qdoc \
|
||||
- qtattributionsscanner
|
||||
+linguist.depends = designer
|
||||
|
||||
!android|android_app: SUBDIRS += qtplugininfo
|
||||
|
|
@ -41,6 +41,9 @@ CXXFLAGS+=" -Wno-deprecated-declarations -fno-delete-null-pointer-checks"
|
|||
LDFLAGS="-pthread -ldl -fPIE"
|
||||
|
||||
case "$XBPS_TARGET_MACHINE" in
|
||||
armv5*|mips*) # Won't build for these
|
||||
broken=yes
|
||||
;;
|
||||
armv7*) # Force use of neon and enable libvpx
|
||||
CXXFLAGS+=" -mfpu=neon"
|
||||
;;
|
||||
|
|
Loading…
Reference in a new issue