added extra/webkitgtk-6.0

This commit is contained in:
Kevin Mihelich 2023-10-16 01:16:15 +00:00
parent 91d983c582
commit 60fd93e0b0
4 changed files with 361 additions and 0 deletions

View file

@ -0,0 +1,139 @@
pkgbase = webkitgtk-6.0
pkgdesc = Web content engine for GTK
pkgver = 2.42.1
pkgrel = 1
url = https://webkitgtk.org
arch = x86_64
license = custom
makedepends = clang
makedepends = cmake
makedepends = gi-docgen
makedepends = gobject-introspection
makedepends = gperf
makedepends = gst-plugins-bad
makedepends = lld
makedepends = ninja
makedepends = python
makedepends = ruby
makedepends = systemd
makedepends = unifdef
makedepends = wayland-protocols
depends = at-spi2-core
depends = atk
depends = bubblewrap
depends = cairo
depends = enchant
depends = fontconfig
depends = freetype2
depends = glib2
depends = gst-plugins-bad-libs
depends = gst-plugins-base-libs
depends = gstreamer
depends = gtk4
depends = harfbuzz
depends = harfbuzz-icu
depends = hyphen
depends = icu
depends = libavif
depends = libdrm
depends = libegl
depends = libepoxy
depends = libgcrypt
depends = libgl
depends = libgles
depends = libjpeg
depends = libjxl
depends = libmanette
depends = libpng
depends = libseccomp
depends = libsecret
depends = libsoup3
depends = libsystemd
depends = libtasn1
depends = libwebp
depends = libwpe
depends = libx11
depends = libxcomposite
depends = libxml2
depends = libxslt
depends = libxt
depends = mesa
depends = openjpeg2
depends = sqlite
depends = wayland
depends = woff2
depends = wpebackend-fdo
depends = xdg-dbus-proxy
depends = zlib
source = https://webkitgtk.org/releases/webkitgtk-2.42.1.tar.xz
source = https://webkitgtk.org/releases/webkitgtk-2.42.1.tar.xz.asc
source = webkitgtk-MiniBrowser-fullscreen.patch::https://github.com/WebKit/WebKit/commit/e07345343415dd2496edc721daa61a3b42703131.patch
validpgpkeys = D7FCF61CF9A2DEAB31D81BD3F3D322D0EC4582C3
validpgpkeys = 5AA3BC334FD7E3369E7C77B291C559DBE4C9123B
sha256sums = 6f41fac9989d3ee51c08c48de1d439cdeddecbc757e34b6180987d99b16d2499
sha256sums = SKIP
sha256sums = a921d6be1303e9f23474971f381886fd291ec5bb1a7ff1e85acede8cfb88bef2
b2sums = c6453cf2d15661507df66c5478e7675217b62d9579cf9b9408cb3e4fa1a8405c5c2608edf0960baed62aafa766e6cdbe2f0c07e8fb728d86c111f12d5a816492
b2sums = SKIP
b2sums = d440d82c769f1b35caf5464dc850cdf1c896224205c90c17d8b0a44aee62e4b1383e11306936aaca067fde8836770d346d5122d7b05c91a5c7c1741c89c65e2f
pkgname = webkitgtk-6.0
depends = at-spi2-core
depends = atk
depends = bubblewrap
depends = cairo
depends = enchant
depends = fontconfig
depends = freetype2
depends = glib2
depends = gst-plugins-bad-libs
depends = gst-plugins-base-libs
depends = gstreamer
depends = gtk4
depends = harfbuzz
depends = harfbuzz-icu
depends = hyphen
depends = icu
depends = libavif
depends = libdrm
depends = libegl
depends = libepoxy
depends = libgcrypt
depends = libgl
depends = libgles
depends = libjpeg
depends = libjxl
depends = libmanette
depends = libpng
depends = libseccomp
depends = libsecret
depends = libsoup3
depends = libsystemd
depends = libtasn1
depends = libwebp
depends = libwpe
depends = libx11
depends = libxcomposite
depends = libxml2
depends = libxslt
depends = libxt
depends = mesa
depends = openjpeg2
depends = sqlite
depends = wayland
depends = woff2
depends = wpebackend-fdo
depends = xdg-dbus-proxy
depends = zlib
depends = libWPEBackend-fdo-1.0.so
depends = libwpe-1.0.so
optdepends = geoclue: Geolocation support
optdepends = gst-libav: nonfree media decoding
optdepends = gst-plugins-bad: media decoding
optdepends = gst-plugins-good: media decoding
provides = libjavascriptcoregtk-6.0.so
provides = libwebkitgtk-6.0.so
pkgname = webkitgtk-6.0-docs
pkgdesc = Web content engine for GTK (documentation)
depends =

View file

@ -0,0 +1,178 @@
# Maintainer: Jan Alexander Steffens (heftig) <heftig@archlinux.org>
# Contributor: Eric Bélanger <eric@archlinux.org>
# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
# - build with gcc instead of clang
# - disable neon for v7
pkgbase=webkitgtk-6.0
pkgname=(
webkitgtk-6.0
webkitgtk-6.0-docs
)
pkgver=2.42.1
pkgrel=1
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
gtk4
harfbuzz
harfbuzz-icu
hyphen
icu
libavif
libdrm
libegl
libepoxy
libgcrypt
libgl
libgles
libjpeg
libjxl
libmanette
libpng
libseccomp
libsecret
libsoup3
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}
webkitgtk-MiniBrowser-fullscreen.patch::https://github.com/WebKit/WebKit/commit/e07345343415dd2496edc721daa61a3b42703131.patch
)
sha256sums=('6f41fac9989d3ee51c08c48de1d439cdeddecbc757e34b6180987d99b16d2499'
'SKIP'
'a921d6be1303e9f23474971f381886fd291ec5bb1a7ff1e85acede8cfb88bef2')
b2sums=('c6453cf2d15661507df66c5478e7675217b62d9579cf9b9408cb3e4fa1a8405c5c2608edf0960baed62aafa766e6cdbe2f0c07e8fb728d86c111f12d5a816492'
'SKIP'
'd440d82c769f1b35caf5464dc850cdf1c896224205c90c17d8b0a44aee62e4b1383e11306936aaca067fde8836770d346d5122d7b05c91a5c7c1741c89c65e2f')
validpgpkeys=(
'D7FCF61CF9A2DEAB31D81BD3F3D322D0EC4582C3' # Carlos Garcia Campos <cgarcia@igalia.com>
'5AA3BC334FD7E3369E7C77B291C559DBE4C9123B' # Adrián Pérez de Castro <aperez@igalia.com>
)
prepare() {
cd webkitgtk-$pkgver
patch -Np1 < ../webkitgtk-MiniBrowser-fullscreen.patch
if [[ $CARCH == "armv7h" ]]; then
sed -i '/#define WTF_CPU_ARM_NEON 1/d' Source/WTF/wtf/PlatformCPU.h
fi
}
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_GTK4=ON
-DENABLE_DOCUMENTATION=ON
-DENABLE_MINIBROWSER=ON
)
# 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'
[[ $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_webkitgtk-6.0() {
depends+=(
libWPEBackend-fdo-1.0.so
libwpe-1.0.so
)
provides+=(
libjavascriptcoregtk-6.0.so
libwebkitgtk-6.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
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_webkitgtk-6.0-docs() {
pkgdesc+=" (documentation)"
depends=()
mv doc/* "$pkgdir"
}
# vim:set sw=2 sts=-1 et:

View file

@ -0,0 +1,21 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----
mQGiBEhD/gURBADY9/zG24BcSOkrarNtDlMqTM1Mc22gBlpVs3IyGwiYFy1f+NYL
0CwgO6JsJPF0BsrLtZ0jO7SCUOnq1lQ/XA3Ecttp9Fc7p7qRoDX4okC72PFGOtth
fnnkAaFe4d2LYIXs6ZPbuH4x7sDnEDcK2ceJvNXFIRjF8XnOglpN3pmI+wCggRxa
VFsAYh/xbm5/UYSDyJDqCH0EALjkCl4l5kGVA+5ZQgtuvLNrHyOIAX35pwE4fKby
krpM7DP0YooNnXzENOPvOB4WlhW8dAAt2EuQspvmJieeevE//DcgAhYVZBlzNnQq
Z3yPbJY4ucQy9KU5hyP6GLul+80KThhJZRAiCnjSQf8H3Ij7sEwLkSAmg1MIyPF7
OShABAC42FzEpsyW6+SX7c6FNYB5ZgsgEESq6nTiCJ77Tqe5CrOqNplpNqrw/knI
GgSEsxmXNEhBvXCjCH4CDDGPXVuqXpHB/E38JW75irXVVSr47iTx0XaBRzGLcHyM
gT1b/yYCl10FV/47u8XaOP0BP9cQ2A9PY/vRTKRDNbe4plJSRbQsQWRyacOhbiBQ
w6lyZXogZGUgQ2FzdHJvIDxhcGVyZXpAaWdhbGlhLmNvbT6IgQQTEQoAQQIbIwIe
AQIXgAIZAQULCQgHAwUVCgkICwUWAgMBABYhBFqjvDNP1+M2nnx3spHFWdvkyRI7
BQJeuoBnBQkaOOliAAoJEJHFWdvkyRI7lAsAn0EYqK753vXGH0fQGi30hnLUTbo7
AJ4gi/3tS5RXrokUBWt//IhPrkUSBrQ+QWRyacOhbiBQw6lyZXogZGUgQ2FzdHJv
IChwZXJzb25hbCkgPGFkcmlhbkBwZXJlemRlY2FzdHJvLm9yZz6IfgQTEQoAPgIb
IwIeAQIXgAULCQgHAwUVCgkICwUWAgMBABYhBFqjvDNP1+M2nnx3spHFWdvkyRI7
BQJeuoBuBQkaOOliAAoJEJHFWdvkyRI7PlsAn0kzehBht+bqJ9IVW08hfq3dNirm
AJsHuPgQnz2Zm43XDUf6Re8vaoxlxQ==
=tAiD
-----END PGP PUBLIC KEY BLOCK-----

View file

@ -0,0 +1,23 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----
mQGiBEy4Qy4RBACevATwAKdArGO2UjVGsP3nb3BWLfB9KR5hbpuL5yejUoR6xeN4
vsw1/fy9fiGlsLGqlmnd6bDZ6c7mNyc0ERXXGk2QOQEMeDyL6VsoZEbo5t8bZa6B
Pxc23C9L4d0bdNF7y0CoO7xsg1zClq23MXWAgi4Wm+ZDonw+b2UBcCt/uwCg9AST
/g8XgNKZ4WxpRI4bM/1BvxUD/2xeJkUjgmdwV14dOdHmsW7BYJHUKxAt9KBSJ5Yo
ZDCmh6HTtUjd9dKwkuRTxtc3G4s+J5D5WCeNKQ/kNAYAoclzXYc2crTrXZ+RqWap
G+ngUZxgnyNAaveyUjV19qDRJKVuzBXeQWH/UU5eEpuRfx7ReyFX7sAhDOmnVrvg
IoegA/0SNS+wsGjYxpWOO1QMsqGidgIp5yLanfA7qsfxz8t+gGtXOSqomUJsYyYX
a0c2kXl3ZPe/cyK6j9o+l4YrczkNAxeXVJd4uA4sSrqmKI1F7cICV3EqJ5uyKWll
eW/sfhKNcPiadBZr9LNS1775jWM3pNxszZrjCnTfspn0gyGTbLQpQ2FybG9zIEdh
cmNpYSBDYW1wb3MgPGNnYXJjaWFAaWdhbGlhLmNvbT6IYgQTEQIAIgUCTLhDLgIb
AwYLCQgHAwIGFQgCCQoLBBYCAwECHgECF4AACgkQ89Mi0OxFgsO7aQCgyouexI5L
4PxyZlCgucZj2UGUI1kAn2Lh4CPgaCa7kno1aArSFzzdVRnhuQENBEy4Qy4QBADZ
F1vw6zV7ZKGg8Ipfi0ASbDRVzHdr4wdoiNbFGKXykwi3PRuolrSTd+970u0MNX30
ZmfOTk/cidymaBd0RyVnwmPgnoRxZpKhMnFrlxRYtukUHyYDeFwM376ux1TXNWwG
sxZ3RmENWyoAs8GK3vIYhaqC22qxS1SfjMn1eueonwADBQQAnLZte7R5TK0j5L1K
/JJc82JOkdjlF6ORS+hxHqlITmRevmo5zcvBMfCjH98y5yGVHciQ/Pp+AC+hI7n0
r2B+HO7/M+fzub4mJpgsrdGLebwFOOMuJQCzU/vm2O+ni9RfhKGxj6j5ibVzW/Xg
dxDF7ffwmiqAWJrzUGtIBKRw372ISQQYEQIACQUCTLhDLgIbDAAKCRDz0yLQ7EWC
w/ohAJ9TForRmpOoZQn8nC82lvjLnl8yJwCfePN1wgFlZu2kkHP4d0fJ2LN6whM=
=HKDK
-----END PGP PUBLIC KEY BLOCK-----