blob: cb17016f710a611a024ffaa531902df2d7b6f56d (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
|
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $
EAPI="5"
GST_ORG_MODULE="gst-plugins-bad"
inherit autotools eutils flag-o-matic gstreamer
DESCRIPTION="Less plugins for GStreamer"
HOMEPAGE="http://gstreamer.freedesktop.org/"
LICENSE="LGPL-2"
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux"
IUSE="egl gles2 +introspection +orc rpi vnc wayland"
# FIXME: Some REQUIRED_USE dance for egl/gles2/rpi/wayland
# FIXME: Any flags needed on raspberypi-userland for wayland or egl?
# FIXME: we need to depend on mesa to avoid automagic on egl
# dtmf plugin moved from bad to good in 1.2
# X11 is automagic for now, upstream #709530
RDEPEND="
>=dev-libs/glib-2.34.3:2[${MULTILIB_USEDEP}]
>=media-libs/gst-plugins-base-1.2:${SLOT}[${MULTILIB_USEDEP}]
>=media-libs/gstreamer-1.2:${SLOT}[${MULTILIB_USEDEP}]
egl? (
rpi? ( media-libs/raspberrypi-userland )
!rpi? ( >=media-libs/mesa-9.1.6[egl,${MULTILIB_USEDEP}] )
wayland? (
!rpi? ( media-libs/mesa[egl,wayland] )
rpi? ( media-libs/raspberrypi-userland )
)
)
gles2? (
rpi? ( media-libs/raspberrypi-userland )
!rpi? ( >=media-libs/mesa-9.1.6[egl,${MULTILIB_USEDEP}] )
)
introspection? ( >=dev-libs/gobject-introspection-1.31.1 )
orc? ( >=dev-lang/orc-0.4.17[${MULTILIB_USEDEP}] )
!<media-libs/gst-plugins-good-1.1:${SLOT}
"
DEPEND="${RDEPEND}
>=dev-util/gtk-doc-am-1.12
"
src_prepare() {
# Make RPI egl stuff use pkg-config - https://bugzilla.gnome.org/733248
epatch "${FILESDIR}"/egl-rpi-pkgconfig.patch
eautoreconf
}
src_configure() {
strip-flags
replace-flags "-O3" "-O2"
filter-flags "-fprefetch-loop-arrays" # (Bug #22249)
multilib-minimal_src_configure
}
multilib_src_configure() {
# For glimagesink on X11 we seem to want --enable-egl --enable-dispmanx
# For glimagesink on Wayland we seem to want --enable-egl --enable-wayland and wayland-egl.pc (on RPi provided by raspberrypi-userland + added pkg-config files)
# Figure out all the working combinations. e.g without --disable-glx on RPi, it could autodetect X11, yet not build the context. See gstglcontext.c
local myconf
myconf=""
if use rpi; then
myconf+=" --disable-glx --disable-x11"
fi
if use egl; then
myconf+=" --enable-egl --enable-gl"
if use wayland; then
myconf+=" --enable-wayland"
else
myconf+=" $(use_enable rpi dispmanx)" # can we enable it on wayland too and is it egl dependent?
fi
else
myconf+=" --disable-egl"
fi
gstreamer_multilib_src_configure \
$(multilib_native_use_enable introspection) \
$(use_enable orc) \
$(use_enable vnc librfb) \
--disable-examples \
--disable-debug \
$(use_enable gles2) \
${myconf}
}
multilib_src_install_all() {
DOCS="AUTHORS ChangeLog NEWS README RELEASE"
einstalldocs
prune_libtool_files --modules
}
|