jobextra/webkit2gtk-4.1/PKGBUILD

124 lines
4.3 KiB
Bash

#!/usr/bin/bash
# JOBoRun : Jwm OpenBox Obarun RUNit
# Maintainer : Joe Bo Run <joborun@disroot.org>
# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname"
# Website : https://pozol.eu
#-----------------------------------------| DESCRIPTION |---------------------------------------
pkgbase=webkit2gtk-4.1
pkgname=(webkit2gtk-4.1) # webkit2gtk-4.1-docs)
pkgver=2.42.4
pkgrel=01
pkgdesc="Web content engine for GTK w/o systemd"
url="https://webkitgtk.org"
depends=(at-spi2-core atk bubblewrap cairo enchant fontconfig freetype2 glib2
gst-plugins-bad-libs gst-plugins-base-libs gstreamer gtk3 harfbuzz harfbuzz-icu
hyphen icu libavif libdrm libegl libepoxy libgcrypt libgl libgles libjpeg libjxl
libmanette libpng libseccomp libsecret libsoup3 libtasn1 libwebp libwpe
libx11 libxcomposite libxml2 libxslt libxt mesa openjpeg2 sqlite wayland
woff2 wpebackend-fdo xdg-dbus-proxy zlib)
makedepends=(clang cmake gi-docgen gobject-introspection gperf gst-plugins-bad lld ninja
python ruby unifdef wayland-protocols)
source=($url/releases/webkitgtk-$pkgver.tar.xz{,.asc}
GTK-MiniBrowser-should-hide-the-toolbar-when-using-full-screen.patch
GTK-Disable-DMABuf-renderer-for-NVIDIA-proprietary-drivers.patch)
prepare() {
cd webkitgtk-$pkgver
# Requested by eworm
# https://github.com/WebKit/WebKit/pull/17909
patch -Np1 -i ../GTK-MiniBrowser-should-hide-the-toolbar-when-using-full-screen.patch
# https://bugs.archlinux.org/task/79783
# https://github.com/WebKit/WebKit/pull/18614
patch -Np1 -i ../GTK-Disable-DMABuf-renderer-for-NVIDIA-proprietary-drivers.patch
}
build() {
local cmake_options=(
-DPORT=GTK
-DCMAKE_BUILD_TYPE=Release
-DCMAKE_INSTALL_PREFIX=/usr
-DCMAKE_INSTALL_LIBDIR=lib
-DCMAKE_INSTALL_LIBEXECDIR=lib
-DCMAKE_SKIP_RPATH=ON
-DUSE_AVIF=ON
-DUSE_SOUP2=OFF
-DENABLE_DOCUMENTATION=OFF
-DENABLE_MINIBROWSER=ON
-DENABLE_JOURNALD_LOG=OFF
-DENABLE_SYSTEMD=OFF
)
# GCC with LTO fails to link libjavascriptcoregtk
# /usr/bin/ld: /tmp/ccXxyWZV.ltrans0.ltrans.o: in function `ipint_table_size_validate':
# <artificial>:(.text+0x49f0f): undefined reference to `ipint_extern_table_size'
# /usr/bin/ld: /tmp/ccXxyWZV.ltrans0.ltrans.o: in function `ipint_table_fill_validate':
# <artificial>:(.text+0x4a019): undefined reference to `ipint_extern_table_fill'
# collect2: error: ld returned 1 exit status
export CC=clang CXX=clang++
LDFLAGS+=" -fuse-ld=lld"
# Produce minimal debug info: 4.3 GB of debug data makes the
# build too slow and is too much to package for debuginfod
CFLAGS+=' -g1'
CXXFLAGS+=' -g1'
cmake -S webkitgtk-$pkgver -B build -G Ninja "${cmake_options[@]}"
cmake --build build
}
package() {
depends+=(libWPEBackend-fdo-1.0.so libwpe-1.0.so)
provides+=(libjavascriptcoregtk-4.1.so libwebkit2gtk-4.1.so)
optdepends=(
'geoclue: Geolocation support'
'gst-libav: nonfree media decoding'
'gst-plugins-bad: media decoding'
'gst-plugins-good: media decoding'
)
DESTDIR="$pkgdir" cmake --install build
rm -r "$pkgdir/usr/bin"
# mkdir -p doc/usr/share
# mv {"$pkgdir",doc}/usr/share/gtk-doc
cd webkitgtk-$pkgver
find Source -name 'COPYING*' -or -name 'LICENSE*' -print0 | sort -z |
while IFS= read -d $'\0' -r _f; do
echo "### $_f ###"
cat "$_f"
echo
done |
install -Dm644 /dev/stdin "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
}
#package_webkit2gtk-4.1-docs() {
# pkgdesc+=" (documentation)"
# depends=()
#
# mv doc/* "$pkgdir"
#}
#---- arch license gpg-key & sha256sums ----
arch=(x86_64)
license=(custom)
validpgpkeys=(D7FCF61CF9A2DEAB31D81BD3F3D322D0EC4582C3 # Carlos Garcia Campos <cgarcia@igalia.com>
5AA3BC334FD7E3369E7C77B291C559DBE4C9123B) # Adrián Pérez de Castro <aperez@igalia.com>
sha256sums=(52288b30bda22373442cecb86f9c9a569ad8d4769a1f97b352290ed92a67ed86 # webkitgtk-2.42.4.tar.xz
4c81a8b90fbdd689bba48c88ee5dcab23ae53931d48e1c69199e71870a5f3185 # webkitgtk-2.42.4.tar.xz.asc
a921d6be1303e9f23474971f381886fd291ec5bb1a7ff1e85acede8cfb88bef2 # GTK-MiniBrowser-should-hide-the-toolbar-when-using-full-screen.patch
655f3b2c96355ac83c4fa1fc6048e3256bbfdbfb9727e1e18c5af12613536206) # GTK-Disable-DMABuf-renderer-for-NVIDIA-proprietary-drivers.patch
## 8b1ae3ae78f61a2ef9aaab7436a5c880174ea336b47a250a2e8f1c20a00d4402 webkit2gtk-4.1-2.42.4-01-x86_64.pkg.tar.lz