summaryrefslogtreecommitdiffstats
path: root/meta/recipes-qt/qt5/qtwebkit/0002-Remove-TEXTREL-tag-in-x86.patch
diff options
context:
space:
mode:
authorMartin Jansa <Martin.Jansa@gmail.com>2018-04-27 13:37:25 +0000
committerMartin Jansa <Martin.Jansa@gmail.com>2019-03-24 11:13:28 +0100
commit40f1b73c92731f4e18751d3a499f269c65c21a96 (patch)
tree734faeca0e9ccade77c66f04320bf50071ecbf6b /meta/recipes-qt/qt5/qtwebkit/0002-Remove-TEXTREL-tag-in-x86.patch
parente45f3d305e25ff2aef9e42697e583e6f69a9b6e6 (diff)
downloadopenembedded-core-contrib-jansa/pseudo.tar.gz
qt5: downgrade to 5.6jansa/pseudo
* webosose isn't compatible with newer Qt export COMP=qml-webos-framework; for i in `seq -w 1 999`; do echo $i; bitbake -v -v -DDDD -f -c compile ${COMP} 2>${COMP}-logerr.$i >${COMP}-log.$i; bitbake -v -v -DDDD -f -c package_qa ${COMP} 2>${COMP}-logerr.qa.$i >${COMP}-log.qa.$i || { cp -ra tmp-glibc/work/qemux86-oe-linux/${COMP}/ ${COMP}-workdir-$i; bitbake -c cleansstate ${COMP} ; } done in local.conf I have only this to reproduce the failures: PRSERV_HOST = "localhost:0" BB_NUMBER_THREADS = "8" PARALLEL_MAKE = "-j 32" DISTRO_FEATURES_append = " wayland opengl" ERROR_QA_append = " host-user-contaminated" Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Diffstat (limited to 'meta/recipes-qt/qt5/qtwebkit/0002-Remove-TEXTREL-tag-in-x86.patch')
-rw-r--r--meta/recipes-qt/qt5/qtwebkit/0002-Remove-TEXTREL-tag-in-x86.patch76
1 files changed, 76 insertions, 0 deletions
diff --git a/meta/recipes-qt/qt5/qtwebkit/0002-Remove-TEXTREL-tag-in-x86.patch b/meta/recipes-qt/qt5/qtwebkit/0002-Remove-TEXTREL-tag-in-x86.patch
new file mode 100644
index 0000000000..467b0cd7ca
--- /dev/null
+++ b/meta/recipes-qt/qt5/qtwebkit/0002-Remove-TEXTREL-tag-in-x86.patch
@@ -0,0 +1,76 @@
+From 38211ab724d5379dd393414cc8668cd906bde2cb Mon Sep 17 00:00:00 2001
+From: Magnus Granberg <zorry@gentoo.org>
+Date: Fri, 27 Feb 2015 11:55:09 +0100
+Subject: [PATCH] Remove TEXTREL tag in x86
+
+Fix textrel QA warnings when building qtwebkit for x86:
+
+ WARNING: QA Issue: ELF binary '/home/andre/rdk/rdk-master/build-vbox32/tmp/work/core2-32-rdk-linux/qtwebkit/5.4.0-r0/packages-split/qtwebkit/usr/lib/libQt5WebKit.so.5.4.0' has relocations in .text [textrel]
+
+Patch from upstream webkit:
+
+ https://bugs.webkit.org/show_bug.cgi?id=70610
+
+Minor refresh required to apply cleanly to the older webkit sources used
+by qtwebkit. Specifically, the patch needed to be modified to account
+for PLATFORM(MAC) -> OS(DARWIN) renaming in recent webkit which is not
+part of qtwebkit yet ( https://bugs.webkit.org/show_bug.cgi?id=99683 ).
+
+Upstream status [webkit] : backport
+Upstream status [qtwebkit] : unclear
+
+Bug: https://bugs.webkit.org/show_bug.cgi?id=70610
+Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
+---
+ Source/JavaScriptCore/jit/ThunkGenerators.cpp | 24 ++++++++++++++++++++++++
+ Source/WTF/wtf/InlineASM.h | 2 ++
+ 2 files changed, 26 insertions(+)
+
+diff --git a/Source/JavaScriptCore/jit/ThunkGenerators.cpp b/Source/JavaScriptCore/jit/ThunkGenerators.cpp
+index 9684df2..8af82d8 100644
+--- a/Source/JavaScriptCore/jit/ThunkGenerators.cpp
++++ b/Source/JavaScriptCore/jit/ThunkGenerators.cpp
+@@ -524,6 +524,30 @@ double jsRound(double d)
+ } \
+ static MathThunk UnaryDoubleOpWrapper(function) = &function##Thunk;
+
++#elif CPU(X86) && COMPILER(GCC) && OS(LINUX) && defined(__PIC__)
++#define defineUnaryDoubleOpWrapper(function) \
++ asm( \
++ ".text\n" \
++ ".globl " SYMBOL_STRING(function##Thunk) "\n" \
++ HIDE_SYMBOL(function##Thunk) "\n" \
++ SYMBOL_STRING(function##Thunk) ":" "\n" \
++ "pushl %ebx\n" \
++ "subl $20, %esp\n" \
++ "movsd %xmm0, (%esp) \n" \
++ "call __x86.get_pc_thunk.bx\n" \
++ "addl $_GLOBAL_OFFSET_TABLE_, %ebx\n" \
++ "call " GLOBAL_REFERENCE(function) "\n" \
++ "fstpl (%esp) \n" \
++ "movsd (%esp), %xmm0 \n" \
++ "addl $20, %esp\n" \
++ "popl %ebx\n" \
++ "ret\n" \
++ );\
++ extern "C" { \
++ MathThunkCallingConvention function##Thunk(MathThunkCallingConvention); \
++ } \
++ static MathThunk UnaryDoubleOpWrapper(function) = &function##Thunk;
++
+ #elif CPU(X86) && COMPILER(GCC) && (PLATFORM(MAC) || OS(LINUX))
+ #define defineUnaryDoubleOpWrapper(function) \
+ asm( \
+diff --git a/Source/WTF/wtf/InlineASM.h b/Source/WTF/wtf/InlineASM.h
+index 0a2fe78..2dc40ef 100644
+--- a/Source/WTF/wtf/InlineASM.h
++++ b/Source/WTF/wtf/InlineASM.h
+@@ -46,6 +46,8 @@
+ #define GLOBAL_REFERENCE(name) #name "@plt"
+ #elif CPU(X86) && COMPILER(MINGW)
+ #define GLOBAL_REFERENCE(name) "@" #name "@4"
++#elif OS(LINUX) && CPU(X86) && defined(__PIC__)
++#define GLOBAL_REFERENCE(name) SYMBOL_STRING(name) "@plt"
+ #else
+ #define GLOBAL_REFERENCE(name) SYMBOL_STRING(name)
+ #endif