jobextra/webkit2gtk-4.1/PKGBUILD

119 lines
4 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.0
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})
# 0001-Fix-build-of-SourceBrush.cpp.patch)
prepare() {
cd webkitgtk-$pkgver
# Fix build with GCC 13
# Backport of https://github.com/WebKit/WebKit/commit/93920b55f52ff8b883296f4845269e2ed746acb3
# patch -Np1 -i ../0001-Fix-build-of-SourceBrush.cpp.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>
b2sums=('afaaef8482fe81645eee55be86a80fb51eff83dc000ac0dc5981d41810b5c72c59428d8e92a02c04718c0367ac19689501c81764f9603b767d7271ad9cd66075'
'SKIP')
sha256sums=(828f95935861fae583fb8f2ae58cf64c63c178ae2b7c2d6f73070813ad64ed1b # webkitgtk-2.42.0.tar.xz
c1f8f6fd2c558296205cd48c471fd0fce7caad55f69e8cecd48be4edd22ad3a2) # webkitgtk-2.42.0.tar.xz.asc
## 8bccc96999602992f3b0ce18b4b9c76537e412670216e47013eb75a3f9b25e1a webkit2gtk-4.1-2.42.0-01-x86_64.pkg.tar.lz