extra/qt5-webkit to 5.212.0alpha2-1

This commit is contained in:
Kevin Mihelich 2017-06-17 14:49:29 +00:00
parent 6fac179230
commit e884316701
4 changed files with 25 additions and 155 deletions

View file

@ -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

View file

@ -1,62 +1,53 @@
# $Id: PKGBUILD 240297 2015-06-03 10:22:03Z fyan $ # $Id: PKGBUILD 240297 2015-06-03 10:22:03Z fyan $
# Maintainer: Felix Yan <felixonmars@archlinux.org> # Maintainer: Felix Yan <felixonmars@archlinux.org>
# Maintainer: Antonio Rojas <arojas@archlinux.org>
# Contributor: Andrea Scarpino <andrea@archlinux.org> # Contributor: Andrea Scarpino <andrea@archlinux.org>
# ALARM: Kevin Mihelich <kevin@archlinuxarm.org> # ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
# - icu makedepend # - disable jit on v5/v6
# - patch for soft-float armv5 # - disable OpenGL
# - patch for AArch64 support in qtwebkit
highmem=1
pkgname=qt5-webkit pkgname=qt5-webkit
_qtver=5.9.0 _qtver=5.212.0-alpha2
pkgver=${_qtver/-/} pkgver=${_qtver/-/}
pkgrel=1 pkgrel=1
arch=('i686' 'x86_64') arch=(i686 x86_64)
url='http://qt-project.org/' url='http://qt-project.org/'
license=('GPL3' 'LGPL3' 'FDL' 'custom') license=(GPL3 LGPL3 FDL custom)
pkgdesc='Classes for a WebKit2 based implementation and a new QML API' pkgdesc='Classes for a WebKit2 based implementation and a new QML API'
depends=('qt5-location' 'qt5-sensors' 'qt5-webchannel' 'libwebp' 'libxslt' 'libxcomposite' 'gst-plugins-base') depends=(qt5-location qt5-sensors qt5-webchannel libwebp libxslt libxcomposite gst-plugins-base hyphen)
makedepends=('ruby' 'gperf' 'python' 'icu' 'qt5-doc' 'qt5-tools') makedepends=(cmake ruby gperf python2 qt5-doc qt5-tools)
optdepends=('gst-plugins-good: Webm codec support') optdepends=('gst-plugins-good: Webm codec support')
conflicts=('qt') conflicts=(qt5-webkit-ng)
groups=('qt' 'qt5') replaces=(qt5-webkit-ng)
groups=(qt qt5)
_pkgfqn="${pkgname/5-/}-opensource-src-${_qtver}" _pkgfqn="${pkgname/5-/}-opensource-src-${_qtver}"
source=("http://download.qt.io/community_releases/${pkgver%.*}/${_qtver}-final/qtwebkit-opensource-src-${_qtver}.tar.xz" source=("https://github.com/annulen/webkit/releases/download/qtwebkit-$_qtver/qtwebkit-$_qtver.tar.xz")
qt5-webkit-icu59.patch sha256sums=('f8f901de567e11fc5659402b6b827eac75505ff9c5072d8e919aa306003f8f8a')
qt5webkit-0002-Fix-QtWebKit-build-on-ARM-softfp.patch
0001-Add-ARM-64-support.patch)
sha256sums=('8dad193b740055a998312e04a040f2e32a923c0823b2d239b24eab08276a4e04'
'3bc9c7202f5cb055311ffb8a14145cef89060c00002f4cd5b4f4bf210bd56295'
'f8a00464d786a0adaa840813256fcaa9885d5914c604ca66d3c750bb79161b46'
'a1abdfd978198c5b3d76637131bd76793735f1d94f0eea04e1b223967e58bc6e')
prepare() { prepare() {
mkdir -p build mkdir -p build
# Fix build with ICU 59 (PLD linux)
cd ${_pkgfqn}
patch -p1 -i ../qt5-webkit-icu59.patch
# ARM fixes
patch -p1 -i ../qt5webkit-0002-Fix-QtWebKit-build-on-ARM-softfp.patch
patch -p1 -i ../0001-Add-ARM-64-support.patch
} }
build() { build() {
cd build cd build
qmake ../${_pkgfqn} [[ $CARCH == "arm" || $CARCH == "armv6h" ]] && CONFIG="-DENABLE_JIT=OFF"
cmake ../qtwebkit-$_qtver \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_BUILD_TYPE=Release \
-DPORT=Qt \
-DENABLE_TOOLS=OFF \
-DENABLE_OPENGL=OFF $CONFIG
make make
make docs
} }
package() { package() {
cd build cd build
make INSTALL_ROOT="$pkgdir" install install_docs make DESTDIR="$pkgdir" install
# Drop QMAKE_PRL_BUILD_DIR because reference the build dir
find "$pkgdir/usr/lib" -type f -name '*.prl' \
-exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
install -d "$pkgdir"/usr/share/licenses install -d "$pkgdir"/usr/share/licenses
ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname} ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname}

View file

@ -1,73 +0,0 @@
diff --git a/Source/WTF/wtf/Compiler.h b/Source/WTF/wtf/Compiler.h
index ead844f..e62cfd4 100644
--- a/Source/WTF/wtf/Compiler.h
+++ b/Source/WTF/wtf/Compiler.h
@@ -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 --git a/Source/WTF/wtf/TypeTraits.h b/Source/WTF/wtf/TypeTraits.h
index b9e46bc..876fa45 100644
--- a/Source/WTF/wtf/TypeTraits.h
+++ b/Source/WTF/wtf/TypeTraits.h
@@ -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; };
---qtwebkit-opensource-src-5.5.1/Source/JavaScriptCore/API/JSStringRef.h.orig 2015-10-13 06:37:10.000000000 +0200
+++ qtwebkit-opensource-src-5.5.1/Source/JavaScriptCore/API/JSStringRef.h 2017-04-24 12:26:42.495345570 +0200
@@ -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 @@
@typedef JSChar
@abstract A Unicode character.
*/
- typedef unsigned short JSChar;
+ typedef char16_t JSChar;
#else
typedef wchar_t JSChar;
#endif
--- qtwebkit-opensource-src-5.5.1/Source/WebKit2/Shared/API/c/WKString.h.orig 2015-10-13 06:37:12.000000000 +0200
+++ qtwebkit-opensource-src-5.5.1/Source/WebKit2/Shared/API/c/WKString.h 2017-04-24 12:27:33.432011867 +0200
@@ -31,6 +31,7 @@
#ifndef __cplusplus
#include <stdbool.h>
#endif
+#include <uchar.h>
#ifdef __cplusplus
extern "C" {
@@ -38,7 +39,7 @@
#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

View file

@ -1,35 +0,0 @@
From 8a716a29721d900069d82878c45cf87a356adba3 Mon Sep 17 00:00:00 2001
From: Allan Sandfeld Jensen <allan.jensen@digia.com>
Date: Tue, 17 Dec 2013 12:26:58 +0100
Subject: [PATCH] Fix QtWebKit build on ARM softfp
The low level interpreter depends on hardfp, so we need to disable it
when builing on ARM targets with softfp.
Task-number: QTBUG-35681
Change-Id: I8aaef546b92182a87cc7116ac452d8725de6a7db
Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
Signed-off-by: Fatih Aşıcı <fatih.asici@gmail.com>
---
Source/WTF/wtf/Platform.h | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/Source/WTF/wtf/Platform.h b/Source/WTF/wtf/Platform.h
index 3a9b509..cddc210 100644
--- a/Source/WTF/wtf/Platform.h
+++ b/Source/WTF/wtf/Platform.h
@@ -803,6 +803,11 @@
#define ENABLE_LLINT 0
#endif
+/* LLINT on ARM depends on an FPU */
+#if !defined(ENABLE_LLINT) && CPU(ARM) && !CPU(ARM_HARDFP)
+#define ENABLE_LLINT 0
+#endif
+
/* On some of the platforms where we have a JIT, we want to also have the
low-level interpreter. */
#if !defined(ENABLE_LLINT) \
--
1.8.5.1