blob: 716b19f5d2efcf7b8d9a8caf47c5221de3dc0cb7 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
|
# Contributor: Rasmus Thomsen <oss@cogitri.dev>
# Contributor: Sergei Lukin <sergej.lukin@gmail.com>
# Contributor: Jiri Horner <laeqten@gmail.com>
# Maintainer: knuxify <knuxify@gmail.com>
pkgname=webkit2gtk-5.0
pkgver=2.38.0
pkgrel=0
pkgdesc="Portable web rendering engine WebKit for GTK+ - GTK4 version"
url="https://webkitgtk.org/"
# s390x: no desktop
# riscv64: relocation R_RISCV_PCREL_HI20 cannot be used against symbol 'g_config'; recompile with -fPIC
arch="all !s390x !riscv64"
license="LGPL-2.0-or-later AND BSD-2-Clause"
depends="bubblewrap xdg-dbus-proxy dbus:org.freedesktop.Secrets"
makedepends="
bison
clang
cmake
enchant2-dev
flex
geoclue-dev
gnutls-dev
gobject-introspection-dev
gperf
gst-plugins-bad-dev
gst-plugins-base-dev
gstreamer-dev
gtk4.0-dev
hyphen-dev
icu-dev
lcms2-dev
libgcrypt-dev
libjpeg-turbo-dev
libmanette-dev
libpng-dev
libseccomp-dev
libsecret-dev
libsoup3-dev
libwebp-dev
libwpe-dev
libwpebackend-fdo-dev
libxcomposite-dev
libxml2-dev
libxslt-dev
libxt-dev
lld
llvm
mesa-dev
openjpeg-dev
pango-dev
python3
ruby
samurai
sqlite-dev
woff2-dev
"
options="!check" # upstream doesn't package them in release tarballs: Tools/Scripts/run-gtk-tests: Command not found
subpackages="$pkgname-dev $pkgname-lang $pkgname-dbg"
source="https://webkitgtk.org/releases/webkitgtk-$pkgver.tar.xz"
builddir="$srcdir/webkitgtk-$pkgver"
# secfixes:
# 2.36.5-r0:
# - CVE-2022-2294
# - CVE-2022-32792
# - CVE-2022-32816
# 2.36.4-r0:
# - CVE-2022-22677
# - CVE-2022-22710
build() {
case "$CARCH" in
armv7)
# clang fails to build armv7 only due to some NEON related thing.
# https://github.com/WebKit/WebKit/pull/1233 should fix it
# armhf: hangs
export CXXFLAGS="$CXXFLAGS -U_FORTIFY_SOURCE"
;;
*)
# the debug symbols become 1/2 the size, and actual webkit becomes
# smaller too.
export CC=clang
export CXX=clang++
export LDFLAGS="$LDFLAGS -fuse-ld=lld"
;;
esac
case "$CARCH" in
arm*|aarch64|s390x|riscv64)
# arm: seemingly broken?
# s390x/riscv64: no lld
;;
*)
local lto="-DLTO_MODE=thin"
;;
esac
# significantly reduce debug symbol size
export CFLAGS="$CFLAGS -g1"
export CXXFLAGS="$CXXFLAGS -g1"
cmake -B build -G Ninja \
-DPORT=GTK \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_SKIP_RPATH=ON \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib \
-DENABLE_DOCUMENTATION=OFF \
-DENABLE_JOURNALD_LOG=OFF \
-DENABLE_SAMPLING_PROFILER=OFF \
-DENABLE_MINIBROWSER=ON \
-DUSE_GTK4=ON \
$lto
cmake --build build
}
check() {
ninja -C build check
}
package() {
DESTDIR="$pkgdir" cmake --install build
mv "$pkgdir"/usr/bin/WebKitWebDriver "$pkgdir"/usr/bin/WebKitWebDriver-5.0
}
sha512sums="
8380d11eedec3c4eedf3a0f5591fd279ee42b28a38aaa13d7eb88f8a004cbe8aac7dc8f19409440e5c1272ad1555a781f1242bca6c89beed2dc5fd2de5f3d525 webkitgtk-2.38.0.tar.xz
"
|