533d08b5d1
Additionally includes the following fixes to unit tests: 1. Adding cantarell-fonts to checkdepends fixed over 100 tests 2. Some reftests were broken by upstream by removing the .ui files[1] 3. UNEXPECTEDPASS of quit-mnemonic.ui is a known "somehow broken" test[2] 4. Fix reftests/icon-effect-missing.ui by adding hicolor-icon-theme to checkdepends [1] https://gitlab.gnome.org/GNOME/gtk/-/commit/93e1f7f1 [2] https://gitlab.gnome.org/GNOME/gtk/-/blob/3.24.31/testsuite/reftests/meson.build#L430
116 lines
3.6 KiB
Bash
116 lines
3.6 KiB
Bash
# Template file for 'gtk+3'
|
|
pkgname=gtk+3
|
|
version=3.24.31
|
|
revision=1
|
|
wrksrc="gtk+-${version}"
|
|
build_style=meson
|
|
build_helper="gir"
|
|
configure_args="
|
|
$(vopt_bool x11 x11_backend)
|
|
$(vopt_bool wayland wayland_backend)
|
|
$(vopt_bool broadway broadway_backend)
|
|
-Dprint_backends=$(vopt_if cups 'cups,')file
|
|
$(vopt_bool cloudproviders)
|
|
-Dcolord=$(vopt_if colord yes no)
|
|
$(vopt_bool gtk_doc)
|
|
-Dman=true
|
|
$(vopt_bool gir introspection)
|
|
"
|
|
conf_files="/etc/gtk-3.0/im-multipress.conf"
|
|
hostmakedepends="gettext-devel glib-devel gtk-doc gtk-update-icon-cache perl
|
|
pkg-config $(vopt_if wayland 'wayland-devel wayland-protocols')"
|
|
makedepends="at-spi2-atk-devel gdk-pixbuf-devel libepoxy-devel pango-devel
|
|
iso-codes $(vopt_if colord 'colord-devel') $(vopt_if cups 'cups-devel')
|
|
$(vopt_if wayland 'libxkbcommon-devel wayland-devel wayland-protocols MesaLib-devel')
|
|
$(vopt_if x11 'libXcursor-devel libXdamage-devel libXext-devel libXinerama-devel libXi-devel libXrandr-devel libXcomposite-devel')
|
|
$(vopt_if cloudproviders 'libcloudproviders-devel')"
|
|
depends="gtk-update-icon-cache adwaita-icon-theme
|
|
librsvg shared-mime-info $(vopt_if x11 'dbus-x11')"
|
|
checkdepends="$depends xvfb-run dbus cantarell-fonts hicolor-icon-theme"
|
|
short_desc="GTK+ toolkit (v3)"
|
|
maintainer="Enno Boland <gottox@voidlinux.org>"
|
|
license="LGPL-2.1-or-later"
|
|
homepage="https://www.gtk.org/"
|
|
distfiles="${GNOME_SITE}/gtk+/${version%.*}/gtk+-${version}.tar.xz"
|
|
checksum=423c3e7fdb4c459ee889e35fd4d71fd2623562541c1041b11c07e5ad1ff10bf9
|
|
_broken_tests="
|
|
a11y/scale-drawvalue
|
|
a11y/menu
|
|
a11y/menubutton
|
|
a11y/menubutton2
|
|
a11y/menubutton3
|
|
a11y/tooltips
|
|
reftests/button-wrapping.ui
|
|
reftests/cellrenderer-pixbuf-stock-rtl.ui
|
|
reftests/symbolic-icon-translucent-color.ui
|
|
reftests/window-height-for-width.ui
|
|
reftests/label-text-shadow-changes-modify-clip.ui
|
|
reftests/toplevel-vs-popup.ui
|
|
reftests/treeview-crash-too-wide.ui
|
|
reftests/quit-mnemonic.ui
|
|
"
|
|
|
|
case "$XBPS_TARGET_MACHINE" in
|
|
i686*) _broken_tests+=" gtk/cellarea" ;;
|
|
esac
|
|
|
|
# Package build options
|
|
build_options="broadway colord cups gir cloudproviders wayland x11 gtk_doc"
|
|
desc_option_broadway="Enable support for the HTML5 Broadway backend"
|
|
desc_option_cloudproviders="Enable integration with cloudproviders, such as Nextcloud"
|
|
|
|
# Enable all options (other than cloudproviders) by default.
|
|
build_options_default="colord cups gir broadway wayland x11"
|
|
if [ -z "$CROSS_BUILD" ]; then
|
|
build_options_default+=" gtk_doc"
|
|
fi
|
|
|
|
pre_check() {
|
|
for t in $_broken_tests; do
|
|
test_dir="testsuite/${t%\/*}"
|
|
test_name="${t##*\/}"
|
|
|
|
vsed -e "/'${test_name}',/d" -i "$test_dir/meson.build"
|
|
done
|
|
}
|
|
|
|
do_check() {
|
|
xvfb-run dbus-run-session ninja -C build ${makejobs} test
|
|
}
|
|
|
|
post_install() {
|
|
rm -f ${DESTDIR}/usr/bin/gtk-update-icon-cache
|
|
rm -f ${DESTDIR}/usr/share/man/man1/gtk-update-icon-cache.1
|
|
}
|
|
|
|
gtk+3-devel_package() {
|
|
depends="${makedepends} ${sourcepkg}>=${version}_${revision}"
|
|
short_desc+=" - development files"
|
|
pkg_install() {
|
|
vmove usr/include
|
|
vmove usr/lib/pkgconfig
|
|
vmove "usr/lib/*.so"
|
|
if [ "$build_option_gir" ]; then
|
|
vmove usr/share/gir-1.0
|
|
fi
|
|
if [ "$build_option_gtk_doc" ]; then
|
|
vmove usr/share/gtk-doc
|
|
fi
|
|
vmove usr/share/aclocal
|
|
}
|
|
}
|
|
|
|
gtk+3-demo_package() {
|
|
short_desc+=" - demonstration application"
|
|
pkg_install() {
|
|
vmove usr/bin/gtk3-demo
|
|
vmove usr/bin/gtk3-widget-factory
|
|
vmove usr/bin/gtk3-demo-application
|
|
vmove usr/share/man/man1/gtk3-widget-factory.1
|
|
vmove usr/share/gtk-3.0/gtkbuilder.rng
|
|
vmove usr/share/glib-2.0/schemas/org.gtk.Demo.gschema.xml
|
|
vmove usr/share/applications/gtk3-widget-factory.desktop
|
|
vmove usr/share/applications/gtk3-demo.desktop
|
|
vmove usr/share/icons
|
|
}
|
|
}
|