mirror of
https://github.com/archlinuxarm/PKGBUILDs.git
synced 2024-11-28 22:57:37 +00:00
107 lines
4.3 KiB
Bash
107 lines
4.3 KiB
Bash
# Maintainer: Felix Yan <felixonmars@archlinux.org>
|
|
# Contributor: Andrea Scarpino <andrea@archlinux.org>
|
|
|
|
# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
|
|
# - patch for chromium GN
|
|
# - patch for chromium skia
|
|
# - patch for chromium to run blink bindings generation single threaded
|
|
|
|
buildarch=12
|
|
highmem=1
|
|
|
|
pkgname=qt5-webengine
|
|
_qtver=5.15.6
|
|
pkgver=${_qtver/-/}
|
|
pkgrel=4
|
|
arch=('x86_64')
|
|
url='https://www.qt.io'
|
|
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' 'libxkbfile'
|
|
'libevent' 'snappy' 'nss' 'libxslt' 'minizip' 'ffmpeg' 're2' 'libvpx' 'libxtst' 'ttf-font')
|
|
makedepends=('git' 'python' 'gperf' 'jsoncpp' 'ninja' 'qt5-tools' 'poppler' 'libpipewire02' 'nodejs')
|
|
optdepends=('libpipewire02: WebRTC desktop sharing under Wayland')
|
|
groups=('qt' 'qt5')
|
|
_pkgfqn=qtwebengine
|
|
source=(git+https://code.qt.io/qt/qtwebengine.git#tag=v${pkgver}-lts
|
|
git+https://code.qt.io/qt/qtwebengine-chromium.git
|
|
git+https://chromium.googlesource.com/catapult#commit=5eedfe23148a234211ba477f76fc2ea2e8529189
|
|
chromium-harfbuzz-3.0.0.patch
|
|
skia-harfbuzz-3.0.0.patch
|
|
qt5-webengine-glibc-2.33.patch
|
|
qt5-webengine-python3.patch
|
|
qt5-webengine-chromium-python3.patch
|
|
0001-ARM-toolchain-fixes.patch
|
|
0002-Fix-ARM-skia-ICE.patch
|
|
0003-bind-gen-Support-single_process-flag-in-generate_bin.patch
|
|
0004-Run-blink-bindings-generation-single-threaded.patch
|
|
0005-Fix-sandbox-Aw-snap-for-sycalls-403-and-407.patch)
|
|
sha256sums=('SKIP'
|
|
'SKIP'
|
|
'SKIP'
|
|
'7ce947944a139e66774dfc7249bf7c3069f07f83a0f1b2c1a1b14287a7e15928'
|
|
'dae11dec5088eb1b14045d8c9862801a342609c15701d7c371e1caccf46e1ffd'
|
|
'2294e5390c869963fc58f7bf1ee0a254a3f7fce3ed00c04e34a5f03e2b31b624'
|
|
'45ccf4ff981a26656e5105259f71a3ce386d4a7112cbf09e41cb61615b355435'
|
|
'c15954ab938ec6235c5d9756753773896691a77ff6a5bf7ef183122f5d04f022'
|
|
'412c675fd60e78785e7dfedafa4982d999ea5797c65580d6465e53288ad3000e'
|
|
'64f50a097a69c37ea07ad5ddf01f8342a97a786174382907922d7d22c1d88fc6'
|
|
'56034f14437842e3182252cebbd824f7845affb4af9c2af41de2528ea8cfa02d'
|
|
'9ed3b4d24047061f68b6e94cb616304bb857eec1e2bafe1df686526c35da44e4'
|
|
'5b2024eaf70a6e0fc6227dd63c76b419f74cf815741d6e063847a442590755ce')
|
|
|
|
prepare() {
|
|
mkdir -p build
|
|
|
|
cd ${_pkgfqn}
|
|
git submodule init
|
|
git submodule set-url src/3rdparty "$srcdir"/qtwebengine-chromium
|
|
git submodule set-branch --branch 87-based src/3rdparty
|
|
git submodule update
|
|
|
|
# Fix build with harfbuzz 3.0.0
|
|
patch -p1 -d src/3rdparty/chromium -i "$srcdir"/chromium-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-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"
|
|
patch -p1 -i ${srcdir}/0001-ARM-toolchain-fixes.patch
|
|
patch -p1 -i ${srcdir}/0002-Fix-ARM-skia-ICE.patch
|
|
patch -p1 -i ${srcdir}/0003-bind-gen-Support-single_process-flag-in-generate_bin.patch
|
|
patch -p1 -i ${srcdir}/0004-Run-blink-bindings-generation-single-threaded.patch
|
|
patch -p1 -i ${srcdir}/0005-Fix-sandbox-Aw-snap-for-sycalls-403-and-407.patch
|
|
}
|
|
|
|
build() {
|
|
cd build
|
|
qmake ../${_pkgfqn} -- \
|
|
-proprietary-codecs \
|
|
-system-ffmpeg \
|
|
-webp \
|
|
-spellchecker \
|
|
-webengine-icu \
|
|
-webengine-kerberos \
|
|
-webengine-webrtc-pipewire
|
|
make
|
|
}
|
|
|
|
package() {
|
|
cd build
|
|
make INSTALL_ROOT="$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 -Dm644 "$srcdir"/${_pkgfqn}/src/3rdparty/chromium/LICENSE "$pkgdir"/usr/share/licenses/${pkgname}/LICENSE.chromium
|
|
|
|
# Fix cmake dependency versions
|
|
sed -e "s|$pkgver\ |5.15.2 |" -i "$pkgdir"/usr/lib/cmake/*/*Config.cmake
|
|
}
|