archrelease: copy trunk to extra-x86_64
[arch-packages.git] / webkit2gtk-4.1 / trunk / PKGBUILD
blob1ff06380f8cdfdb3e2114a8e5eb16b23142bdfb3
1 # Maintainer: Jan Alexander Steffens (heftig) <heftig@archlinux.org>
2 # Contributor: Eric Bélanger <eric@archlinux.org>
4 pkgbase=webkit2gtk-4.1
5 pkgname=(
6   webkit2gtk-4.1
7   webkit2gtk-4.1-docs
9 pkgver=2.40.1
10 pkgrel=2
11 pkgdesc="Web content engine for GTK"
12 url="https://webkitgtk.org"
13 arch=(x86_64)
14 license=(custom)
15 depends=(
16   at-spi2-core
17   atk
18   bubblewrap
19   cairo
20   enchant
21   fontconfig
22   freetype2
23   glib2
24   gst-plugins-bad-libs
25   gst-plugins-base-libs
26   gstreamer
27   gtk3
28   harfbuzz
29   harfbuzz-icu
30   hyphen
31   icu
32   libavif
33   libdrm
34   libegl
35   libepoxy
36   libgcrypt
37   libgl
38   libgles
39   libjpeg
40   libmanette
41   libpng
42   libseccomp
43   libsecret
44   libsoup3
45   libsystemd
46   libtasn1
47   libwebp
48   libwpe
49   libx11
50   libxcomposite
51   libxml2
52   libxslt
53   libxt
54   mesa
55   openjpeg2
56   sqlite
57   wayland
58   woff2
59   wpebackend-fdo
60   xdg-dbus-proxy
61   zlib
63 makedepends=(
64   cmake
65   gi-docgen
66   gobject-introspection
67   gperf
68   gst-plugins-bad
69   ninja
70   python
71   ruby
72   systemd
73   unifdef
74   wayland-protocols
76 source=(
77   $url/releases/webkitgtk-$pkgver.tar.xz{,.asc}
78   0001-Fix-build-of-SourceBrush.cpp.patch
80 sha256sums=('64e526984f8cd2161ef03ae949af99c002ff333d615e6386b460164a3c1b7ef6'
81             'SKIP'
82             'ad3191d494647a33f48fa2b0eb2f0ed9035571a01909d009764960029cac4092')
83 b2sums=('b50c983eafdb215e62e1509873691bc3f932c8b5daf0ceeaefc041d3bc6c5ff804f25af5f761837a3f37df07c1c598f5984e40b116e70a3523d508d13594dc4d'
84         'SKIP'
85         'aa01aacc2f58f0634370472a001ddf01f84ce2d603ed5352138e63b786ec4e6a99429eb0d00d7fd893ac9c46b90fd5f0ed49c916cd124cc7d78e6dbb6a1a9386')
86 validpgpkeys=(
87   'D7FCF61CF9A2DEAB31D81BD3F3D322D0EC4582C3'  # Carlos Garcia Campos <cgarcia@igalia.com>
88   '5AA3BC334FD7E3369E7C77B291C559DBE4C9123B'  # Adrián Pérez de Castro <aperez@igalia.com>
91 prepare() {
92   cd webkitgtk-$pkgver
94   # Fix build with GCC 13
95   # Backport of https://github.com/WebKit/WebKit/commit/93920b55f52ff8b883296f4845269e2ed746acb3
96   patch -Np1 -i ../0001-Fix-build-of-SourceBrush.cpp.patch
99 build() {
100   local cmake_options=(
101     -DPORT=GTK
102     -DCMAKE_BUILD_TYPE=Release
103     -DCMAKE_INSTALL_PREFIX=/usr
104     -DCMAKE_INSTALL_LIBDIR=lib
105     -DCMAKE_INSTALL_LIBEXECDIR=lib
106     -DCMAKE_SKIP_RPATH=ON
107     -DUSE_AVIF=ON
108     -DUSE_SOUP2=OFF
109     -DENABLE_DOCUMENTATION=ON
110     -DENABLE_MINIBROWSER=ON
111   )
113   # Produce minimal debug info: 4.3 GB of debug data makes the
114   # build too slow and is too much to package for debuginfod
115   CFLAGS+=' -g1'
116   CXXFLAGS+=' -g1'
118   cmake -S webkitgtk-$pkgver -B build -G Ninja "${cmake_options[@]}"
119   cmake --build build
122 package_webkit2gtk-4.1() {
123   depends+=(
124     libWPEBackend-fdo-1.0.so
125     libwpe-1.0.so
126   )
127   provides+=(
128     libjavascriptcoregtk-4.1.so
129     libwebkit2gtk-4.1.so
130   )
131   optdepends=(
132     'geoclue: Geolocation support'
133     'gst-libav: nonfree media decoding'
134     'gst-plugins-bad: media decoding'
135     'gst-plugins-good: media decoding'
136   )
138   DESTDIR="$pkgdir" cmake --install build
140   rm -r "$pkgdir/usr/bin"
142   mkdir -p doc/usr/share
143   mv {"$pkgdir",doc}/usr/share/gtk-doc
145   cd webkitgtk-$pkgver
146   find Source -name 'COPYING*' -or -name 'LICENSE*' -print0 | sort -z |
147     while IFS= read -d $'\0' -r _f; do
148       echo "### $_f ###"
149       cat "$_f"
150       echo
151     done |
152     install -Dm644 /dev/stdin "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
155 package_webkit2gtk-4.1-docs() {
156   pkgdesc+=" (documentation)"
157   depends=()
159   mv doc/* "$pkgdir"
162 # vim:set sw=2 sts=-1 et: