1 # Copyright 1999-2016 Gentoo Foundation
2 # Distributed under the terms of the GNU General Public License v2
6 inherit gnome2 virtualx
8 DESCRIPTION="GNOME 3 compositing window manager based on Clutter"
9 HOMEPAGE="https://git.gnome.org/browse/mutter/"
14 IUSE="debug gles2 input_devices_wacom +introspection test udev wayland"
16 KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86"
18 # libXi-1.7.4 or newer needed per:
19 # https://bugzilla.gnome.org/show_bug.cgi?id=738944
22 >=x11-libs/gdk-pixbuf-2:2
23 >=dev-libs/json-glib-0.12.0
24 >=x11-libs/pango-1.30[X,introspection?]
25 >=x11-libs/cairo-1.14[X]
26 >=x11-libs/gtk+-3.19.8:3[X,introspection?]
27 >=dev-libs/glib-2.49.0:2[dbus]
28 >=media-libs/libcanberra-0.26[gtk3]
29 >=x11-libs/startup-notification-0.7
30 >=x11-libs/libXcomposite-0.2
31 >=gnome-base/gsettings-desktop-schemas-3.21.4[introspection?]
32 gnome-base/gnome-desktop:3=
33 >sys-power/upower-0.99:=
38 >=x11-libs/libXcomposite-0.4
42 >=x11-libs/libXfixes-3
43 >=x11-libs/libXi-1.7.4
45 >=x11-libs/libXrandr-1.5
49 >=x11-libs/libxkbcommon-0.4.3[X]
50 x11-misc/xkeyboard-config
55 gles2? ( media-libs/mesa[gles2] )
56 input_devices_wacom? ( >=dev-libs/libwacom-0.13 )
57 introspection? ( >=dev-libs/gobject-introspection-1.42:= )
58 udev? ( virtual/libgudev:= )
60 >=dev-libs/libinput-1.4
61 >=dev-libs/wayland-1.6.90
62 >=dev-libs/wayland-protocols-1.7
63 >=media-libs/mesa-10.3[egl,gbm,wayland]
66 >=virtual/libudev-136:=
67 x11-base/xorg-server[wayland]
71 DEPEND="${COMMON_DEPEND}
72 >=sys-devel/gettext-0.19.6
75 x11-proto/xineramaproto
77 test? ( app-text/docbook-xml-dtd:4.5 )
78 wayland? ( >=sys-kernel/linux-headers-4.4 )
80 RDEPEND="${COMMON_DEPEND}
85 # Disable building of noinst_PROGRAM for tests
87 sed -e '/^noinst_PROGRAMS/d' \
88 -i cogl/tests/conform/Makefile.{am,in} || die
89 sed -e '/noinst_PROGRAMS += testboxes/d' \
90 -i src/Makefile-tests.am || die
91 sed -e '/noinst_PROGRAMS/ s/testboxes$(EXEEXT)//' \
92 -i src/Makefile.in || die
97 # Leave the damn CFLAGS alone
98 sed -e 's/$CFLAGS -g/$CFLAGS /' \
99 -i clutter/configure || die
100 sed -e 's/$CFLAGS -g -O0/$CFLAGS /' \
101 -i cogl/configure || die
102 sed -e 's/$CFLAGS -g -O/$CFLAGS /' \
107 # Prefer gl driver by default
108 # GLX is forced by mutter but optional in clutter
109 # xlib-egl-platform required by mutter x11 backend
110 # native backend without wayland is useless
111 gnome2_src_configure \
113 --enable-compile-warnings=minimum \
117 --enable-startup-notification \
118 --enable-verbose-mode \
119 --enable-xlib-egl-platform \
120 --with-default-driver=gl \
122 $(usex debug --enable-debug=yes "") \
123 $(use_enable gles2) \
124 $(use_enable gles2 cogl-gles2) \
125 $(use_enable introspection) \
126 $(use_enable wayland) \
127 $(use_enable wayland kms-egl-platform) \
128 $(use_enable wayland native-backend) \
129 $(use_enable wayland wayland-egl-server) \
130 $(use_with input_devices_wacom libwacom) \
131 $(use_with udev gudev)