commit:     3a3c10779fda786b7e777e3112c51059d8432bdd
Author:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
AuthorDate: Sun Mar 21 21:28:17 2021 +0000
Commit:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
CommitDate: Mon Apr  5 16:54:20 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3a3c1077

x11-wm/mutter: Version bump to 40.0

Signed-off-by: Matt Turner <mattst88 <AT> gentoo.org>

 x11-wm/mutter/Manifest                             |   1 +
 .../mutter-40.0-Disable-anonymous-file-test.patch  |  32 +++++
 x11-wm/mutter/mutter-40.0.ebuild                   | 148 +++++++++++++++++++++
 3 files changed, 181 insertions(+)

diff --git a/x11-wm/mutter/Manifest b/x11-wm/mutter/Manifest
index 2c031d4b06f..dce388faa4b 100644
--- a/x11-wm/mutter/Manifest
+++ b/x11-wm/mutter/Manifest
@@ -4,3 +4,4 @@ DIST mutter-3.38.2.tar.xz 2621648 BLAKE2B 
93ddeaa8b1c09ac0cd711513cb755eb94b72c1
 DIST mutter-3.38.3-r1-patchset.tar.xz 6576 BLAKE2B 
9bda2b0891df1a945d9bd0fd2867f1b4895bb9a29dbae14511192afd5b3a6776d41105924c904d47745bd2bd088136109db4df82b3a17c08040ceb40611e8dc1
 SHA512 
86763c6c652807a2389b373e94fed99e4557d7be89aeb269836855e9ec251944f5c3a0d4219f31a49c7cfe9ecde7972b3e1b7ad9f231d16999eaa36cee2aef41
 DIST mutter-3.38.3.tar.xz 2622808 BLAKE2B 
3ee6442c03a3ca5bbaecd32ac451e9c2ba91258af0425745ea871aca2a95218d8afcff8b2e5845e5ab8a4ff2c0308a0bcc0561922b4675ad68b700c04dd3028d
 SHA512 
686027d097ffff439e5a21f7bc748251da8b2f7fdccb2c17599fd6a141b0fda04fe7a19cbb3be2b3e668075fff562bcdae68a61ffb049d103b5b05f2443a5315
 DIST mutter-3.38.4.tar.xz 2623788 BLAKE2B 
27ca701459b3b70c790c8fec02b5e34eebecf5b4bd11a706a25eea19af0ee5be278835d6f789c4f77df6ec2ab23ae58bb491a0591d1ff51c9dae4690b9dde73f
 SHA512 
a80728a5bd99e727717cb49f0fbfa0db0bb02b64d7e287b4b7e5e848774ea2191db57f8c70d4b1852db201384ac413daa7108472610e8f8986d13744d800fe11
+DIST mutter-40.0.tar.xz 2678364 BLAKE2B 
3016216c396e5362a3c92dae44911ab67be6ad38b551ffef772f840fc1202ccd59a6800fe76526bab7ba1adf645a243bc000301ff6b331c949f660380143bcff
 SHA512 
af4fd21e5ea7e2cf1004d6912771279cebb2fc60f51f5c7371fd5f6fefbfbd7e36841de98757b8f116b0d2006c1151ccf74ed03ee62836cf59d2a86eaf48084d

diff --git a/x11-wm/mutter/files/mutter-40.0-Disable-anonymous-file-test.patch 
b/x11-wm/mutter/files/mutter-40.0-Disable-anonymous-file-test.patch
new file mode 100644
index 00000000000..484c62c5a0c
--- /dev/null
+++ b/x11-wm/mutter/files/mutter-40.0-Disable-anonymous-file-test.patch
@@ -0,0 +1,32 @@
+From 7353efd2f326b3f855db52ba8643ac4e793d5ffc Mon Sep 17 00:00:00 2001
+From: Matt Turner <matts...@gmail.com>
+Date: Sun, 21 Mar 2021 18:31:22 -0400
+Subject: [PATCH] Disable anonymous-file test
+
+It attempts to open /proc/self/fd/* (an fd created by memfd_create),
+which sandbox disallows.
+---
+ src/tests/meson.build | 7 -------
+ 1 file changed, 7 deletions(-)
+
+diff --git a/src/tests/meson.build b/src/tests/meson.build
+index 8ee409e20..50c930c2a 100644
+--- a/src/tests/meson.build
++++ b/src/tests/meson.build
+@@ -285,13 +285,6 @@ test('stage-view', stage_view_tests,
+   timeout: 60,
+ )
+ 
+-test('anonymous-file', anonymous_file_test,
+-  suite: ['core', 'mutter/unit'],
+-  env: test_env,
+-  is_parallel: false,
+-  timeout: 60,
+-)
+-
+ if have_native_tests
+   test('native-headless', native_headless_tests,
+     suite: ['core', 'mutter/native/headless'],
+-- 
+2.26.2
+

diff --git a/x11-wm/mutter/mutter-40.0.ebuild b/x11-wm/mutter/mutter-40.0.ebuild
new file mode 100644
index 00000000000..19f0ff73808
--- /dev/null
+++ b/x11-wm/mutter/mutter-40.0.ebuild
@@ -0,0 +1,148 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+inherit gnome.org gnome2-utils meson virtualx xdg
+
+DESCRIPTION="GNOME 3 compositing window manager based on Clutter"
+HOMEPAGE="https://gitlab.gnome.org/GNOME/mutter/";
+
+LICENSE="GPL-2+"
+SLOT="0/8" # 0/libmutter_api_version - ONLY gnome-shell (or anything using 
mutter-clutter-<api_version>.pc) should use the subslot
+
+IUSE="elogind input_devices_wacom +introspection screencast sysprof systemd 
test udev wayland"
+# native backend requires gles3 for hybrid graphics blitting support, udev and 
a logind provider
+REQUIRED_USE="
+       wayland? ( ^^ ( elogind systemd ) udev )
+       test? ( wayland )"
+RESTRICT="!test? ( test )"
+
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+
+# gnome-settings-daemon is build checked, but used at runtime only for 
org.gnome.settings-daemon.peripherals.keyboard gschema
+# xorg-server is needed at build and runtime with USE=wayland for Xwayland
+# v3.32.2 has many excessive or unused *_req variables declared, thus 
currently the dep order ignores those and goes via dependency() call order
+DEPEND="
+       x11-libs/libX11
+       >=media-libs/graphene-1.10.2[introspection?]
+       >=x11-libs/gtk+-3.19.8:3[X,introspection?]
+       x11-libs/gdk-pixbuf:2
+       >=x11-libs/pango-1.46[introspection?]
+       >=dev-libs/fribidi-1.0.0
+       >=x11-libs/cairo-1.14[X]
+       >=gnome-base/gsettings-desktop-schemas-40.0[introspection?]
+       >=dev-libs/glib-2.67.3:2
+       gnome-base/gnome-settings-daemon
+       >=dev-libs/json-glib-0.12.0[introspection?]
+       gnome-base/gnome-desktop:3=
+       >=x11-libs/libXcomposite-0.4
+       x11-libs/libXcursor
+       x11-libs/libXdamage
+       x11-libs/libXext
+       >=x11-libs/libXfixes-3
+       >=x11-libs/libXi-1.7.4
+       x11-libs/libXtst
+       x11-libs/libxkbfile
+       x11-misc/xkeyboard-config
+       >=x11-libs/libxkbcommon-0.4.3[X]
+       x11-libs/libXrender
+       >=x11-libs/libXrandr-1.5.0
+       x11-libs/libxcb
+       x11-libs/libXinerama
+       x11-libs/libXau
+       x11-libs/libICE
+       >=dev-libs/atk-2.5.3[introspection?]
+       >=media-libs/libcanberra-0.26
+       sys-apps/dbus
+       media-libs/mesa[X(+),egl]
+       sysprof? ( >=dev-util/sysprof-capture-3.38.0:4 )
+       wayland? (
+               >=dev-libs/wayland-protocols-1.19
+               >=dev-libs/wayland-1.18.0
+               x11-libs/libdrm:=
+               >=media-libs/mesa-17.3[egl,gbm,wayland,gles2]
+               >=dev-libs/libinput-1.15.0
+               systemd? ( sys-apps/systemd )
+               elogind? ( sys-auth/elogind )
+               x11-base/xorg-server[wayland]
+       )
+       udev? ( >=dev-libs/libgudev-232:=
+               >=virtual/libudev-232-r1:= )
+       x11-libs/libSM
+       input_devices_wacom? ( >=dev-libs/libwacom-0.13 )
+       >=x11-libs/startup-notification-0.7
+       screencast? ( >=media-video/pipewire-0.3.21:0/0.3 )
+       introspection? ( >=dev-libs/gobject-introspection-1.54:= )
+"
+RDEPEND="${DEPEND}
+       gnome-extra/zenity
+"
+DEPEND="${DEPEND}
+       x11-base/xorg-proto
+       sysprof? ( >=dev-util/sysprof-common-3.38.0 )
+"
+# wayland bdepend for wayland-scanner, xorg-server for cvt utility
+BDEPEND="
+       dev-libs/wayland
+       dev-util/gdbus-codegen
+       dev-util/glib-utils
+       >=sys-devel/gettext-0.19.8
+       virtual/pkgconfig
+       test? ( app-text/docbook-xml-dtd:4.5 )
+       wayland? ( >=sys-kernel/linux-headers-4.4
+               x11-base/xorg-server )
+"
+
+PATCHES=(
+       "${FILESDIR}"/${P}-Disable-anonymous-file-test.patch
+)
+
+src_configure() {
+       # TODO: Replicate debug vs release meson build type behaviour under our 
buildtype=plain
+       local emesonargs=(
+               -Dopengl=true
+               #opengl_libname
+               #gles2_libname
+               $(meson_use wayland gles2)
+               -Degl=true
+               -Dglx=true
+               $(meson_use wayland)
+               $(meson_use wayland native_backend)
+               $(meson_use screencast remote_desktop)
+               -Degl_device=false # This should be dependent on 
wayland,video_drivers_nvidia, once eglstream support is there
+               -Dwayland_eglstream=false # requires packages egl-wayland for 
wayland-eglstream-protocols.pc
+               $(meson_use udev)
+               $(meson_use input_devices_wacom libwacom)
+               -Dpango_ft2=true
+               -Dstartup_notification=true
+               -Dsm=true
+               $(meson_use introspection)
+               $(meson_use test cogl_tests)
+               $(meson_use wayland core_tests) # core tests require wayland; 
overall -Dtests option is honored on top, so no extra conditional needed
+               -Dnative_tests=false
+               $(meson_use test clutter_tests)
+               $(meson_use test tests)
+               $(meson_use sysprof profiler)
+               -Dinstalled_tests=false
+               #verbose # Let upstream choose default for verbose mode
+               #xwayland_path
+               # TODO: relies on default settings, but in Gentoo we might have 
some more packages we want to give Xgrab access (mostly virtual managers and 
remote desktops)
+               #xwayland_grab_default_access_rules
+       )
+       meson_src_configure
+}
+
+src_test() {
+       glib-compile-schemas "${BUILD_DIR}"/data
+       GSETTINGS_SCHEMA_DIR="${BUILD_DIR}"/data virtx meson_src_test
+}
+
+pkg_postinst() {
+       xdg_pkg_postinst
+       gnome2_schemas_update
+}
+
+pkg_postrm() {
+       xdg_pkg_postrm
+       gnome2_schemas_update
+}

Reply via email to