extra/qt5-webengine to 5.15.6-4

This commit is contained in:
Kevin Mihelich 2021-10-17 18:25:12 +00:00
parent e6aaf1f082
commit ca8e5669c2
3 changed files with 1918 additions and 2 deletions

View file

@ -12,14 +12,14 @@ highmem=1
pkgname=qt5-webengine pkgname=qt5-webengine
_qtver=5.15.6 _qtver=5.15.6
pkgver=${_qtver/-/} pkgver=${_qtver/-/}
pkgrel=2 pkgrel=4
arch=('x86_64') arch=('x86_64')
url='https://www.qt.io' url='https://www.qt.io'
license=('LGPL3' 'LGPL2.1' 'BSD') license=('LGPL3' 'LGPL2.1' 'BSD')
pkgdesc='Provides support for web applications using the Chromium browser project' pkgdesc='Provides support for web applications using the Chromium browser project'
depends=('qt5-webchannel' 'qt5-location' 'libxcomposite' 'libxrandr' 'pciutils' 'libxss' 'libxkbfile' depends=('qt5-webchannel' 'qt5-location' 'libxcomposite' 'libxrandr' 'pciutils' 'libxss' 'libxkbfile'
'libevent' 'snappy' 'nss' 'libxslt' 'minizip' 'ffmpeg' 're2' 'libvpx' 'libxtst' 'ttf-font') 'libevent' 'snappy' 'nss' 'libxslt' 'minizip' 'ffmpeg' 're2' 'libvpx' 'libxtst' 'ttf-font')
makedepends=('git' 'python2' 'python' 'gperf' 'jsoncpp' 'ninja' 'qt5-tools' 'poppler' 'libpipewire02' 'nodejs') makedepends=('git' 'python' 'gperf' 'jsoncpp' 'ninja' 'qt5-tools' 'poppler' 'libpipewire02' 'nodejs')
optdepends=('libpipewire02: WebRTC desktop sharing under Wayland') optdepends=('libpipewire02: WebRTC desktop sharing under Wayland')
groups=('qt' 'qt5') groups=('qt' 'qt5')
_pkgfqn=qtwebengine _pkgfqn=qtwebengine
@ -28,6 +28,8 @@ source=(git+https://code.qt.io/qt/qtwebengine.git#tag=v${pkgver}-lts
chromium-harfbuzz-3.0.0.patch chromium-harfbuzz-3.0.0.patch
skia-harfbuzz-3.0.0.patch skia-harfbuzz-3.0.0.patch
qt5-webengine-glibc-2.33.patch qt5-webengine-glibc-2.33.patch
qt5-webengine-python3.patch
qt5-webengine-chromium-python3.patch
0001-ARM-toolchain-fixes.patch 0001-ARM-toolchain-fixes.patch
0002-Fix-ARM-skia-ICE.patch 0002-Fix-ARM-skia-ICE.patch
0003-bind-gen-Support-single_process-flag-in-generate_bin.patch 0003-bind-gen-Support-single_process-flag-in-generate_bin.patch
@ -38,6 +40,8 @@ sha256sums=('SKIP'
'7ce947944a139e66774dfc7249bf7c3069f07f83a0f1b2c1a1b14287a7e15928' '7ce947944a139e66774dfc7249bf7c3069f07f83a0f1b2c1a1b14287a7e15928'
'dae11dec5088eb1b14045d8c9862801a342609c15701d7c371e1caccf46e1ffd' 'dae11dec5088eb1b14045d8c9862801a342609c15701d7c371e1caccf46e1ffd'
'2294e5390c869963fc58f7bf1ee0a254a3f7fce3ed00c04e34a5f03e2b31b624' '2294e5390c869963fc58f7bf1ee0a254a3f7fce3ed00c04e34a5f03e2b31b624'
'45ccf4ff981a26656e5105259f71a3ce386d4a7112cbf09e41cb61615b355435'
'c15954ab938ec6235c5d9756753773896691a77ff6a5bf7ef183122f5d04f022'
'10b3fed2d67b3a1f487d2d95c9a603fcbc23f08d4528d1986a6d0010c9e466bc' '10b3fed2d67b3a1f487d2d95c9a603fcbc23f08d4528d1986a6d0010c9e466bc'
'48f37525c7066b0119b10981ae59139189ca3423db6bd14da6e064065d5d3016' '48f37525c7066b0119b10981ae59139189ca3423db6bd14da6e064065d5d3016'
'e77263fd4c7d40972ce61ce353438ee1e0a4d0771c9014aeded001c6a2301d17' 'e77263fd4c7d40972ce61ce353438ee1e0a4d0771c9014aeded001c6a2301d17'
@ -58,6 +62,12 @@ prepare() {
patch -p1 -d src/3rdparty/chromium/third_party/skia -i "$srcdir"/skia-harfbuzz-3.0.0.patch patch -p1 -d src/3rdparty/chromium/third_party/skia -i "$srcdir"/skia-harfbuzz-3.0.0.patch
patch -p1 -i "$srcdir"/qt5-webengine-glibc-2.33.patch # Fix text rendering when building with glibc 2.33 patch -p1 -i "$srcdir"/qt5-webengine-glibc-2.33.patch # Fix text rendering when building with glibc 2.33
patch -p1 -i "$srcdir"/qt5-webengine-python3.patch # Fix build with Python 3
patch -p1 -d src/3rdparty -i "$srcdir"/qt5-webengine-chromium-python3.patch
# Update catapult for python3 compatibility
rm -r src/3rdparty/chromium/third_party/catapult
mv "$srcdir"/catapult src/3rdparty/chromium/third_party
cd "$srcdir/$_pkgfqn/src/3rdparty" cd "$srcdir/$_pkgfqn/src/3rdparty"
patch -p1 -i ${srcdir}/0001-ARM-toolchain-fixes.patch patch -p1 -i ${srcdir}/0001-ARM-toolchain-fixes.patch

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,150 @@
diff --git a/configure.pri b/configure.pri
index e072961f..5efe30bc 100644
--- a/configure.pri
+++ b/configure.pri
@@ -12,10 +12,6 @@ defineTest(isPythonVersionSupported) {
python_version ~= s/[()]//g
python_version = $$split(python_version, ',')
python_major_version = $$first(python_version)
- greaterThan(python_major_version, 2) {
- qtLog("Python version 3 is not supported by Chromium.")
- return(false)
- }
python_minor_version = $$member(python_version, 1)
python_patch_version = $$member(python_version, 2)
greaterThan(python_major_version, 1): greaterThan(python_minor_version, 6): greaterThan(python_patch_version, 4): return(true)
@@ -52,10 +48,10 @@ defineTest(qtConfReport_jumboBuild) {
qtConfReportPadded($${1}, $$mergeLimit)
}
-defineTest(qtConfTest_detectPython2) {
- python = $$qtConfFindInPath("python2$$EXE_SUFFIX")
+defineTest(qtConfTest_detectPython) {
+ python = $$qtConfFindInPath("python$$EXE_SUFFIX")
isEmpty(python) {
- qtLog("'python2$$EXE_SUFFIX' not found in PATH. Checking for 'python$$EXE_SUFFIX'.")
+ qtLog("'python$$EXE_SUFFIX' not found in PATH. Checking for 'python$$EXE_SUFFIX'.")
python = $$qtConfFindInPath("python$$EXE_SUFFIX")
}
isEmpty(python) {
@@ -63,11 +59,11 @@ defineTest(qtConfTest_detectPython2) {
return(false)
}
!isPythonVersionSupported($$python) {
- qtLog("A suitable Python 2 executable could not be located.")
+ qtLog("A suitable Python executable could not be located.")
return(false)
}
- # Make tests.python2.location available in configure.json.
+ # Make tests.python.location available in configure.json.
$${1}.location = $$clean_path($$python)
export($${1}.location)
$${1}.cache += location
diff --git a/mkspecs/features/functions.prf b/mkspecs/features/functions.prf
index 2750d707..9fda13d0 100644
--- a/mkspecs/features/functions.prf
+++ b/mkspecs/features/functions.prf
@@ -39,11 +39,11 @@ defineReplace(which) {
# Returns the unquoted path to the python executable.
defineReplace(pythonPath) {
- isEmpty(QMAKE_PYTHON2) {
+ isEmpty(QMAKE_PYTHON) {
# Fallback for building QtWebEngine with Qt < 5.8
- QMAKE_PYTHON2 = python
+ QMAKE_PYTHON = python
}
- return($$QMAKE_PYTHON2)
+ return($$QMAKE_PYTHON)
}
# Returns the python executable for use with shell / make targets.
diff --git a/src/buildtools/config/support.pri b/src/buildtools/config/support.pri
index e7f869a1..1bf2c5d7 100644
--- a/src/buildtools/config/support.pri
+++ b/src/buildtools/config/support.pri
@@ -21,7 +21,7 @@ defineReplace(qtwebengine_checkWebEngineCoreError) {
!qtwebengine_checkForGperf(QtWebEngine):return(false)
!qtwebengine_checkForBison(QtWebEngine):return(false)
!qtwebengine_checkForFlex(QtWebEngine):return(false)
- !qtwebengine_checkForPython2(QtWebEngine):return(false)
+ !qtwebengine_checkForPython(QtWebEngine):return(false)
!qtwebengine_checkForNodejs(QtWebEngine):return(false)
!qtwebengine_checkForSanitizer(QtWebEngine):return(false)
linux:!qtwebengine_checkForPkgCfg(QtWebEngine):return(false)
@@ -51,7 +51,7 @@ defineReplace(qtwebengine_checkPdfError) {
!qtwebengine_checkForGperf(QtPdf):return(false)
!qtwebengine_checkForBison(QtPdf):return(false)
!qtwebengine_checkForFlex(QtPdf):return(false)
- !qtwebengine_checkForPython2(QtPdf):return(false)
+ !qtwebengine_checkForPython(QtPdf):return(false)
!qtwebengine_checkForSanitizer(QtPdf):return(false)
linux:!qtwebengine_checkForPkgCfg(QtPdf):return(false)
linux:!qtwebengine_checkForHostPkgCfg(QtPdf):return(false)
@@ -143,10 +143,10 @@ defineTest(qtwebengine_checkForFlex) {
return(true)
}
-defineTest(qtwebengine_checkForPython2) {
+defineTest(qtwebengine_checkForPython) {
module = $$1
- !qtConfig(webengine-python2) {
- qtwebengine_skipBuild("Python version 2 (2.7.5 or later) is required to build $${module}.")
+ !qtConfig(webengine-python) {
+ qtwebengine_skipBuild("Python is required to build $${module}.")
return(false)
}
return(true)
diff --git a/src/buildtools/configure.json b/src/buildtools/configure.json
index 88d1790c..032aa665 100644
--- a/src/buildtools/configure.json
+++ b/src/buildtools/configure.json
@@ -295,9 +295,9 @@
"label": "system ninja",
"type": "detectNinja"
},
- "webengine-python2": {
- "label": "python2",
- "type": "detectPython2",
+ "webengine-python": {
+ "label": "python",
+ "type": "detectPython",
"log": "location"
},
"webengine-winversion": {
@@ -374,7 +374,7 @@
&& features.webengine-gperf
&& features.webengine-bison
&& features.webengine-flex
- && features.webengine-python2
+ && features.webengine-python
&& features.webengine-nodejs
&& (!config.sanitizer || features.webengine-sanitizer)
&& (!config.linux || features.pkg-config)
@@ -400,7 +400,7 @@
&& features.webengine-gperf
&& features.webengine-bison
&& features.webengine-flex
- && features.webengine-python2
+ && features.webengine-python
&& (!config.sanitizer || features.webengine-sanitizer)
&& (!config.linux || features.pkg-config)
&& (!config.linux || features.webengine-host-pkg-config)
@@ -423,12 +423,12 @@
"autoDetect": "features.private_tests",
"output": [ "privateFeature" ]
},
- "webengine-python2": {
- "label": "python2",
- "condition": "tests.webengine-python2",
+ "webengine-python": {
+ "label": "python",
+ "condition": "tests.webengine-python",
"output": [
"privateFeature",
- { "type": "varAssign", "name": "QMAKE_PYTHON2", "value": "tests.webengine-python2.location" }
+ { "type": "varAssign", "name": "QMAKE_PYTHON", "value": "tests.webengine-python.location" }
]
},
"webengine-gperf": {