1 # Maintainer: Jan Alexander Steffens (heftig) <heftig@archlinux.org>
2 # Contributor: Ionut Biru <ibiru@archlinux.org>
3 # Contributor: Michael Kanis <mkanis_at_gmx_dot_de>
6 pkgname=(mutter mutter-docs)
9 pkgdesc="A window manager for GNOME"
10 url="https://gitlab.gnome.org/GNOME/mutter"
13 depends=(dconf gobject-introspection-runtime gsettings-desktop-schemas
14 libcanberra startup-notification zenity libsm gnome-desktop
15 libxkbcommon-x11 gnome-settings-daemon libgudev libinput pipewire
16 xorg-xwayland graphene libxkbfile libsysprof-capture)
17 makedepends=(gobject-introspection git egl-wayland meson xorg-server
18 wayland-protocols sysprof gi-docgen)
19 checkdepends=(xorg-server-xvfb wireplumber python-dbusmock)
21 _commit=1903356b45c6c884a0451580f32494ff1288656d # tags/42.3^0
22 source=("git+https://gitlab.gnome.org/GNOME/mutter.git#commit=$_commit")
27 git describe --tags | sed 's/[^-]*-g/r&/;s/-/+/g'
35 CFLAGS="${CFLAGS/-O2/-O3} -fno-semantic-interposition"
36 LDFLAGS+=" -Wl,-Bsymbolic-functions"
38 arch-meson mutter build \
40 -D wayland_eglstream=true \
42 -D installed_tests=false
43 meson compile -C build
47 mkdir -p -m 700 "${XDG_RUNTIME_DIR:=$PWD/runtime-dir}"
48 glib-compile-schemas "${GSETTINGS_SCHEMA_DIR:=$PWD/build/data}"
49 export XDG_RUNTIME_DIR GSETTINGS_SCHEMA_DIR
57 trap "kill $_p1 $_p2; wait" EXIT
59 meson test -C build --print-errorlogs -t 3
63 dbus-run-session xvfb-run -s '-nolisten local +iglx -noreset' \
64 bash -c "$(declare -f _check); _check"
68 local p="$1" f d; shift
70 d="$srcdir/$p/${f#$pkgdir/}"
71 mkdir -p "$(dirname "$d")"
73 rmdir -p --ignore-fail-on-non-empty "$(dirname "$f")"
78 provides=(libmutter-10.so)
81 meson install -C build --destdir "$pkgdir"
83 _pick docs "$pkgdir"/usr/share/mutter-*/doc
86 package_mutter-docs() {
87 pkgdesc+=" (documentation)"