# Contributor: Rasmus Thomsen # Maintainer: Pablo Correa Gomez pkgname=gtk4.0 pkgver=4.10.0 pkgrel=1 pkgdesc="The GTK Toolkit (v4)" url="https://www.gtk.org/" install="$pkgname.post-install $pkgname.post-upgrade $pkgname.post-deinstall" arch="all" options="!check" # Test suite is known to fail upstream license="LGPL-2.1-or-later" subpackages="$pkgname-dbg $pkgname-demo $pkgname-dev $pkgname-doc $pkgname-lang" depends="shared-mime-info gtk-update-icon-cache tzdata iso-codes" depends_dev=" at-spi2-core-dev gdk-pixbuf-dev glib-dev libepoxy-dev libxext-dev libxi-dev libxinerama-dev libxkbcommon-dev vulkan-headers wayland-dev wayland-protocols " makedepends=" $depends_dev cairo-dev colord-dev cups-dev expat-dev fontconfig-dev gettext-dev gi-docgen gnutls-dev gobject-introspection-dev graphene-dev gst-plugins-bad-dev gstreamer-dev gtk-doc>=1.33 iso-codes-dev libice-dev libx11-dev libxcomposite-dev libxcursor-dev libxdamage-dev libxfixes-dev libxrandr-dev meson pango-dev perl py3-docutils sassc tiff-dev vulkan-loader-dev zlib-dev " source="https://download.gnome.org/sources/gtk/${pkgver%.*}/gtk-$pkgver.tar.xz $pkgname-4.10-wlroots-crash.patch::https://gitlab.gnome.org/GNOME/gtk/-/commit/51902bbce8f93060af8dc8b91199a66c75a29315.patch $pkgname-4.10-fix-combobox.patch::https://gitlab.gnome.org/GNOME/gtk/-/commit/5822ba76d0edadec80921cf698e215e25c2cc532.patch " builddir="$srcdir/gtk-$pkgver" build() { CFLAGS="$CFLAGS -O2" \ abuild-meson \ -Dgtk_doc=true \ -Dintrospection=enabled \ -Dbroadway-backend=true \ -Dman-pages=true \ -Dbuild-tests=false \ -Dbuild-testsuite=false \ . output meson compile ${JOBS:+-j ${JOBS}} -C output } package() { DESTDIR="$pkgdir" meson install --no-rebuild -C output # use gtk-update-icon-cache from gtk+2.0 for now. The icon cache is forward # compatible so this is fine. # do the same for gtk4-update-icon-cache rm -f "$pkgdir"/usr/bin/gtk-update-icon-cache rm -f "$pkgdir"/usr/bin/gtk4-update-icon-cache rm -f "$pkgdir"/usr/share/man/man1/gtk-update-icon-cache.1 } demo() { pkgdesc="$pkgdesc (demonstration application)" amove \ usr/bin/gtk4-demo \ usr/bin/gtk4-demo-application \ usr/bin/gtk4-icon-browser \ usr/bin/gtk4-node-editor \ usr/bin/gtk4-print-editor \ usr/bin/gtk4-widget-factory \ usr/share/applications/org.gtk.Demo4.desktop \ usr/share/applications/org.gtk.IconBrowser4.desktop \ usr/share/applications/org.gtk.PrintEditor4.desktop \ usr/share/applications/org.gtk.WidgetFactory4.desktop \ usr/share/applications/org.gtk.gtk4.NodeEditor.desktop \ usr/share/glib-2.0/schemas/org.gtk.Demo4.gschema.xml \ usr/share/gtk-4.0/gtk4builder.rng \ usr/share/icons \ usr/share/metainfo } dev() { default_dev amove \ usr/bin/gtk4-builder-tool \ usr/bin/gtk4-encode-symbolic-svg \ usr/bin/gtk4-query-settings \ usr/share/gtk-4.0/valgrind } lang() { default_lang # These are some localized emoji labels. amove usr/share/gtk-4.0/emoji } sha512sums=" 1283985ed64035e3b183cccc341dd38029112e8277065f8b39be56b4f489aaf03efc0ce5f9c36ddd746a776be3772f7606f1c54fd84292479d63d86b94281159 gtk-4.10.0.tar.xz 40657941e0561d747742c0fc5c5b445aec4054d62e6f6caa766588858f91d67910b2d2635bedf174267fd04837e9e89aa3718d67707822b30fdabec4c005716c gtk4.0-4.10-wlroots-crash.patch f65e91357282d584fd35aefc887ee1edae003bd88470cf1205331780ac1ffefc27d5dd91c66bead01a08cb64fc725eb83523386ddb1325f23b6e80d0e964def8 gtk4.0-4.10-fix-combobox.patch "