Skip to content

Commit

Permalink
media-libs/clutter-gst: make udev support optional
Browse files Browse the repository at this point in the history
It was forced on because upstream had it automagic. Patch submitted and
accepted upstream. Also add X USE flag and make it synchronized with
clutter since there is conditional code being built depending on whether
clutter has X11 support or not ending up in clutter-gst linking to
libX11.
  • Loading branch information
EvaSDK committed Nov 24, 2015
1 parent 6068709 commit e006ff5
Show file tree
Hide file tree
Showing 2 changed files with 121 additions and 0 deletions.
71 changes: 71 additions & 0 deletions media-libs/clutter-gst/clutter-gst-3.0.14-r1.ebuild
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$

EAPI="5"
GCONF_DEBUG="yes"
GNOME2_LA_PUNT="yes"
PYTHON_COMPAT=( python2_7 )

inherit autotools eutils gnome2 python-any-r1

HOMEPAGE="https://blogs.gnome.org/clutter/"
DESCRIPTION="GStreamer integration library for Clutter"

LICENSE="LGPL-2.1+"
SLOT="3.0"
KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86"
IUSE="X examples +introspection udev"

# >=cogl-1.18 provides cogl-2.0-experimental
COMMON_DEPEND="
>=dev-libs/glib-2.20:2
>=media-libs/clutter-1.20:1.0=[X=,introspection?]
>=media-libs/cogl-1.18:1.0=[introspection?]
>=media-libs/gstreamer-1.4:1.0[introspection?]
>=media-libs/gst-plugins-bad-1.4:1.0
>=media-libs/gst-plugins-base-1.4:1.0[introspection?]
introspection? ( >=dev-libs/gobject-introspection-0.6.8:= )
udev? ( virtual/libgudev )
"
# uses goom from gst-plugins-good
RDEPEND="${COMMON_DEPEND}
>=media-libs/gst-plugins-good-1.4:1.0
!udev? ( media-plugins/gst-plugins-v4l2 )
"
DEPEND="${COMMON_DEPEND}
${PYTHON_DEPS}
>=dev-util/gtk-doc-am-1.11
virtual/pkgconfig
"

src_prepare() {
# Make udev support controllable
epatch "${FILESDIR}"/${PN}-3.0.14-automagic-udev.patch

eautoreconf
}

src_configure() {
# --enable-gl-texture-upload is experimental
gnome2_src_configure \
--disable-maintainer-flags \
$(use_enable introspection) \
$(use_with udev)
}

src_compile() {
# Clutter tries to access dri without userpriv, upstream bug #661873
# Massive failure of a hack, see bug 360219, bug 360073, bug 363917
unset DISPLAY
gnome2_src_compile
}

src_install() {
gnome2_src_install

if use examples; then
insinto /usr/share/doc/"${PF}"/examples
doins examples/{*.c,*.png,README}
fi
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
From ce92707eba5153c7ba0ee107f887480f2db494f2 Mon Sep 17 00:00:00 2001
From: Gilles Dartiguelongue <[email protected]>
Date: Tue, 24 Nov 2015 11:32:37 +0100
Subject: [PATCH] Make libgudev dependency controllable by configure switch

---
configure.ac | 27 ++++++++++++++++++++-------
1 file changed, 20 insertions(+), 7 deletions(-)

diff --git a/configure.ac b/configure.ac
index 67dede9..e8f4887 100644
--- a/configure.ac
+++ b/configure.ac
@@ -209,13 +209,26 @@ AS_IF([test "x$have_cogl_osx" = xyes],
AC_SUBST([GL_LDFLAGS])
])

-PKG_CHECK_MODULES(GUDEV,
- [gudev-1.0],
- [
- have_gudev=yes
- AC_DEFINE([HAVE_GUDEV], [1],
- ["Defined if gudev is available"])
- ],[ have_gudev=no ])
+AC_ARG_WITH([udev],
+ [AS_HELP_STRING([--with-udev],
+ [Enable camera listing through libgudev]),
+ [], [with_udev=auto])
+ ])
+
+AS_IF([test "$with_udev" != "no"],
+ [
+ PKG_CHECK_MODULES(GUDEV,
+ [gudev-1.0],
+ [
+ have_gudev=yes
+ AC_DEFINE([HAVE_GUDEV], [1],
+ ["Defined if gudev is available"])
+ ],[
+ AS_IF([test "$with_udev" = "yes"],
+ [AC_MSG_ERROR([Could not find libgudev])],
+ [have_gudev=no])
+ ])
+ ])

dnl ========================================================================
dnl Experimental support for hardware accelerated decoders.
--
2.6.3

0 comments on commit e006ff5

Please sign in to comment.