diff --git a/extra/qt5-webengine/PKGBUILD b/extra/qt5-webengine/PKGBUILD index dd3e2b4b2..5d58887d5 100644 --- a/extra/qt5-webengine/PKGBUILD +++ b/extra/qt5-webengine/PKGBUILD @@ -9,24 +9,23 @@ buildarch=12 highmem=1 pkgname=qt5-webengine -_qtver=5.9.3 +_qtver=5.10.0 pkgver=${_qtver/-/} pkgrel=1 arch=('x86_64') url='http://qt-project.org/' license=('LGPL3' 'LGPL2.1' 'BSD') pkgdesc='Provides support for web applications using the Chromium browser project' -depends=('qt5-webchannel' 'qt5-location' 'libxcomposite' 'libxrandr' 'pciutils' 'libxss' 'libvpx' - 'libevent' 'libsrtp' 'snappy' 'nss' 'protobuf' 'libxslt' 'libxdamage' 'minizip' 'ffmpeg') - # namcap note: libxdamage is needed for nvidia users -makedepends=('python2' 'git' 'gperf' 'jsoncpp' 'ninja') +depends=('qt5-webchannel' 'qt5-location' 'libxcomposite' 'libxrandr' 'pciutils' 'libxss' + 'libevent' 'snappy' 'nss' 'protobuf' 'libxslt' 'minizip' 'ffmpeg' 're2') # libvpx - 1.6.1 not supported +makedepends=('python2' 'git' 'gperf' 'jsoncpp' 'ninja' 'qt5-tools') groups=('qt' 'qt5') -_pkgfqn="${pkgname/5-/}-opensource-src-${_qtver}" +_pkgfqn="${pkgname/5-/}-everywhere-src-${_qtver}" source=("http://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz" - harmony-fix.diff + qtwebengine-harmony.patch '0001-ARM-toolchain-fixes.patch') -sha256sums=('45ae1142fd87271c100f4d7889427738e774e86db5d8f6bcf9ceb99d18571d37' - '2c309c0f6978e6a399422319b5034b01881d5526cf48b2ee5fcc7f418029a344' +sha256sums=('a8bf5989ef847a249bbc1f391743a36971825b896747d073e30dbcdefc9567f9' + 'feca54ab09ac0fc9d0626770a6b899a6ac5a12173c7d0c1005bc3964ec83e7b3' '8202b09a1caa82538a2eacd79b62b61d8661c65cdfb275560d231aa31a362b12') prepare() { @@ -39,7 +38,7 @@ prepare() { cd ${_pkgfqn} # FreeType 2.8.1 - patch -Np1 -i ../harmony-fix.diff + patch -Np1 -i ../qtwebengine-harmony.patch cd src/3rdparty patch -p1 -i ${srcdir}/0001-ARM-toolchain-fixes.patch @@ -49,7 +48,12 @@ build() { cd build export PATH="$srcdir/bin:$PATH" - qmake CONFIG+="proprietary-codecs" WEBENGINE_CONFIG+="use_proprietary_codecs use_system_ffmpeg" ../${_pkgfqn} + qmake ../${_pkgfqn} -- \ + -proprietary-codecs \ + -system-ffmpeg \ + -webp \ + -spellchecker +# -webengine-icu make } diff --git a/extra/qt5-webengine/harmony-fix.diff b/extra/qt5-webengine/qtwebengine-harmony.patch similarity index 61% rename from extra/qt5-webengine/harmony-fix.diff rename to extra/qt5-webengine/qtwebengine-harmony.patch index 803730f0d..6343f7f80 100644 --- a/extra/qt5-webengine/harmony-fix.diff +++ b/extra/qt5-webengine/qtwebengine-harmony.patch @@ -1,31 +1,39 @@ -diff -u -r qtwebengine-opensource-src-5.9.1/src/3rdparty/chromium/third_party/skia/src/ports/SkFontHost_FreeType.cpp qtwebengine-opensource-src-5.9.1-ftfixes/src/3rdparty/chromium/third_party/skia/src/ports/SkFontHost_FreeType.cpp ---- qtwebengine-opensource-src-5.9.1/src/3rdparty/chromium/third_party/skia/src/ports/SkFontHost_FreeType.cpp 2017-09-19 17:38:43.659642835 +0200 -+++ qtwebengine-opensource-src-5.9.1-ftfixes/src/3rdparty/chromium/third_party/skia/src/ports/SkFontHost_FreeType.cpp 2017-09-19 17:38:50.492991631 +0200 -@@ -80,7 +80,7 @@ - - class FreeTypeLibrary : SkNoncopyable { - public: -- FreeTypeLibrary() : fLibrary(nullptr), fIsLCDSupported(false), fLCDExtra(0) { -+ FreeTypeLibrary() : fLibrary(nullptr) { +--- qtwebengine-opensource-src-5.9.1/src/3rdparty/chromium/third_party/skia/src/ports/SkFontHost_FreeType.cpp.orig 2017-10-10 17:42:06.956950985 +0200 ++++ qtwebengine-opensource-src-5.9.1/src/3rdparty/chromium/third_party/skia/src/ports/SkFontHost_FreeType.cpp 2017-10-10 17:46:05.824187787 +0200 +@@ -99,8 +99,6 @@ + FreeTypeLibrary() + : fGetVarDesignCoordinates(nullptr) + , fLibrary(nullptr) +- , fIsLCDSupported(false) +- , fLCDExtra(0) + { if (FT_New_Library(&gFTMemory, &fLibrary)) { return; +@@ -147,12 +145,7 @@ } -@@ -90,8 +90,6 @@ - // Default { 0x10, 0x40, 0x70, 0x40, 0x10 } adds up to 0x110, simulating ink spread. - // SetLcdFilter must be called before SetLcdFilterWeights. - if (FT_Library_SetLcdFilter(fLibrary, FT_LCD_FILTER_DEFAULT) == 0) { + #endif + +- // Setup LCD filtering. This reduces color fringes for LCD smoothed glyphs. +- // The default has changed over time, so this doesn't mean the same thing to all users. +- if (FT_Library_SetLcdFilter(fLibrary, FT_LCD_FILTER_DEFAULT) == 0) { - fIsLCDSupported = true; - fLCDExtra = 2; //Using a filter adds one full pixel to each side. - - #ifdef SK_FONTHOST_FREETYPE_USE_NORMAL_LCD_FILTER - // Adds to 0x110 simulating ink spread, but provides better results than default. -@@ -124,13 +122,9 @@ +- } ++ FT_Library_SetLcdFilter(fLibrary, FT_LCD_FILTER_DEFAULT); + } + ~FreeTypeLibrary() { + if (fLibrary) { +@@ -161,8 +153,6 @@ } FT_Library library() { return fLibrary; } - bool isLCDSupported() { return fIsLCDSupported; } - int lcdExtra() { return fLCDExtra; } + // FT_Get_{MM,Var}_{Blend,Design}_Coordinates were added in FreeType 2.7.1. + // Prior to this there was no way to get the coordinates out of the FT_Face. +@@ -173,8 +163,6 @@ + private: FT_Library fLibrary; - bool fIsLCDSupported; @@ -33,7 +41,7 @@ diff -u -r qtwebengine-opensource-src-5.9.1/src/3rdparty/chromium/third_party/sk // FT_Library_SetLcdFilterWeights was introduced in FreeType 2.4.0. // The following platforms provide FreeType of at least 2.4.0. -@@ -633,17 +627,6 @@ +@@ -704,17 +692,6 @@ rec->fTextSize = SkIntToScalar(1 << 14); } @@ -51,7 +59,7 @@ diff -u -r qtwebengine-opensource-src-5.9.1/src/3rdparty/chromium/third_party/sk SkPaint::Hinting h = rec->getHinting(); if (SkPaint::kFull_Hinting == h && !isLCD(*rec)) { // collapse full->normal hinting if we're not doing LCD -@@ -1046,11 +1029,11 @@ +@@ -1115,11 +1092,11 @@ void SkScalerContext_FreeType::updateGlyphIfLCD(SkGlyph* glyph) { if (isLCD(fRec)) { if (fLCDIsVert) {