From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <gentoo-commits+bounces-910898-garchives=archives.gentoo.org@lists.gentoo.org>
Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80])
	(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
	(No client certificate requested)
	by finch.gentoo.org (Postfix) with ESMTPS id 221C01395E2
	for <garchives@archives.gentoo.org>; Fri, 11 Nov 2016 12:47:57 +0000 (UTC)
Received: from pigeon.gentoo.org (localhost [127.0.0.1])
	by pigeon.gentoo.org (Postfix) with SMTP id 7BF9721C07E;
	Fri, 11 Nov 2016 12:47:49 +0000 (UTC)
Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183])
	(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
	(No client certificate requested)
	by pigeon.gentoo.org (Postfix) with ESMTPS id 5267621C07E
	for <gentoo-commits@lists.gentoo.org>; Fri, 11 Nov 2016 12:47:44 +0000 (UTC)
Received: from oystercatcher.gentoo.org (unknown [IPv6:2a01:4f8:202:4333:225:90ff:fed9:fc84])
	(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
	(No client certificate requested)
	by smtp.gentoo.org (Postfix) with ESMTPS id 742A0341646
	for <gentoo-commits@lists.gentoo.org>; Fri, 11 Nov 2016 12:47:43 +0000 (UTC)
Received: from localhost.localdomain (localhost [127.0.0.1])
	by oystercatcher.gentoo.org (Postfix) with ESMTP id 544BF24C9
	for <gentoo-commits@lists.gentoo.org>; Fri, 11 Nov 2016 12:47:39 +0000 (UTC)
From: "Gilles Dartiguelongue" <eva@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Content-Transfer-Encoding: 8bit
Content-type: text/plain; charset=UTF-8
Reply-To: gentoo-dev@lists.gentoo.org, "Gilles Dartiguelongue" <eva@gentoo.org>
Message-ID: <1478868451.6ac127187ed93a75ac01ae60b9f2fb2d9f97cd09.eva@gentoo>
Subject: [gentoo-commits] repo/gentoo:master commit in: x11-wm/mutter/
X-VCS-Repository: repo/gentoo
X-VCS-Files: x11-wm/mutter/metadata.xml x11-wm/mutter/mutter-3.22.1.ebuild
X-VCS-Directories: x11-wm/mutter/
X-VCS-Committer: eva
X-VCS-Committer-Name: Gilles Dartiguelongue
X-VCS-Revision: 6ac127187ed93a75ac01ae60b9f2fb2d9f97cd09
X-VCS-Branch: master
Date: Fri, 11 Nov 2016 12:47:39 +0000 (UTC)
Precedence: bulk
List-Post: <mailto:gentoo-commits@lists.gentoo.org>
List-Help: <mailto:gentoo-commits+help@lists.gentoo.org>
List-Unsubscribe: <mailto:gentoo-commits+unsubscribe@lists.gentoo.org>
List-Subscribe: <mailto:gentoo-commits+subscribe@lists.gentoo.org>
List-Id: Gentoo Linux mail <gentoo-commits.gentoo.org>
X-BeenThere: gentoo-commits@lists.gentoo.org
X-Archives-Salt: bb0fcbdb-edf9-4ca1-ab57-33ba52f9c8f6
X-Archives-Hash: 7a28a7a74cfbdacc2b40fc48856ea959

commit:     6ac127187ed93a75ac01ae60b9f2fb2d9f97cd09
Author:     Gilles Dartiguelongue <eva <AT> gentoo <DOT> org>
AuthorDate: Fri Nov 11 12:45:22 2016 +0000
Commit:     Gilles Dartiguelongue <eva <AT> gentoo <DOT> org>
CommitDate: Fri Nov 11 12:47:31 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6ac12718

x11-wm/mutter: fix dependencies and option combinations

Checked with upstream, native backend without wayland is not useful and
the opposite would have limited use.

See upstream reports for not enabling these possibilities anyway:
https://bugzilla.gnome.org/show_bug.cgi?id=771638
https://bugzilla.gnome.org/show_bug.cgi?id=772681

Gentoo-bug: 598846

Package-Manager: portage-2.3.2

 x11-wm/mutter/metadata.xml         |  1 +
 x11-wm/mutter/mutter-3.22.1.ebuild | 77 ++++++++++++++++++++++++++++----------
 2 files changed, 59 insertions(+), 19 deletions(-)

diff --git a/x11-wm/mutter/metadata.xml b/x11-wm/mutter/metadata.xml
index 59b7f54..3e52e1b 100644
--- a/x11-wm/mutter/metadata.xml
+++ b/x11-wm/mutter/metadata.xml
@@ -6,6 +6,7 @@
 		<name>Gentoo GNOME Desktop</name>
 	</maintainer>
 	<use>
+		<flag name="gles2">Enable OpenGL ES 2.0 support</flag>
 		<flag name="kms">Enable KMS support.</flag>
 	</use>
 </pkgmetadata>

diff --git a/x11-wm/mutter/mutter-3.22.1.ebuild b/x11-wm/mutter/mutter-3.22.1.ebuild
index d3d13a0..73b9494 100644
--- a/x11-wm/mutter/mutter-3.22.1.ebuild
+++ b/x11-wm/mutter/mutter-3.22.1.ebuild
@@ -3,7 +3,7 @@
 # $Id$
 
 EAPI=6
-inherit gnome2
+inherit gnome2 virtualx
 
 DESCRIPTION="GNOME 3 compositing window manager based on Clutter"
 HOMEPAGE="https://git.gnome.org/browse/mutter/"
@@ -11,10 +11,7 @@ HOMEPAGE="https://git.gnome.org/browse/mutter/"
 LICENSE="GPL-2+"
 SLOT="0"
 
-IUSE="input_devices_wacom +introspection +kms test udev wayland"
-REQUIRED_USE="
-	wayland? ( kms )
-"
+IUSE="debug gles2 input_devices_wacom +introspection test udev wayland"
 
 KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86"
 
@@ -22,12 +19,12 @@ KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86"
 # https://bugzilla.gnome.org/show_bug.cgi?id=738944
 COMMON_DEPEND="
 	>=dev-libs/atk-2.5.3
+	>=x11-libs/gdk-pixbuf-2:2
 	>=dev-libs/json-glib-0.12.0
-	>=x11-libs/pango-1.2[X,introspection?]
-	>=x11-libs/cairo-1.10[X]
+	>=x11-libs/pango-1.30[X,introspection?]
+	>=x11-libs/cairo-1.14[X]
 	>=x11-libs/gtk+-3.19.8:3[X,introspection?]
 	>=dev-libs/glib-2.49.0:2[dbus]
-	>=media-libs/cogl-1.21.2:1.0=[introspection?]
 	>=media-libs/libcanberra-0.26[gtk3]
 	>=x11-libs/startup-notification-0.7
 	>=x11-libs/libXcomposite-0.2
@@ -38,11 +35,11 @@ COMMON_DEPEND="
 	x11-libs/libICE
 	x11-libs/libSM
 	x11-libs/libX11
-	>=x11-libs/libXcomposite-0.2
+	>=x11-libs/libXcomposite-0.4
 	x11-libs/libXcursor
 	x11-libs/libXdamage
 	x11-libs/libXext
-	x11-libs/libXfixes
+	>=x11-libs/libXfixes-3
 	>=x11-libs/libXi-1.7.4
 	x11-libs/libXinerama
 	>=x11-libs/libXrandr-1.5
@@ -53,21 +50,23 @@ COMMON_DEPEND="
 	x11-misc/xkeyboard-config
 
 	gnome-extra/zenity
+	media-libs/mesa[egl]
 
+	gles2? ( media-libs/mesa[gles2] )
 	input_devices_wacom? ( >=dev-libs/libwacom-0.13 )
 	introspection? ( >=dev-libs/gobject-introspection-1.42:= )
-	kms? (
-		>=dev-libs/libinput-1.4
-		media-libs/cogl:1.0=[kms]
-		>=media-libs/mesa-10.3[gbm]
-		sys-apps/systemd
-		virtual/libgudev
-		x11-libs/libdrm:= )
 	udev? ( virtual/libgudev:= )
 	wayland? (
+		>=dev-libs/libinput-1.4
 		>=dev-libs/wayland-1.6.90
 		>=dev-libs/wayland-protocols-1.7
-		x11-base/xorg-server[wayland] )
+		>=media-libs/mesa-10.3[egl,gbm,wayland]
+		sys-apps/systemd
+		virtual/libgudev:=
+		>=virtual/libudev-136:=
+		x11-base/xorg-server[wayland]
+		x11-libs/libdrm:=
+	)
 "
 DEPEND="${COMMON_DEPEND}
 	>=sys-devel/gettext-0.19.6
@@ -81,16 +80,56 @@ RDEPEND="${COMMON_DEPEND}
 	!x11-misc/expocity
 "
 
+src_prepare() {
+	# Disable building of noinst_PROGRAM for tests
+	if ! use test; then
+		sed -e '/^noinst_PROGRAMS/d' \
+			-i cogl/tests/conform/Makefile.{am,in} || die
+		sed -e '/noinst_PROGRAMS += testboxes/d' \
+			-i src/Makefile-tests.am || die
+		sed -e '/noinst_PROGRAMS/ s/testboxes$(EXEEXT)//' \
+			-i src/Makefile.in || die
+	fi
+
+	gnome2_src_prepare
+
+	# Leave the damn CFLAGS alone
+	sed -e 's/$CFLAGS -g/$CFLAGS /' \
+		-i clutter/configure || die
+	sed -e 's/$CFLAGS -g -O0/$CFLAGS /' \
+		-i cogl/configure || die
+	sed -e 's/$CFLAGS -g -O/$CFLAGS /' \
+		-i configure || die
+}
+
 src_configure() {
+	# Prefer gl driver by default
+	# GLX is forced by mutter but optional in clutter
+	# xlib-egl-platform required by mutter x11 backend
+	# native backend without wayland is useless
 	gnome2_src_configure \
 		--disable-static \
+		--enable-compile-warnings=minimum \
+		--enable-gl \
+		--enable-glx \
 		--enable-sm \
 		--enable-startup-notification \
 		--enable-verbose-mode \
+		--enable-xlib-egl-platform \
+		--with-default-driver=gl \
 		--with-libcanberra \
+		$(usex debug --enable-debug=yes "") \
+		$(use_enable gles2)        \
+		$(use_enable gles2 cogl-gles2) \
 		$(use_enable introspection) \
-		$(use_enable kms native-backend) \
 		$(use_enable wayland) \
+		$(use_enable wayland kms-egl-platform) \
+		$(use_enable wayland native-backend) \
+		$(use_enable wayland wayland-egl-server) \
 		$(use_with input_devices_wacom libwacom) \
 		$(use_with udev gudev)
 }
+
+src_test() {
+	virtx emake check
+}