# Contributor: Rasmus Thomsen # Maintainer: Pablo Correa Gomez pkgname=gtk4.0 pkgver=4.8.3 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 fix-crash-gtk-synthesize.patch " builddir="$srcdir/gtk-$pkgver" build() { CFLAGS="$CFLAGS -O2" \ abuild-meson \ -Dgtk_doc=true \ -Dbroadway-backend=true \ -Dman-pages=true \ -Dbuild-tests=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=" 56be0f5ce85a9cbbda4a5de53baeeb6b8cc527a5d34723ae5548759ec7c28f03d204b6b6758dffed02a9e226f3bfcd1f15971105c2f2f7be7cef22538be27754 gtk-4.8.3.tar.xz a3cc4131b12c5de71e894796222b60f620fbdfa23942c0399d6fb378f0c0f12dbb40daf2405bc653b771804e637bb82bdc2216e78a24ffa1fe7c0a489781661c fix-crash-gtk-synthesize.patch "