summaryrefslogtreecommitdiffstats
path: root/deps/qt5-webkit
diff options
context:
space:
mode:
author Eric Hameleers <alien@slackware.com>2018-06-13 14:50:49 +0200
committer Eric Hameleers <alien@slackware.com>2018-06-13 14:50:49 +0200
commitc779e019ac53019baa07eb843aba59bc55ffec20 (patch)
treef4dd959f71cea6ac6a8741a1a8f9933a389f5bc7 /deps/qt5-webkit
parente0d005c66dbed44be15070995d9d9e9200c989fa (diff)
downloadktown-c779e019ac53019baa07eb843aba59bc55ffec20.tar.gz
ktown-c779e019ac53019baa07eb843aba59bc55ffec20.tar.xz
Updated 'testing' in preparation for June '18 release of Plasma 5.13
Diffstat (limited to 'deps/qt5-webkit')
-rw-r--r--deps/qt5-webkit/.url2
-rw-r--r--deps/qt5-webkit/patches/qt5-webkit.gcc7.patch34
-rw-r--r--deps/qt5-webkit/patches/qt5-webkit.icu59.patch80
-rwxr-xr-xdeps/qt5-webkit/qt5-webkit.SlackBuild31
4 files changed, 136 insertions, 11 deletions
diff --git a/deps/qt5-webkit/.url b/deps/qt5-webkit/.url
index 46f309b..0924d34 100644
--- a/deps/qt5-webkit/.url
+++ b/deps/qt5-webkit/.url
@@ -1 +1 @@
-http://download.qt.io/community_releases/5.6/5.6.1/qtwebkit-opensource-src-5.6.1.tar.xz
+http://download.qt.io/official_releases/qt/5.9/5.9.1/submodules/qtwebkit-opensource-src-5.9.1.tar.xz
diff --git a/deps/qt5-webkit/patches/qt5-webkit.gcc7.patch b/deps/qt5-webkit/patches/qt5-webkit.gcc7.patch
new file mode 100644
index 0000000..bddb6fc
--- /dev/null
+++ b/deps/qt5-webkit/patches/qt5-webkit.gcc7.patch
@@ -0,0 +1,34 @@
+diff -u -r webkitgtk-2.16.5/Source/WTF/wtf/text/StringImpl.h webkitgtk-2.16.5-gcc7/Source/WTF/wtf/text/StringImpl.h
+--- webkitgtk-2.16.5/Source/WTF/wtf/text/StringImpl.h 2017-02-20 17:20:15.000000000 +0100
++++ webkitgtk-2.16.5-gcc7/Source/WTF/wtf/text/StringImpl.h 2017-06-27 13:13:57.801527350 +0200
+@@ -581,29 +581,7 @@
+ // FIXME: Does this really belong in StringImpl?
+ template <typename T> static void copyChars(T* destination, const T* source, unsigned numCharacters)
+ {
+- if (numCharacters == 1) {
+- *destination = *source;
+- return;
+- }
+-
+- if (numCharacters <= s_copyCharsInlineCutOff) {
+- unsigned i = 0;
+-#if (CPU(X86) || CPU(X86_64))
+- const unsigned charsPerInt = sizeof(uint32_t) / sizeof(T);
+-
+- if (numCharacters > charsPerInt) {
+- unsigned stopCount = numCharacters & ~(charsPerInt - 1);
+-
+- const uint32_t* srcCharacters = reinterpret_cast<const uint32_t*>(source);
+- uint32_t* destCharacters = reinterpret_cast<uint32_t*>(destination);
+- for (unsigned j = 0; i < stopCount; i += charsPerInt, ++j)
+- destCharacters[j] = srcCharacters[j];
+- }
+-#endif
+- for (; i < numCharacters; ++i)
+- destination[i] = source[i];
+- } else
+- memcpy(destination, source, numCharacters * sizeof(T));
++ memcpy(destination, source, numCharacters * sizeof(T));
+ }
+
+ ALWAYS_INLINE static void copyChars(UChar* destination, const LChar* source, unsigned numCharacters)
diff --git a/deps/qt5-webkit/patches/qt5-webkit.icu59.patch b/deps/qt5-webkit/patches/qt5-webkit.icu59.patch
new file mode 100644
index 0000000..3eb73b2
--- /dev/null
+++ b/deps/qt5-webkit/patches/qt5-webkit.icu59.patch
@@ -0,0 +1,80 @@
+Submitted by: DJ Lucas (dj_AT_linuxfromscratch_DOT_org)
+Date: 2017-04-29
+Initial Package Version: 5.8.0
+Upstream Status: Unknown
+Origin: https://bugreports.qt.io/browse/QTBUG-35971
+Description: Fixes build with icu-59.
+
+diff -Naurp qtwebkit-opensource-src-5.8.0-orig/Source/JavaScriptCore/API/JSStringRef.h qtwebkit-opensource-src-5.8.0/Source/JavaScriptCore/API/JSStringRef.h
+--- qtwebkit-opensource-src-5.8.0-orig/Source/JavaScriptCore/API/JSStringRef.h 2016-12-10 10:32:34.000000000 -0600
++++ qtwebkit-opensource-src-5.8.0/Source/JavaScriptCore/API/JSStringRef.h 2017-04-29 17:03:35.280465079 -0500
+@@ -32,6 +32,7 @@
+ #include <stdbool.h>
+ #endif
+ #include <stddef.h> /* for size_t */
++#include <uchar.h>
+
+ #ifdef __cplusplus
+ extern "C" {
+@@ -43,7 +44,7 @@ extern "C" {
+ @typedef JSChar
+ @abstract A Unicode character.
+ */
+- typedef unsigned short JSChar;
++ typedef char16_t JSChar;
+ #else
+ typedef wchar_t JSChar;
+ #endif
+diff -Naurp qtwebkit-opensource-src-5.8.0-orig/Source/WTF/wtf/Compiler.h qtwebkit-opensource-src-5.8.0/Source/WTF/wtf/Compiler.h
+--- qtwebkit-opensource-src-5.8.0-orig/Source/WTF/wtf/Compiler.h 2016-12-10 10:32:34.000000000 -0600
++++ qtwebkit-opensource-src-5.8.0/Source/WTF/wtf/Compiler.h 2017-04-29 17:03:35.280465079 -0500
+@@ -61,6 +61,7 @@
+ #define WTF_COMPILER_SUPPORTS_HAS_TRIVIAL_DESTRUCTOR __has_feature(has_trivial_destructor)
+ #define WTF_COMPILER_SUPPORTS_CXX_STRONG_ENUMS __has_feature(cxx_strong_enums)
+ #define WTF_COMPILER_SUPPORTS_CXX_REFERENCE_QUALIFIED_FUNCTIONS __has_feature(cxx_reference_qualified_functions)
++#define WTF_COMPILER_SUPPORTS_CXX_NEW_CHAR_TYPES !defined(_LIBCPP_HAS_NO_UNICODE_CHARS)
+
+ #endif
+
+@@ -142,6 +143,7 @@
+ #define WTF_COMPILER_SUPPORTS_CXX_DELETED_FUNCTIONS 1
+ #endif
+ #if GCC_VERSION_AT_LEAST(4, 5, 0)
++#define WTF_COMPILER_SUPPORTS_CXX_NEW_CHAR_TYPES 1
+ #define WTF_COMPILER_SUPPORTS_CXX_EXPLICIT_CONVERSIONS 1
+ #endif
+ #if GCC_VERSION_AT_LEAST(4, 6, 0)
+diff -Naurp qtwebkit-opensource-src-5.8.0-orig/Source/WTF/wtf/TypeTraits.h qtwebkit-opensource-src-5.8.0/Source/WTF/wtf/TypeTraits.h
+--- qtwebkit-opensource-src-5.8.0-orig/Source/WTF/wtf/TypeTraits.h 2016-12-10 10:32:34.000000000 -0600
++++ qtwebkit-opensource-src-5.8.0/Source/WTF/wtf/TypeTraits.h 2017-04-29 17:03:35.280465079 -0500
+@@ -75,6 +75,10 @@ namespace WTF {
+ #if !COMPILER(MSVC) || defined(_NATIVE_WCHAR_T_DEFINED)
+ template<> struct IsInteger<wchar_t> { static const bool value = true; };
+ #endif
++#if COMPILER_SUPPORTS(CXX_NEW_CHAR_TYPES)
++ template<> struct IsInteger<char16_t> { static const bool value = true; };
++ template<> struct IsInteger<char32_t> { static const bool value = true; };
++#endif
+
+ template<typename T> struct IsFloatingPoint { static const bool value = false; };
+ template<> struct IsFloatingPoint<float> { static const bool value = true; };
+diff -Naurp qtwebkit-opensource-src-5.8.0-orig/Source/WebKit2/Shared/API/c/WKString.h qtwebkit-opensource-src-5.8.0/Source/WebKit2/Shared/API/c/WKString.h
+--- qtwebkit-opensource-src-5.8.0-orig/Source/WebKit2/Shared/API/c/WKString.h 2016-12-10 10:32:34.000000000 -0600
++++ qtwebkit-opensource-src-5.8.0/Source/WebKit2/Shared/API/c/WKString.h 2017-04-29 17:03:35.280465079 -0500
+@@ -31,6 +31,7 @@
+ #ifndef __cplusplus
+ #include <stdbool.h>
+ #endif
++#include <uchar.h>
+
+ #ifdef __cplusplus
+ extern "C" {
+@@ -38,7 +39,7 @@ extern "C" {
+
+ #if !defined(WIN32) && !defined(_WIN32) \
+ && !((defined(__CC_ARM) || defined(__ARMCC__)) && !defined(__linux__)) /* RVCT */
+- typedef unsigned short WKChar;
++ typedef char16_t WKChar;
+ #else
+ typedef wchar_t WKChar;
+ #endif
diff --git a/deps/qt5-webkit/qt5-webkit.SlackBuild b/deps/qt5-webkit/qt5-webkit.SlackBuild
index 59e9b9b..721b79d 100755
--- a/deps/qt5-webkit/qt5-webkit.SlackBuild
+++ b/deps/qt5-webkit/qt5-webkit.SlackBuild
@@ -22,18 +22,18 @@
# Derived from the qt5.SlackBuild
-# Modifications for qt5-webkit 5.6.0, 5.6.1, 5.7.0 2016 by Eric Hameleers, Eindhoven, NL
+# Modifications for qt5-webkit 5.6.0, 5.6.1, 5.7.0, 5.7.1, 5.9.0, 5.9.1 2016,2017 by Eric Hameleers, Eindhoven, NL
PKGNAM=qt5-webkit
-VERSION=${VERSION:-5.7.0}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-5.9.1}
+BUILD=${BUILD:-3}
NUMJOBS=${NUMJOBS:--j7}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
@@ -45,6 +45,10 @@ if [ "$ARCH" = "i486" ]; then
SLKCFLAGS="-O2 -march=i486 -mtune=i686"
SLKLDFLAGS=""
LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ SLKLDFLAGS=""
+ LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
SLKLDFLAGS=""
@@ -84,8 +88,15 @@ echo "Extracting qtwebkit-opensource-src-$VERSION.tar.xz"
tar xf $CWD/qtwebkit-opensource-src-$VERSION.tar.xz || exit 1
cd qtwebkit-opensource-src-$VERSION || exit 1
-## Fix linking to pthread:
-#cat $CWD/patches/qt5-webkit.pthread.patch | patch -p1 --verbose || exit 1
+# Prevent crashes when compiled with gcc7:
+cat $CWD/patches/qt5-webkit.gcc7.patch | patch -p1 --verbose || exit 1
+
+## Prevent compile error against icu-59:
+#cat $CWD/patches/qt5-webkit.icu59.patch | patch -p1 --verbose || exit 1
+
+# Avoid literally thousands of unneeded warning messages (thanks BLFS):
+sed -e '/CONFIG/a QMAKE_CXXFLAGS += -Wno-expansion-to-defined' \
+ -i Tools/qmake/mkspecs/features/unix/default_pre.prf
chown -R root:root .
find . \
@@ -110,7 +121,7 @@ export LD_LIBRARY_PATH="${QTDIR}/qtbase/lib:${QTDIR}/qttools/lib:${LD_LIBRARY_PA
mkdir build
cd build
- qmake-qt5 ..
+ qmake-qt5 ../WebKit.pro
make || exit 1
make install INSTALL_ROOT=$PKG || exit 1
cd ..
@@ -134,9 +145,9 @@ sed -i \
find "$PKG/usr/lib${LIBDIRSUFFIX}" -type f -name '*.prl' \
-exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d;s/\(QMAKE_PRL_LIBS =\).*/\1/' {} \;
-# Fix the qmake path in pri file:
-sed -i "s,${QTDIR}/qtbase,/usr/lib${LIBDIRSUFFIX}/qt5," \
- $PKG/usr/lib${LIBDIRSUFFIX}/qt5/mkspecs/modules/qt_lib_bootstrap_private.pri
+## Fix the qmake path in pri file:
+#sed -i "s,${QTDIR}/qtbase,/usr/lib${LIBDIRSUFFIX}/qt5," \
+# $PKG/usr/lib${LIBDIRSUFFIX}/qt5/mkspecs/modules/qt_lib_bootstrap_private.pri
# Add a documentation directory:
mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION