# Maintainer: Jan Alexander Steffens (heftig) # Contributor: Eric Bélanger # ALARM: Kevin Mihelich # - build v7 with vfpv3, neon is broken highmem=1 pkgbase=webkit2gtk pkgname=( webkit2gtk webkit2gtk-docs ) pkgver=2.40.1 pkgrel=2 pkgdesc="Web content engine for GTK" url="https://webkitgtk.org" arch=(x86_64) license=(custom) 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 libmanette libpng libseccomp libsecret libsoup libsystemd libtasn1 libwebp libwpe libx11 libxcomposite libxml2 libxslt libxt mesa openjpeg2 sqlite wayland woff2 wpebackend-fdo xdg-dbus-proxy zlib ) makedepends=( cmake gi-docgen gobject-introspection gperf gst-plugins-bad ninja python ruby systemd unifdef wayland-protocols ) source=( $url/releases/webkitgtk-$pkgver.tar.xz{,.asc} 0001-Fix-build-of-SourceBrush.cpp.patch ) sha256sums=('64e526984f8cd2161ef03ae949af99c002ff333d615e6386b460164a3c1b7ef6' 'SKIP' 'ad3191d494647a33f48fa2b0eb2f0ed9035571a01909d009764960029cac4092') b2sums=('b50c983eafdb215e62e1509873691bc3f932c8b5daf0ceeaefc041d3bc6c5ff804f25af5f761837a3f37df07c1c598f5984e40b116e70a3523d508d13594dc4d' 'SKIP' 'aa01aacc2f58f0634370472a001ddf01f84ce2d603ed5352138e63b786ec4e6a99429eb0d00d7fd893ac9c46b90fd5f0ed49c916cd124cc7d78e6dbb6a1a9386') validpgpkeys=( 'D7FCF61CF9A2DEAB31D81BD3F3D322D0EC4582C3' # Carlos Garcia Campos '5AA3BC334FD7E3369E7C77B291C559DBE4C9123B' # Adrián Pérez de Castro ) 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=ON -DENABLE_DOCUMENTATION=ON -DENABLE_MINIBROWSER=ON ) # 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' [[ $CARCH == "armv7h" ]] && CFLAGS=`echo $CFLAGS | sed -e 's/neon/vfpv3/'` && CXXFLAGS="$CFLAGS" cmake -S webkitgtk-$pkgver -B build -G Ninja "${cmake_options[@]}" cmake --build build } package_webkit2gtk() { depends+=( libWPEBackend-fdo-1.0.so libwpe-1.0.so ) provides+=( libjavascriptcoregtk-4.0.so libwebkit2gtk-4.0.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-docs() { pkgdesc+=" (documentation)" depends=() mv doc/* "$pkgdir" } # vim:set sw=2 sts=-1 et: