summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--experimental/qt5-qtwebkit/APKBUILD94
-rw-r--r--experimental/qt5-qtwebkit/jsc-port-to-musl.patch81
-rw-r--r--experimental/qt5-qtwebkit/musl-thread-stacksize.patch49
-rw-r--r--user/qt5-qtwebkit/0001-Add-ARM-64-support.patch13
-rw-r--r--user/qt5-qtwebkit/APKBUILD122
-rw-r--r--user/qt5-qtwebkit/bug-931.patch10
-rw-r--r--user/qt5-qtwebkit/fix-execinfo.patch20
-rw-r--r--user/qt5-qtwebkit/fix-rpath.patch11
-rw-r--r--user/qt5-qtwebkit/pic.patch11
-rw-r--r--user/qt5-qtwebkit/ppc-llint.patch32
10 files changed, 105 insertions, 338 deletions
diff --git a/experimental/qt5-qtwebkit/APKBUILD b/experimental/qt5-qtwebkit/APKBUILD
deleted file mode 100644
index c7e0834e5..000000000
--- a/experimental/qt5-qtwebkit/APKBUILD
+++ /dev/null
@@ -1,94 +0,0 @@
-# Contributor: A. Wilcox <awilfox@adelielinux.org>
-# Maintainer: A. Wilcox <awilfox@adelielinux.org>
-pkgname=qt5-qtwebkit
-_realname=qtwebkit
-pkgver=5.212.0_alpha2
-_realver=$(printf '%s' "$pkgver" | sed 's/_/-/')
-pkgrel=0
-pkgdesc="Open source Web browser engine"
-url="https://github.com/annulen/webkit"
-arch="all"
-license="LGPL-2.1+ AND BSD-3-Clause AND Others"
-depends="gst-plugins-base"
-depends_dev="qt5-qtbase-dev"
-makedepends="$depends_dev ninja sqlite-dev icu-dev ruby perl bison flex gperf
- libxml2-dev libxslt-dev libjpeg-turbo-dev libpng-dev zlib-dev glib-dev
- gstreamer-dev fontconfig-dev qt5-qtsensors-dev qt5-qtpositioning-dev
- qt5-qtdeclarative-dev qt5-qtwebchannel-dev libxcomposite-dev
- libxrender-dev gst-plugins-base-dev hyphen-dev libexecinfo-dev"
-subpackages="$pkgname-dev $pkgname-doc"
-source="https://github.com/annulen/webkit/releases/download/$_realname-$_realver/$_realname-$_realver.tar.xz
- jsc-port-to-musl.patch
- musl-thread-stacksize.patch
- "
-builddir="$srcdir"/$_realname-$_realver
-
-unpack() {
- default_unpack
- # just ripped from Firefox's APKBUILD...
- [ -z $SKIP_PYTHON ] || return 0
- msg "Killing all remaining hope for humanity and building Python 2..."
- cd "$srcdir"
- [ -d python ] && rm -r python
- mkdir python
- cd python
- # 19:39 <+solar> just make the firefox build process build its own py2 copy
- curl -O https://www.python.org/ftp/python/2.7.15/Python-2.7.15.tar.xz
- tar xJf Python-2.7.15.tar.xz
- cd Python-2.7.15
- # 20:03 <calvin> TheWilfox: there's always violence
- ./configure --prefix="$srcdir/python"
- make -j $JOBS
- # 6 tests failed:
- # test__locale test_os test_posix test_re test_strptime test_time
- # make test
- make -j $JOBS install
-}
-
-build() {
- cd "$builddir"
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- export PATH="$srcdir/python/bin:$PATH"
- # We can enable the JIT when it is stable on all Tier 1 platforms:
- # pmmx (ensure no SSE)
- # ppc
- # ppc64
- #
- # DONE:
- # aarch64
- # armv7
- # x86_64
- cmake \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DBUILD_SHARED_LIBS=True \
- -DCMAKE_BUILD_TYPE=RelWithDebugInfo \
- -DCMAKE_CXX_FLAGS="$CXXFLAGS" \
- -DCMAKE_C_FLAGS="$CFLAGS" \
- -DENABLE_JIT=OFF \
- -DPORT=Qt \
- -DUSE_SYSTEM_MALLOC=ON \
- ${CMAKE_CROSSOPTS}
- # too memory hungry
- if [ -z "$JOBS" ] || [ $JOBS -gt 32 ]; then
- make -j32
- else
- make
- fi
-}
-
-check() {
- cd "$builddir"
- CTEST_OUTPUT_ON_FAILURE=TRUE ctest
-}
-
-package() {
- cd "$builddir"
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="b15985aab20c5618dc1f71a0d91f02dbed993516272090a4a12990714bf4c9554ccbdcf9d6a143bf46fcc2c170f691e571114d61686fe49791f8d5c540785758 qtwebkit-5.212.0-alpha2.tar.xz
-19efd97c5f628108d30cc0e5e53f689725cc480ffe1ea90577e5f961d7f35a6a434dda5a03c73c0fb74a30c46ced32bcf580340a2eaf4e72960e61c28ed34dba jsc-port-to-musl.patch
-a8df6d20346882e49745dbdf9bdf2eddf2f3e1ac3301e9fd826397fa746d1d9228deaf2eab0316fa977a85032d6c091559cd5404b7a576e3adc0bec64a5a4ad9 musl-thread-stacksize.patch"
diff --git a/experimental/qt5-qtwebkit/jsc-port-to-musl.patch b/experimental/qt5-qtwebkit/jsc-port-to-musl.patch
deleted file mode 100644
index 0b2d7dfce..000000000
--- a/experimental/qt5-qtwebkit/jsc-port-to-musl.patch
+++ /dev/null
@@ -1,81 +0,0 @@
-diff -Naur qtwebkit-5.212.0-alpha2-original/Source/JavaScriptCore/heap/MachineStackMarker.cpp qtwebkit-5.212.0-alpha2/Source/JavaScriptCore/heap/MachineStackMarker.cpp
---- qtwebkit-5.212.0-alpha2-original/Source/JavaScriptCore/heap/MachineStackMarker.cpp 2017-06-04 20:16:05.000000000 +0000
-+++ qtwebkit-5.212.0-alpha2/Source/JavaScriptCore/heap/MachineStackMarker.cpp 2018-09-26 02:13:44.660000000 +0000
-@@ -566,7 +566,7 @@
- #error Unknown Architecture
- #endif
-
--#elif defined(__GLIBC__) && ENABLE(JIT)
-+#elif defined(__linux__) && ENABLE(JIT)
-
- #if CPU(X86)
- return reinterpret_cast<void*>((uintptr_t) regs.machineContext.gregs[REG_ESP]);
-@@ -665,7 +665,7 @@
- #error Unknown Architecture
- #endif
-
--#elif defined(__GLIBC__)
-+#elif defined(__linux__)
-
- // The following sequence depends on glibc's sys/ucontext.h.
- #if CPU(X86)
-@@ -747,7 +747,7 @@
- #error Unknown Architecture
- #endif
-
--#elif defined(__GLIBC__)
-+#elif defined(__linux__)
-
- // The following sequence depends on glibc's sys/ucontext.h.
- #if CPU(X86)
-@@ -838,7 +838,7 @@
- #error Unknown Architecture
- #endif
-
--#elif defined(__GLIBC__)
-+#elif defined(__linux__)
-
- // The following sequence depends on glibc's sys/ucontext.h.
- #if CPU(X86)
-diff -Naur qtwebkit-5.212.0-alpha2-original/Source/ThirdParty/ANGLE/src/compiler/preprocessor/ExpressionParser.cpp qtwebkit-5.212.0-alpha2/Source/ThirdParty/ANGLE/src/compiler/preprocessor/ExpressionParser.cpp
---- qtwebkit-5.212.0-alpha2-original/Source/ThirdParty/ANGLE/src/compiler/preprocessor/ExpressionParser.cpp 2017-06-04 20:16:06.000000000 +0000
-+++ qtwebkit-5.212.0-alpha2/Source/ThirdParty/ANGLE/src/compiler/preprocessor/ExpressionParser.cpp 2018-09-26 02:12:36.770000000 +0000
-@@ -828,7 +828,7 @@
- #if YYERROR_VERBOSE
-
- # ifndef yystrlen
--# if defined __GLIBC__ && defined _STRING_H
-+# if defined __linux__ && defined _STRING_H
- # define yystrlen strlen
- # else
- /* Return the length of YYSTR. */
-@@ -844,7 +844,7 @@
- # endif
-
- # ifndef yystpcpy
--# if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
-+# if defined __linux__ && defined _STRING_H && defined _GNU_SOURCE
- # define yystpcpy stpcpy
- # else
- /* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
-diff -Naur qtwebkit-5.212.0-alpha2-original/Source/ThirdParty/ANGLE/src/compiler/translator/glslang_tab.cpp qtwebkit-5.212.0-alpha2/Source/ThirdParty/ANGLE/src/compiler/translator/glslang_tab.cpp
---- qtwebkit-5.212.0-alpha2-original/Source/ThirdParty/ANGLE/src/compiler/translator/glslang_tab.cpp 2017-06-04 20:16:06.000000000 +0000
-+++ qtwebkit-5.212.0-alpha2/Source/ThirdParty/ANGLE/src/compiler/translator/glslang_tab.cpp 2018-09-26 02:12:54.740000000 +0000
-@@ -1835,7 +1835,7 @@
- #if YYERROR_VERBOSE
-
- # ifndef yystrlen
--# if defined __GLIBC__ && defined _STRING_H
-+# if defined __linux__ && defined _STRING_H
- # define yystrlen strlen
- # else
- /* Return the length of YYSTR. */
-@@ -1851,7 +1851,7 @@
- # endif
-
- # ifndef yystpcpy
--# if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
-+# if defined __linux__ && defined _STRING_H && defined _GNU_SOURCE
- # define yystpcpy stpcpy
- # else
- /* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
diff --git a/experimental/qt5-qtwebkit/musl-thread-stacksize.patch b/experimental/qt5-qtwebkit/musl-thread-stacksize.patch
deleted file mode 100644
index e790222dc..000000000
--- a/experimental/qt5-qtwebkit/musl-thread-stacksize.patch
+++ /dev/null
@@ -1,49 +0,0 @@
---- qtwebkit-5.212.0-alpha2/Source/WTF/wtf/ThreadingPthreads.cpp.old 2017-06-04 15:16:06.000000000 -0500
-+++ qtwebkit-5.212.0-alpha2/Source/WTF/wtf/ThreadingPthreads.cpp 2018-09-05 02:29:45.980000000 +0000
-@@ -107,10 +107,11 @@
- void initializeThreading()
- {
- static bool isInitialized;
-+ pthread_attr_t attr;
-
- if (isInitialized)
- return;
-
- isInitialized = true;
-
- WTF::double_conversion::initialize();
-@@ -122,6 +122,11 @@
- ThreadIdentifierData::initializeOnce();
- wtfThreadData();
- initializeDates();
-+
-+ pthread_attr_init(&attr);
-+ pthread_attr_setstacksize(&attr, 2097152);
-+ pthread_setattr_default_np(&attr);
-+ pthread_attr_destroy(&attr);
- }
-
- static ThreadMap& threadMap()
-@@ -171,6 +171,7 @@
- pthread_t threadHandle;
- pthread_attr_t attr;
- pthread_attr_init(&attr);
-+ pthread_attr_setstacksize(&attr, 2097152);
- #if HAVE(QOS_CLASSES)
- pthread_attr_set_qos_class_np(&attr, QOS_CLASS_USER_INITIATED, 0);
- #endif
---- qtwebkit-5.212.0-alpha2/Source/JavaScriptCore/runtime/Options.h.old 2017-06-04 20:16:05.000000000 +0000
-+++ qtwebkit-5.212.0-alpha2/Source/JavaScriptCore/runtime/Options.h 2018-09-26 03:02:39.700000000 +0000
-@@ -112,9 +112,9 @@
- \
- v(bool, reportMustSucceedExecutableAllocations, false, nullptr) \
- \
-- v(unsigned, maxPerThreadStackUsage, 4 * MB, nullptr) \
-- v(unsigned, reservedZoneSize, 128 * KB, nullptr) \
-- v(unsigned, errorModeReservedZoneSize, 64 * KB, nullptr) \
-+ v(unsigned, maxPerThreadStackUsage, 512 * KB, nullptr) \
-+ v(unsigned, reservedZoneSize, 32 * KB, nullptr) \
-+ v(unsigned, errorModeReservedZoneSize, 16 * KB, nullptr) \
- \
- v(bool, crashIfCantAllocateJITMemory, false, nullptr) \
- v(unsigned, jitMemoryReservationSize, 0, "Set this number to change the executable allocation size in ExecutableAllocatorFixedVMPool. (In bytes.)") \
diff --git a/user/qt5-qtwebkit/0001-Add-ARM-64-support.patch b/user/qt5-qtwebkit/0001-Add-ARM-64-support.patch
deleted file mode 100644
index 73f5c97f8..000000000
--- a/user/qt5-qtwebkit/0001-Add-ARM-64-support.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/Source/WTF/wtf/Platform.h b/Source/WTF/wtf/Platform.h
-index 4594ec8..639f28f 100644
---- a/Source/WTF/wtf/Platform.h
-+++ b/Source/WTF/wtf/Platform.h
-@@ -342,7 +342,7 @@
- #endif
- #endif
-
--#if CPU(ARM) || CPU(MIPS) || CPU(SH4) || CPU(SPARC) || CPU(MIPS64)
-+#if CPU(ARM) || CPU(MIPS) || CPU(SH4) || CPU(SPARC) || CPU(MIPS64) || CPU(AARCH64)
- #define WTF_CPU_NEEDS_ALIGNED_ACCESS 1
- #endif
-
diff --git a/user/qt5-qtwebkit/APKBUILD b/user/qt5-qtwebkit/APKBUILD
index 36b624e8a..825921553 100644
--- a/user/qt5-qtwebkit/APKBUILD
+++ b/user/qt5-qtwebkit/APKBUILD
@@ -1,72 +1,76 @@
+# Contributor: A. Wilcox <awilfox@adelielinux.org>
# Maintainer: A. Wilcox <awilfox@adelielinux.org>
pkgname=qt5-qtwebkit
-_pkgname=qtwebkit-opensource-src
-pkgver=5.9.1
-pkgrel=4
-pkgdesc="Qt 5 - WebKit components"
-url="https://www.qt.io/"
+_realname=$pkgname
+#qtwebkit
+pkgver=5.212.0_git20191114
+_realver=$(printf '%s' "$pkgver" | sed 's/_/-/')
+pkgrel=0
+pkgdesc="Open source Web browser engine"
+url="https://github.com/qtwebkit/qtwebkit"
arch="all"
-options="!check"
-license="LGPL-2.0 with exceptions OR GPL-3.0 with exceptions"
-depends=""
-depends_dev="qt5-qtdeclarative-dev gstreamer-dev gst-plugins-base-dev
- libxslt-dev mesa-dev icu-dev libxext-dev glib-dev libxcomposite-dev
- libxrender-dev
- "
-makedepends="$depends_dev bison flex fontconfig-dev gperf libjpeg-turbo-dev
- libpng-dev libwebp-dev pcre-dev qt5-qtbase-dev ruby sqlite-dev zlib-dev"
+options="!check" # Tests fail (surprise), require X11.
+license="LGPL-2.1+ AND BSD-3-Clause AND Others"
+depends="gst-plugins-base"
+depends_dev="qt5-qtbase-dev"
+makedepends="$depends_dev ninja sqlite-dev icu-dev ruby perl bison flex gperf
+ libxml2-dev libxslt-dev libjpeg-turbo-dev libpng-dev zlib-dev glib-dev
+ gstreamer-dev fontconfig-dev qt5-qtsensors-dev qt5-qtpositioning-dev
+ qt5-qtdeclarative-dev qt5-qtwebchannel-dev libxcomposite-dev cmake
+ libxrender-dev gst-plugins-base-dev hyphen-dev libexecinfo-dev
+ ruby-dev glib-dev libgcrypt-dev libtasn1-dev"
subpackages="$pkgname-dev"
-source="https://download.qt.io/official_releases/qt/${pkgver%.*}/$pkgver/submodules/$_pkgname-$pkgver.tar.xz
- pic.patch
- fix-rpath.patch
- fix-execinfo.patch
- 0001-Add-ARM-64-support.patch
+#source="https://github.com/qtwebkit/qtwebkit/releases/download/$_realname-$_realver/$_realname-$_realver.tar.xz
+source="https://distfiles.adelielinux.org/source/$_realname-$_realver.tar.xz
+ bug-931.patch
+ ppc-llint.patch
"
-builddir="$srcdir"/$_pkgname-$pkgver
-
-prepare() {
- default_prepare
- # remove some bundled
- mkdir Source/ThirdParty/orig
- mv Source/ThirdParty/gtest/ \
- Source/ThirdParty/qunit/ \
- Source/ThirdParty/orig/
- syncqt.pl -version $pkgver Source/sync.profile
-}
+builddir="$srcdir"/$_realname-$_realver
build() {
- local _maybe_smaller=""
- cd "$builddir"
-
- # On 32-bit x86, ld.bfd will run out of memory if debugging information
- # is built. See https://sourceware.org/bugzilla/show_bug.cgi?id=23470
- # for more information.
- case "$CARCH" in
- pmmx) _maybe_smaller="QMAKE_CXXFLAGS_DEBUG+=-g0"
- esac
-
- qmake $_maybe_smaller
-
- # /usr/include/fortify/stdlib.h:20:25: fatal error: stdlib.h: No such file or directory
- # see: http://stackoverflow.com/questions/37218953/isystem-on-a-system-include-directory-causes-errors
- # see: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71090
- # see: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70129
- qmake Source/JavaScriptCore/LLIntOffsetsExtractor.pro -o \
- Source/JavaScriptCore/Makefile.LLIntOffsetsExtractor
- sed -i 's:-isystem /usr/include ::' \
- Source/JavaScriptCore/Makefile.LLIntOffsetsExtractor
-
+ if [ "$CBUILD" != "$CHOST" ]; then
+ CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
+ fi
+ # We can enable the JIT when it is stable on all Tier 1 platforms:
+ # pmmx (ensure no SSE)
+ # ppc
+ # ppc64
+ #
+ # DONE:
+ # aarch64
+ # armv7
+ # x86_64
+ #
+ # https://github.com/qtwebkit/qtwebkit/issues/930
+ # -DENABLE_MEDIA_SOURCE=ON \
+ # -DENABLE_VIDEO=ON \
+ # -DENABLE_WEB_AUDIO=ON \
+ # -DUSE_GSTREAMER=ON \
+ cmake \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=True \
+ -DCMAKE_BUILD_TYPE=RelWithDebugInfo \
+ -DCMAKE_CXX_FLAGS="$CXXFLAGS" \
+ -DCMAKE_C_FLAGS="$CFLAGS" \
+ -DENABLE_JIT=OFF \
+ -DENABLE_PRINT_SUPPORT=ON \
+ -DENABLE_QT_WEBCHANNEL=ON \
+ -DPORT=Qt \
+ -DUSE_SYSTEM_MALLOC=ON \
+ -DUSE_WOFF2=OFF \
+ ${CMAKE_CROSSOPTS} .
make
}
+check() {
+ CTEST_OUTPUT_ON_FAILURE=TRUE ctest
+}
+
package() {
- cd "$builddir"
- make install INSTALL_ROOT="$pkgdir"
- sed -i -e 's:-L/home[^ ]\+::g' "$pkgdir"/usr/lib/pkgconfig/*.pc
+ make DESTDIR="$pkgdir" install
}
-sha512sums="79316ab746a230fdb290e28629d7cec5fca75119ba8868060742c682ab86490de9ffd8e517569aa7412f35fd709568dbb5f7d2d467bdb4461e192f8b05d6f1e5 qtwebkit-opensource-src-5.9.1.tar.xz
-9a62a5e7af91c44311b517608262f88b5bc607e75dc5878dd08b0a0872ec03fb7a566df0a41413f7e60beb1b9880e24f084b90c38ed50d4219ec2ad6af9bd62f pic.patch
-00d59c0cdb58ae8e7cf6bc3d03f133697e74c267ccebe12238bcdc274d4c90210b82c2d8bdf0e949cd43da13a4fd8a4c35fb54a00ed5102a4ac4d23aa002d0fe fix-rpath.patch
-f17c2f4b90090c8f12e4ba1f2cbd7a9f496c8de024ba6e0d55b98e5b89ab89298aff84f39e81905e0491fe6bd11544633a8b191403a866e16ed654d44cf8dc6f fix-execinfo.patch
-af5097d44f73de156ca31a5423136301dfc12ae693e20c4702bf3f1c6e16395f3912e9268582480ba3177021f37d4cae3b84d4b23eeb063fdc40f2444d3b34c8 0001-Add-ARM-64-support.patch"
+sha512sums="ec009773953b9f3e2c0e47072cd678f7044b16219c85879a6031c109c7b2b84f426564bb673ccaafa0bcc3f7a656e3cb0d8e3be28d3bbfb401adcd1a6b8b9edd qt5-qtwebkit-5.212.0-git20191114.tar.xz
+85adb979eb5d58ccab85d07d6a6db470b34bdb6fd8af2eef04ce268da41a596b4a19295c97dca1201daf4a51ca9e183bb27dd36b9b12b0e149224793d1c190a9 bug-931.patch
+0b358e4df16e8792c995a385386bfe9e197e23854f30129b504d3ba851cdfab3a2adef462a6ae3a775ec01d02cd67ef404259491339336c6ce896d7940597c95 ppc-llint.patch"
diff --git a/user/qt5-qtwebkit/bug-931.patch b/user/qt5-qtwebkit/bug-931.patch
new file mode 100644
index 000000000..7d363dd62
--- /dev/null
+++ b/user/qt5-qtwebkit/bug-931.patch
@@ -0,0 +1,10 @@
+--- qt5-qtwebkit-5.212.0-git20191114/Source/JavaScriptCore/runtime/NativeExecutable.cpp.old 2019-11-14 19:31:45.000000000 +0000
++++ qt5-qtwebkit-5.212.0-git20191114/Source/JavaScriptCore/runtime/NativeExecutable.cpp 2020-01-04 19:14:22.974744920 +0000
+@@ -28,6 +28,7 @@
+ #include "BatchedTransitionOptimizer.h"
+ #include "CodeBlock.h"
+ #include "Debugger.h"
++#include "ExecutableBaseInlines.h"
+ #include "JIT.h"
+ #include "JSCInlines.h"
+ #include "LLIntEntrypoint.h"
diff --git a/user/qt5-qtwebkit/fix-execinfo.patch b/user/qt5-qtwebkit/fix-execinfo.patch
deleted file mode 100644
index 6fbf4ed8f..000000000
--- a/user/qt5-qtwebkit/fix-execinfo.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- webkitgtk-2.2.0.orig/Source/WTF/wtf/Assertions.cpp
-+++ webkitgtk-2.2.0/Source/WTF/wtf/Assertions.cpp
-@@ -64,7 +64,7 @@
- #include <windows.h>
- #endif
-
--#if (OS(DARWIN) || (OS(LINUX) && !defined(__UCLIBC__))) && !OS(ANDROID)
-+#if OS(DARWIN) || (OS(LINUX) && defined(__GLIBC__) && !defined(__UCLIBC__)) && !OS(ANDROID)
- #include <cxxabi.h>
- #include <dlfcn.h>
- #include <execinfo.h>
-@@ -242,7 +242,7 @@
-
- void WTFGetBacktrace(void** stack, int* size)
- {
--#if (OS(DARWIN) || (OS(LINUX) && !defined(__UCLIBC__))) && !OS(ANDROID)
-+#if OS(DARWIN) || (OS(LINUX) && defined(__GLIBC__) && !defined(__UCLIBC__)) && !OS(ANDROID)
- *size = backtrace(stack, *size);
- #elif OS(WINDOWS) && !OS(WINCE)
- // The CaptureStackBackTrace function is available in XP, but it is not defined
diff --git a/user/qt5-qtwebkit/fix-rpath.patch b/user/qt5-qtwebkit/fix-rpath.patch
deleted file mode 100644
index 6b08fd1a3..000000000
--- a/user/qt5-qtwebkit/fix-rpath.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- ./Tools/qmake/mkspecs/features/unix/default_post.prf.orig
-+++ ./Tools/qmake/mkspecs/features/unix/default_post.prf
-@@ -59,8 +59,6 @@
- }
- }
-
--contains(TEMPLATE, app): CONFIG += rpath
--
- CONFIG(debug, debug|release)|force_debug_info {
- # Make ld not cache the symbol tables of input files in memory to avoid memory exhaustion during the linking phase.
- !force_static_libs_as_shared:config_gnuld: QMAKE_LFLAGS += -Wl,--no-keep-memory
diff --git a/user/qt5-qtwebkit/pic.patch b/user/qt5-qtwebkit/pic.patch
deleted file mode 100644
index ef8993ee3..000000000
--- a/user/qt5-qtwebkit/pic.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- ./Source/WTF/wtf/InlineASM.h.orig 2013-10-07 11:36:58.995128674 +0000
-+++ ./Source/WTF/wtf/InlineASM.h 2013-10-07 11:37:28.058792290 +0000
-@@ -42,7 +42,7 @@
- #define THUMB_FUNC_PARAM(name)
- #endif
-
--#if (OS(LINUX) || OS(FREEBSD)) && CPU(X86_64)
-+#if (OS(LINUX) || OS(FREEBSD)) && (CPU(X86_64) || defined(__PIC__))
- #define GLOBAL_REFERENCE(name) #name "@plt"
- #elif CPU(X86) && COMPILER(MINGW)
- #define GLOBAL_REFERENCE(name) "@" #name "@4"
diff --git a/user/qt5-qtwebkit/ppc-llint.patch b/user/qt5-qtwebkit/ppc-llint.patch
new file mode 100644
index 000000000..033bbab68
--- /dev/null
+++ b/user/qt5-qtwebkit/ppc-llint.patch
@@ -0,0 +1,32 @@
+This fixes JavaScriptCore on big endian systems (mainly ppc).
+
+Without the patch, attempting to run any JS results in
+a crash as the generated code was endian specific.
+
+--- qtwebkit/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm
++++ qtwebkit/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm
+@@ -1440,13 +1440,13 @@ _llint_op_put_by_id:
+ loadp StructureChain::m_vector[t3], t3
+ assert(macro (ok) btpnz t3, ok end)
+
+- loadp Structure::m_prototype[t2], t2
++ loadp Structure::m_prototype + PayloadOffset[t2], t2
+ btpz t2, .opPutByIdTransitionChainDone
+ .opPutByIdTransitionChainLoop:
+ loadp [t3], t1
+ bineq t1, JSCell::m_structureID[t2], .opPutByIdSlow
+ addp 4, t3
+- loadp Structure::m_prototype[t1], t2
++ loadp Structure::m_prototype + PayloadOffset[t1], t2
+ btpnz t2, .opPutByIdTransitionChainLoop
+
+ .opPutByIdTransitionChainDone:
+@@ -2004,7 +2004,7 @@ _llint_throw_from_slow_path_trampoline:
+ # When throwing from the interpreter (i.e. throwing from LLIntSlowPaths), so
+ # the throw target is not necessarily interpreted code, we come to here.
+ # This essentially emulates the JIT's throwing protocol.
+- loadp Callee[cfr], t1
++ loadp Callee + PayloadOffset[cfr], t1
+ andp MarkedBlockMask, t1
+ loadp MarkedBlockFooterOffset + MarkedBlock::Footer::m_vm[t1], t1
+ jmp VM::targetMachinePCForThrow[t1]