# Maintainer: Antonio Rojas # Maintainer: Felix Yan # ALARM: Kevin Mihelich # - patch for chromium GN # - patch for chromium skia # - patch for chromium to run blink bindings generation single threaded # - patch for chromium aw snap on ARM # - restrict job count on v7 - RAM constraints highmem=1 pkgname=qt6-webengine _qtver=6.3.0 pkgver=${_qtver/-/} pkgrel=3 arch=(x86_64) url='https://www.qt.io' license=(GPL3 LGPL3 FDL custom) pkgdesc='Provides support for web applications using the Chromium browser project' depends=(qt6-webchannel qt6-positioning libxcomposite libxrandr libxkbfile libevent snappy nss libxslt minizip ffmpeg re2 libvpx libxtst ttf-font pciutils) makedepends=(cmake ninja python-html5lib gperf jsoncpp qt6-tools pipewire nodejs qt6-websockets) optdepends=('pipewire: WebRTC desktop sharing under Wayland') groups=(qt6) options=(debug) _pkgfn=${pkgname/6-/}-everywhere-src-$_qtver source=(https://download.qt.io/official_releases/qt/${pkgver%.*}/$_qtver/submodules/$_pkgfn.tar.xz qt6-webengine-system-icu.patch::https://code.qt.io/cgit/qt/qtwebengine-chromium.git/patch/?id=75f0f4eb qtbug-103778.patch::https://code.qt.io/cgit/qt/qtwebengine.git/patch/?id=8d0bd4b1 0001-ARM-toolchain-fixes.patch 0002-Run-blink-bindings-generation-single-threaded.patch) sha256sums=('2001b45dd81dcb7ad1bc6cf1aa32f2eca5367a11fed49656053c75676c4d093d' 'ec28b71135f293f624365a50be0c329e396eaa9433655386af146614837e82a2' '28c07aebc9725905d7b569b1eae815fec11f51433a21eab29177a29af67f8552' 'c5d8fc6b3b832a2b4b14c926c36051d7245d5fc37a1c3a54657afd5b5c4ed623' '1a5858dd198dd0db649c55357941c9bfa9ad678b5d4b93121f87fa9f314d4e6e') prepare() { patch -d $_pkgfn/src/3rdparty -p1 < qt6-webengine-system-icu.patch # Fix build with system ICU patch -d $_pkgfn -p1 < qtbug-103778.patch # Fix local->remote navigation cd $_pkgfn if [[ $CARCH == "armv7h" ]]; then export MAKEFLAGS="-j4" export ALARM_NINJA_JOBS="2" fi cd "$srcdir/$_pkgfn/src/3rdparty" patch -p1 -i ${srcdir}/0001-ARM-toolchain-fixes.patch patch -p1 -i ${srcdir}/0002-Run-blink-bindings-generation-single-threaded.patch } build() { cmake -B build -S $_pkgfn -G Ninja \ -DCMAKE_TOOLCHAIN_FILE=/usr/lib/cmake/Qt6/qt.toolchain.cmake \ -DQT_FEATURE_webengine_system_ffmpeg=ON \ -DQT_FEATURE_webengine_system_icu=ON \ -DQT_FEATURE_webengine_system_libevent=ON \ -DQT_FEATURE_webengine_system_libxslt=ON \ -DQT_FEATURE_webengine_proprietary_codecs=ON \ -DQT_FEATURE_webengine_kerberos=ON \ -DQT_FEATURE_webengine_webrtc_pipewire=ON \ -DQT_FEATURE_webengine_full_debug_info=ON cmake --build build } package() { DESTDIR="$pkgdir" cmake --install build install -Dm644 "$srcdir"/${_pkgfn}/src/3rdparty/chromium/LICENSE "$pkgdir"/usr/share/licenses/${pkgname}/LICENSE.chromium }