blob: 8061b4d394de25e986066db5f059abd12c8473c1 (
plain)
1 # Description: Small, efficient and fast rendering engine for Web Browsers.
2 # URL: https://www.webkitgtk.org/
3 # Maintainer: Aaron Ball, nullspoon at oper dot io
4 # Depends on: gst-plugins-base gtk4 hyphen icu lcms2 libseccomp libsecret libsoup3 xorg-libxcomposite libwebp libxslt ruby woff2 xorg-libxt gi-docgen openjpeg2 libnotify enchant wpebackend-fdo unifdef libavif bubblewrap xdg-dbus-proxy libjxl
5 # Optional:
6
7 name=webkitgtk-6.0
8 #version=2.42.2 # Stable
9 version=2.43.1 # Unstable
10 release=1
11 source=(https://webkitgtk.org/releases/webkitgtk-${version}.tar.xz
12 pipewire.patch)
13
14 build() {
15 # fail the build if dependencies are not met
16 if [ ! -f /usr/include/harfbuzz/hb-icu.h ]; then
17 printf '\e[1;31mYou need to install icu, then rebuild harfbuzz for webkitgtk to work, quitting...\e[m\n' >&2
18 return 1
19 fi
20
21 # Bug: https://bugs.webkit.org/show_bug.cgi?id=239682
22 # Fix: https://github.com/WebKit/WebKit/pull/5671
23 # Without this, the pipewire socket cannot be accessed because of bubblewrap
24 patch \
25 webkitgtk-${version}/Source/WebKit/UIProcess/Launcher/glib/BubblewrapLauncher.cpp \
26 pipewire.patch
27
28 export CFLAGS='-g1'
29 export CXXFLAGS='-g1'
30
31 cmake -S webkitgtk-${version} -B build -G Ninja \
32 -D CMAKE_INSTALL_PREFIX:PATH=/usr \
33 -D CMAKE_INSTALL_LIBDIR:PATH=/usr/lib \
34 -D CMAKE_INSTALL_LIBEXECDIR:PATH=/usr/lib \
35 -D CMAKE_BUILD_TYPE=Release \
36 -D USE_AVIF=ON \
37 -D PORT=GTK \
38 -D USE_GTK4=ON \
39 -D USE_GSTREAMER_TRANSCODER=OFF \
40 -D USE_LIBBACKTRACE=OFF \
41 -D ENABLE_GAMEPAD=OFF \
42 -D ENABLE_MINIBROWSER=ON \
43 -D ENABLE_JOURNALD_LOG=OFF \
44 -D ENABLE_WAYLAND_TARGET=ON
45
46 cmake --build build
47 DESTDIR=$PKG cmake --install build
48
49 rm -r $PKG/usr/share/locale
50 rm -r $PKG/usr/share/gtk-doc
51 }
|