diff options
Diffstat (limited to 'PKGBUILD')
-rw-r--r-- | PKGBUILD | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..f51f2d461d73 --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,74 @@ +# Maintainer: Fabian Bornschein <fabiscafe-cat-mailbox-dog-org> +# Contributor: Jan Alexander Steffens (heftig) <heftig@archlinux.org> +# Contributor: Ionut Biru <ibiru@archlinux.org> +# Contributor: Michael Kanis <mkanis_at_gmx_dot_de> + +pkgname=mutter-oldstable +pkgver=3.38.4 +pkgrel=2 +pkgdesc="A window manager for GNOME" +url="https://gitlab.gnome.org/GNOME/mutter" +conflicts=("mutter") +provides=("mutter=$pkgver") +replaces=("mutter") +arch=(x86_64) +license=(GPL) +depends=(dconf gobject-introspection-runtime gsettings-desktop-schemas-oldstable + libcanberra startup-notification zenity libsm gnome-desktop upower + libxkbcommon-x11 gnome-settings-daemon-oldstable libgudev libinput pipewire + xorg-xwayland graphene libxkbfile) +makedepends=(gobject-introspection git egl-wayland meson xorg-server) +checkdepends=(xorg-server-xvfb pipewire-media-session) +provides=(libmutter-7.so) +groups=(gnome-oldstable) +install=mutter.install +_commit=ffd8b25c986bce4d7707bee099a72f3cf54d93e2 # tag/3.38.4 +source=("git+https://gitlab.gnome.org/GNOME/mutter.git#commit=$_commit") +sha256sums=('SKIP') + +pkgver() { + cd mutter + git describe --tags | sed 's/-/+/g' +} + +prepare() { + cd mutter +} + +build() { + CFLAGS="${CFLAGS/-O2/-O3} -fno-semantic-interposition" + LDFLAGS+=" -Wl,-Bsymbolic-functions" + arch-meson mutter build \ + -D egl_device=true \ + -D wayland_eglstream=true \ + -D installed_tests=false \ + -D profiler=false + meson compile -C build +} + +_check() ( + mkdir -p -m 700 "${XDG_RUNTIME_DIR:=$PWD/runtime-dir}" + glib-compile-schemas "${GSETTINGS_SCHEMA_DIR:=$PWD/build/data}" + export XDG_RUNTIME_DIR GSETTINGS_SCHEMA_DIR + + pipewire & + _p1=$! + + pipewire-media-session & + _p2=$! + + trap "kill $_p1 $_p2; wait" EXIT + + meson test -C build --print-errorlogs || true +) + +check() { +# Check might fail without clean build env. Continue building in any case. + dbus-run-session xvfb-run \ + -s '-screen 0 1920x1080x24 -nolisten local +iglx -noreset' \ + bash -c "$(declare -f _check); _check" +} + +package() { + DESTDIR="$pkgdir" meson install -C build +} |