Gentoo Archives: gentoo-commits

From: Mart Raudsepp <leio@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: x11-wm/mutter/
Date: Sun, 31 Jan 2021 20:11:01
Message-Id: 1612123608.028691deacfd8ad608ab35d6651fd04fcec2568c.leio@gentoo
1 commit: 028691deacfd8ad608ab35d6651fd04fcec2568c
2 Author: Mart Raudsepp <leio <AT> gentoo <DOT> org>
3 AuthorDate: Sun Jan 31 20:06:39 2021 +0000
4 Commit: Mart Raudsepp <leio <AT> gentoo <DOT> org>
5 CommitDate: Sun Jan 31 20:06:48 2021 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=028691de
7
8 x11-wm/mutter: add misc upstream backports
9
10 Upstream gnome-3-38 branch backports, fixing some journal spam in some
11 situations, crashes when monitor EDID name includes XML characters like
12 the ampersand, and some potential extension caused crash avoidance.
13 Also some screencast fixes with monitor configuration changes.
14
15 Package-Manager: Portage-3.0.12, Repoman-3.0.2
16 Signed-off-by: Mart Raudsepp <leio <AT> gentoo.org>
17
18 x11-wm/mutter/Manifest | 1 +
19 x11-wm/mutter/mutter-3.38.3-r1.ebuild | 149 ++++++++++++++++++++++++++++++++++
20 2 files changed, 150 insertions(+)
21
22 diff --git a/x11-wm/mutter/Manifest b/x11-wm/mutter/Manifest
23 index 6b09d82d85b..e0ca4f521b7 100644
24 --- a/x11-wm/mutter/Manifest
25 +++ b/x11-wm/mutter/Manifest
26 @@ -1,4 +1,5 @@
27 DIST mutter-3.36.7-patchset.tar.xz 14232 BLAKE2B 90a289f7012e28607d487fd635b73683e657bfd8792dbf662f8822ac7f096d21add6fcd3b7092e4e82f2130226f5b1ff9afd1e026fec8333680c9b4e4712dea2 SHA512 74e3951358a02c552a45b590360b9a038283e983ff78daf433fea1589ca3e7824f21af3b786a06ba84fb400581dfc4f97f29d259afdaca2ae3e1456a49a96243
28 DIST mutter-3.36.7.tar.xz 2689176 BLAKE2B a3849b254dbe2029736ef760fe4225e63bf1d87bf2856a87682574904bd047822916485a3e00d2760118132466414b68764731ea4af9add5d734fd7ce3eac730 SHA512 6061cc8a3bdefe57049f9da757b9a33321b28ff7bc9543bc1db3abd75c7261bf233180fb1e8a2f76145dd67ebda91c48981f6e844a866ef6cbb66203af4b7ef7
29 DIST mutter-3.38.2.tar.xz 2621648 BLAKE2B 93ddeaa8b1c09ac0cd711513cb755eb94b72c1c44a751e2c6656dd3415fcb278d22e92577400df9443ece0e3dd1bc77adc88d1a24d59bb911ce8114e53340cae SHA512 8bd826fdb643bc966f6b7c38ed12cec9806440bf9cf4792cb90aa62dd96d2fd1018be39148ebd4432ba799cfdd30ed5c3952620ca13b9fac933fb0a477c9937a
30 +DIST mutter-3.38.3-r1-patchset.tar.xz 6576 BLAKE2B 9bda2b0891df1a945d9bd0fd2867f1b4895bb9a29dbae14511192afd5b3a6776d41105924c904d47745bd2bd088136109db4df82b3a17c08040ceb40611e8dc1 SHA512 86763c6c652807a2389b373e94fed99e4557d7be89aeb269836855e9ec251944f5c3a0d4219f31a49c7cfe9ecde7972b3e1b7ad9f231d16999eaa36cee2aef41
31 DIST mutter-3.38.3.tar.xz 2622808 BLAKE2B 3ee6442c03a3ca5bbaecd32ac451e9c2ba91258af0425745ea871aca2a95218d8afcff8b2e5845e5ab8a4ff2c0308a0bcc0561922b4675ad68b700c04dd3028d SHA512 686027d097ffff439e5a21f7bc748251da8b2f7fdccb2c17599fd6a141b0fda04fe7a19cbb3be2b3e668075fff562bcdae68a61ffb049d103b5b05f2443a5315
32
33 diff --git a/x11-wm/mutter/mutter-3.38.3-r1.ebuild b/x11-wm/mutter/mutter-3.38.3-r1.ebuild
34 new file mode 100644
35 index 00000000000..9afc0daacf0
36 --- /dev/null
37 +++ b/x11-wm/mutter/mutter-3.38.3-r1.ebuild
38 @@ -0,0 +1,149 @@
39 +# Copyright 1999-2021 Gentoo Authors
40 +# Distributed under the terms of the GNU General Public License v2
41 +
42 +EAPI=7
43 +inherit gnome.org gnome2-utils meson virtualx xdg
44 +
45 +DESCRIPTION="GNOME 3 compositing window manager based on Clutter"
46 +HOMEPAGE="https://gitlab.gnome.org/GNOME/mutter/"
47 +SRC_URI+=" https://dev.gentoo.org/~leio/distfiles/${PF}-patchset.tar.xz"
48 +
49 +LICENSE="GPL-2+"
50 +SLOT="0/7" # 0/libmutter_api_version - ONLY gnome-shell (or anything using mutter-clutter-<api_version>.pc) should use the subslot
51 +
52 +IUSE="elogind input_devices_wacom +introspection screencast sysprof systemd test udev wayland"
53 +# native backend requires gles3 for hybrid graphics blitting support, udev and a logind provider
54 +REQUIRED_USE="
55 + wayland? ( ^^ ( elogind systemd ) udev )
56 + test? ( wayland )"
57 +RESTRICT="!test? ( test )"
58 +
59 +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc ~x86"
60 +
61 +# gnome-settings-daemon is build checked, but used at runtime only for org.gnome.settings-daemon.peripherals.keyboard gschema
62 +# xorg-server is needed at build and runtime with USE=wayland for Xwayland
63 +# v3.32.2 has many excessive or unused *_req variables declared, thus currently the dep order ignores those and goes via dependency() call order
64 +DEPEND="
65 + x11-libs/libX11
66 + >=media-libs/graphene-1.9.3[introspection?]
67 + >=x11-libs/gtk+-3.19.8:3[X,introspection?]
68 + x11-libs/gdk-pixbuf:2
69 + >=x11-libs/pango-1.30[introspection?]
70 + >=dev-libs/fribidi-1.0.0
71 + >=x11-libs/cairo-1.14[X]
72 + >=gnome-base/gsettings-desktop-schemas-3.37.2[introspection?]
73 + >=dev-libs/glib-2.61.1:2
74 + gnome-base/gnome-settings-daemon
75 + >=dev-libs/json-glib-0.12.0[introspection?]
76 + gnome-base/gnome-desktop:3=
77 + >=x11-libs/libXcomposite-0.4
78 + x11-libs/libXcursor
79 + x11-libs/libXdamage
80 + x11-libs/libXext
81 + >=x11-libs/libXfixes-3
82 + >=x11-libs/libXi-1.7.4
83 + x11-libs/libXtst
84 + x11-libs/libxkbfile
85 + x11-misc/xkeyboard-config
86 + >=x11-libs/libxkbcommon-0.4.3[X]
87 + x11-libs/libXrender
88 + >=x11-libs/libXrandr-1.5.0
89 + x11-libs/libxcb
90 + x11-libs/libXinerama
91 + x11-libs/libXau
92 + x11-libs/libICE
93 + >=dev-libs/atk-2.5.3[introspection?]
94 + >=media-libs/libcanberra-0.26
95 + sys-apps/dbus
96 + media-libs/mesa[X(+),egl]
97 + sysprof? ( >=dev-util/sysprof-capture-3.38.0:4 )
98 + wayland? (
99 + >=dev-libs/wayland-protocols-1.19
100 + >=dev-libs/wayland-1.18.0
101 + x11-libs/libdrm:=
102 + >=media-libs/mesa-17.3[egl,gbm,wayland,gles2]
103 + >=dev-libs/libinput-1.7
104 + systemd? ( sys-apps/systemd )
105 + elogind? ( sys-auth/elogind )
106 + x11-base/xorg-server[wayland]
107 + )
108 + udev? ( >=dev-libs/libgudev-232:=
109 + >=virtual/libudev-232-r1:= )
110 + x11-libs/libSM
111 + input_devices_wacom? ( >=dev-libs/libwacom-0.13 )
112 + >=x11-libs/startup-notification-0.7
113 + screencast? ( >=media-video/pipewire-0.3.0:0/0.3 )
114 + introspection? ( >=dev-libs/gobject-introspection-1.54:= )
115 +"
116 +RDEPEND="${DEPEND}
117 + gnome-extra/zenity
118 +"
119 +DEPEND="${DEPEND}
120 + x11-base/xorg-proto
121 + sysprof? ( >=dev-util/sysprof-common-3.38.0 )
122 +"
123 +# wayland bdepend for wayland-scanner, xorg-server for cvt utility
124 +BDEPEND="
125 + dev-libs/wayland
126 + dev-util/gdbus-codegen
127 + dev-util/glib-utils
128 + >=sys-devel/gettext-0.19.8
129 + virtual/pkgconfig
130 + test? ( app-text/docbook-xml-dtd:4.5 )
131 + wayland? ( >=sys-kernel/linux-headers-4.4
132 + x11-base/xorg-server )
133 +"
134 +
135 +PATCHES=(
136 + # origin/gnome-3-38@d881fcdece608
137 + "${WORKDIR}"/patches
138 +)
139 +
140 +src_configure() {
141 + # TODO: Replicate debug vs release meson build type behaviour under our buildtype=plain
142 + local emesonargs=(
143 + -Dopengl=true
144 + #opengl_libname
145 + #gles2_libname
146 + $(meson_use wayland gles2)
147 + -Degl=true
148 + -Dglx=true
149 + $(meson_use wayland)
150 + $(meson_use wayland native_backend)
151 + $(meson_use screencast remote_desktop)
152 + -Degl_device=false # This should be dependent on wayland,video_drivers_nvidia, once eglstream support is there
153 + -Dwayland_eglstream=false # requires packages egl-wayland for wayland-eglstream-protocols.pc
154 + $(meson_use udev)
155 + $(meson_use input_devices_wacom libwacom)
156 + -Dpango_ft2=true
157 + -Dstartup_notification=true
158 + -Dsm=true
159 + $(meson_use introspection)
160 + $(meson_use test cogl_tests)
161 + $(meson_use wayland core_tests) # core tests require wayland; overall -Dtests option is honored on top, so no extra conditional needed
162 + $(meson_use test clutter_tests)
163 + $(meson_use test tests)
164 + $(meson_use sysprof profiler)
165 + -Dinstalled_tests=false
166 + #verbose # Let upstream choose default for verbose mode
167 + #xwayland_path
168 + # 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)
169 + #xwayland_grab_default_access_rules
170 + )
171 + meson_src_configure
172 +}
173 +
174 +src_test() {
175 + glib-compile-schemas "${BUILD_DIR}"/data
176 + GSETTINGS_SCHEMA_DIR="${BUILD_DIR}"/data virtx meson_src_test
177 +}
178 +
179 +pkg_postinst() {
180 + xdg_pkg_postinst
181 + gnome2_schemas_update
182 +}
183 +
184 +pkg_postrm() {
185 + xdg_pkg_postrm
186 + gnome2_schemas_update
187 +}