Gentoo Archives: gentoo-commits

From: Mart Raudsepp <leio@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/gnome:master commit in: x11-wm/mutter/
Date: Wed, 26 Sep 2018 22:14:53
Message-Id: 1537998818.e1a8bfcba498d434fc7e98897041847484d6bf0d.leio@gentoo
1 commit: e1a8bfcba498d434fc7e98897041847484d6bf0d
2 Author: Mart Raudsepp <leio <AT> gentoo <DOT> org>
3 AuthorDate: Wed Sep 26 21:52:50 2018 +0000
4 Commit: Mart Raudsepp <leio <AT> gentoo <DOT> org>
5 CommitDate: Wed Sep 26 21:53:38 2018 +0000
6 URL: https://gitweb.gentoo.org/proj/gnome.git/commit/?id=e1a8bfcb
7
8 x11-wm/mutter: add patchset with upstream gnome-3-26 branch fixes
9
10 .. and translation updates
11
12 Signed-off-by: Mart Raudsepp <leio <AT> gentoo.org>
13 Package-Manager: Portage-2.3.49, Repoman-2.3.11
14
15 x11-wm/mutter/mutter-3.26.2-r1.ebuild | 140 ++++++++++++++++++++++++++++++++++
16 1 file changed, 140 insertions(+)
17
18 diff --git a/x11-wm/mutter/mutter-3.26.2-r1.ebuild b/x11-wm/mutter/mutter-3.26.2-r1.ebuild
19 new file mode 100644
20 index 00000000..71a77b24
21 --- /dev/null
22 +++ b/x11-wm/mutter/mutter-3.26.2-r1.ebuild
23 @@ -0,0 +1,140 @@
24 +# Copyright 1999-2018 Gentoo Authors
25 +# Distributed under the terms of the GNU General Public License v2
26 +
27 +EAPI=6
28 +GNOME2_EAUTORECONF="yes"
29 +inherit gnome2 virtualx
30 +
31 +DESCRIPTION="GNOME 3 compositing window manager based on Clutter"
32 +HOMEPAGE="https://git.gnome.org/browse/mutter/"
33 +SRC_URI+=" https://dev.gentoo.org/~leio/distfiles/${P}-patchset.tar.xz"
34 +
35 +LICENSE="GPL-2+"
36 +SLOT="0/1" # 0/libmutter_api_version - ONLY gnome-shell (or anything using mutter-clutter-<api_version>.pc) should use the subslot
37 +
38 +IUSE="debug gles2 input_devices_wacom +introspection test udev wayland"
39 +
40 +KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86"
41 +
42 +# libXi-1.7.4 or newer needed per:
43 +# https://bugzilla.gnome.org/show_bug.cgi?id=738944
44 +RDEPEND="
45 + >=dev-libs/atk-2.5.3
46 + >=x11-libs/gdk-pixbuf-2:2
47 + >=dev-libs/json-glib-0.12.0
48 + >=x11-libs/pango-1.30[introspection?]
49 + >=x11-libs/cairo-1.14[X]
50 + >=x11-libs/gtk+-3.19.8:3[X,introspection?]
51 + >=dev-libs/glib-2.53.2:2
52 + >=media-libs/libcanberra-0.26[gtk3]
53 + >=x11-libs/startup-notification-0.7
54 + >=x11-libs/libXcomposite-0.2
55 + >=gnome-base/gsettings-desktop-schemas-3.21.4[introspection?]
56 + gnome-base/gnome-desktop:3=
57 + >sys-power/upower-0.99:=
58 +
59 + x11-libs/libICE
60 + x11-libs/libSM
61 + x11-libs/libX11
62 + >=x11-libs/libXcomposite-0.4
63 + x11-libs/libXcursor
64 + x11-libs/libXdamage
65 + x11-libs/libXext
66 + >=x11-libs/libXfixes-3
67 + >=x11-libs/libXi-1.7.4
68 + x11-libs/libXinerama
69 + >=x11-libs/libXrandr-1.5
70 + x11-libs/libXrender
71 + x11-libs/libxcb
72 + x11-libs/libxkbfile
73 + >=x11-libs/libxkbcommon-0.4.3[X]
74 + x11-misc/xkeyboard-config
75 +
76 + gnome-extra/zenity
77 + media-libs/mesa[egl]
78 +
79 + gles2? ( media-libs/mesa[gles2] )
80 + input_devices_wacom? ( >=dev-libs/libwacom-0.13 )
81 + introspection? ( >=dev-libs/gobject-introspection-1.42:= )
82 + udev? ( >=virtual/libgudev-232:= )
83 + wayland? (
84 + >=dev-libs/libinput-1.4
85 + >=dev-libs/wayland-1.13.0
86 + >=dev-libs/wayland-protocols-1.9
87 + >=media-libs/mesa-10.3[egl,gbm,wayland]
88 + sys-apps/systemd
89 + >=virtual/libgudev-232:=
90 + >=virtual/libudev-136:=
91 + x11-base/xorg-server[wayland]
92 + x11-libs/libdrm:=
93 + )
94 +"
95 +DEPEND="${RDEPEND}
96 + dev-util/glib-utils
97 + >=sys-devel/gettext-0.19.6
98 + virtual/pkgconfig
99 + x11-base/xorg-proto
100 + test? ( app-text/docbook-xml-dtd:4.5 )
101 + wayland? ( >=sys-kernel/linux-headers-4.4 )
102 +"
103 +
104 +PATCHES=(
105 + # Lots of patches from gnome-3-26 branch on top of 3.26.2
106 + "${WORKDIR}"/patches/
107 +)
108 +
109 +src_prepare() {
110 + # Disable building of noinst_PROGRAM for tests
111 + if ! use test; then
112 + sed -e '/^noinst_PROGRAMS/d' \
113 + -i cogl/tests/conform/Makefile.{am,in} || die
114 + sed -e '/noinst_PROGRAMS += testboxes/d' \
115 + -i src/Makefile-tests.am || die
116 + sed -e '/noinst_PROGRAMS/ s/testboxes$(EXEEXT)//' \
117 + -i src/Makefile.in || die
118 + fi
119 +
120 + gnome2_src_prepare
121 +
122 + # Leave the damn CFLAGS alone
123 + sed -e 's/$CFLAGS -g/$CFLAGS /' \
124 + -i clutter/configure || die
125 + sed -e 's/$CFLAGS -g -O0/$CFLAGS /' \
126 + -i cogl/configure || die
127 + sed -e 's/$CFLAGS -g -O/$CFLAGS /' \
128 + -i configure || die
129 +}
130 +
131 +src_configure() {
132 + # TODO: pipewire remote desktop support; --disable-remote-desktop actually enables it due to upstream autotools bug in 3.26.2 (omitted means disabled)
133 + # TODO: nvidia EGLDevice support
134 + # Prefer gl driver by default
135 + # GLX is forced by mutter but optional in clutter
136 + # xlib-egl-platform required by mutter x11 backend
137 + # native backend without wayland is useless
138 + gnome2_src_configure \
139 + --disable-static \
140 + --enable-compile-warnings=minimum \
141 + --enable-gl \
142 + --enable-glx \
143 + --enable-sm \
144 + --enable-startup-notification \
145 + --enable-verbose-mode \
146 + --enable-xlib-egl-platform \
147 + --with-default-driver=gl \
148 + --with-libcanberra \
149 + $(usex debug --enable-debug=yes "") \
150 + $(use_enable gles2) \
151 + $(use_enable gles2 cogl-gles2) \
152 + $(use_enable introspection) \
153 + $(use_enable wayland) \
154 + $(use_enable wayland kms-egl-platform) \
155 + $(use_enable wayland native-backend) \
156 + $(use_enable wayland wayland-egl-server) \
157 + $(use_with input_devices_wacom libwacom) \
158 + $(use_with udev gudev)
159 +}
160 +
161 +src_test() {
162 + virtx emake check
163 +}