media-libs/gst-plugins-base: bump to 1.14.1
authorMart Raudsepp <leio@gentoo.org>
Thu, 14 Jun 2018 16:39:33 +0000 (19:39 +0300)
committerMart Raudsepp <leio@gentoo.org>
Sat, 16 Jun 2018 18:24:28 +0000 (21:24 +0300)
Package-Manager: Portage-2.3.40, Repoman-2.3.9

media-libs/gst-plugins-base/Manifest
media-libs/gst-plugins-base/gst-plugins-base-1.14.1.ebuild [new file with mode: 0644]
media-libs/gst-plugins-base/metadata.xml
profiles/default/bsd/package.use.mask

index 4b22818c28c66c0605a77151a78f55a6f538d723..aaa50be29f1347bf1f414392709af88933fc7a1a 100644 (file)
@@ -1,3 +1,4 @@
 DIST gst-plugins-base-0.10.36.tar.xz 2364108 BLAKE2B a71ef5d5c7462d60937602681c060e85ed086a753b7ef354dad48354d6c3741d809f2c0c6a321ef9ac60fb12d24ec65e1baa63e51211134d2a5e03aae16f73d2 SHA512 ea77778e073515df58229a641b4363df31f0b80204a5a43a8feb31f0b03a5a4b9b79d6e07e1615c773a59927a9b649f1b1d782def1120d581d09a090be8363b8
 DIST gst-plugins-base-1.12.3.tar.xz 3117364 BLAKE2B c5c16f1b46b10cfc5b9731ea990638238b82eb7f312345fece3826deed20992aff1c5a48e031060dc175b5ab5ad8ee21bb3e1e950fc0681ee4b596e65f5f92fe SHA512 d32f71836e25081b00040709a2184da85489e5af90902a0b27b820a478f5805bde93a04cefaeabf36dde53c16ad12f2816777cc195f1e027f19d1883e088e2b2
 DIST gst-plugins-base-1.12.4.tar.xz 3119468 BLAKE2B d5ac157618a25c8f0323d1922d5b26b0b5c49f56cb75df3ceeadd0566f873be1a06c863a1da6afff40901fbbbeb1ec6cd6ef4614309ca7f7ff988c0fa9040a10 SHA512 89a6e92cd294612cf1406eb156416ab4606643f6b43637e64a18f6f28ab789ca8d4cf1308434ed85e5fc679c79cc3ca115db48f37e0065a6ab3cdfdbaaad9f53
+DIST gst-plugins-base-1.14.1.tar.xz 3689184 BLAKE2B 17abcab2c84b113180de55d6c781ae11feec66c215febfffefe4a22353c56e82a585647688e2078603b6c3ece6f26afa99969091a72886880a2f8549dd9cb379 SHA512 bca9db8780fe24c19a2c4eae9a16dc0856cb38077580e4344bd4f7fa9a7a03079b92556ff35475a574f624a5a721d80ef925790670e4cc809361ed01108a141e
diff --git a/media-libs/gst-plugins-base/gst-plugins-base-1.14.1.ebuild b/media-libs/gst-plugins-base/gst-plugins-base-1.14.1.ebuild
new file mode 100644 (file)
index 0000000..028cc25
--- /dev/null
@@ -0,0 +1,169 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+GST_ORG_MODULE="gst-plugins-base"
+
+inherit flag-o-matic ltprune gstreamer
+
+DESCRIPTION="Basepack of plugins for gstreamer"
+HOMEPAGE="https://gstreamer.freedesktop.org/"
+
+LICENSE="GPL-2+ LGPL-2+"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
+
+# For OpenGL we have three separate concepts, with a list of possibilities in each:
+#  * opengl APIs - opengl and/or gles2; USE=opengl and USE=gles2 enable these accordingly; if neither is enabled, OpenGL helper library and elements are not built at all and all the other options aren't relevant
+#  * opengl platforms - glx and/or egl; also cgl, wgl, eagl for non-linux; USE="X opengl" enables glx platform; USE="egl" enables egl platform. Rest is up for relevant prefix teams.
+#  * opengl windowing system - x11, wayland, win32, cocoa, android, viv_fb, gbm and/or dispmanx; USE=X enables x11 (but for WSI it's automagic - FIXME), USE=wayland enables wayland, USE=gbm enables gbm (automagic upstream - FIXME); rest is up for relevant prefix/arch teams/contributors to test and provide patches
+# With the following limitations:
+#  * If opengl and/or gles2 is enabled, a platform has to be enabled - x11 or egl in our case, but x11 (glx) is acceptable only with opengl
+#  * If opengl and/or gles2 is enabled, a windowing system has to be enabled - x11, wayland or gbm in our case
+#  * glx platform requires opengl API
+#  * wayland, gbm and most other non-glx WSIs require egl platform
+# Additionally there is optional dmabuf support with egl for additional dmabuf based upload/download/eglimage options;
+#  and optional graphene usage for gltransformation and glvideoflip elements and more GLSL Uniforms support in glshader;
+#  and libpng/jpeg are required for gloverlay element;
+
+IUSE="alsa +egl gbm gles2 +introspection ivorbis +ogg +opengl +orc +pango theora +vorbis wayland +X"
+GL_REQUIRED_USE="
+       || ( gbm wayland X )
+       wayland? ( egl )
+       gbm? ( egl )
+"
+REQUIRED_USE="
+       ivorbis? ( ogg )
+       theora? ( ogg )
+       vorbis? ( ogg )
+       opengl? ( || ( egl X ) ${GL_REQUIRED_USE} )
+       gles2? ( egl ${GL_REQUIRED_USE} )
+"
+
+# Dependencies needed by opengl library and plugin (enabled via USE gles2 and/or opengl)
+# dmabuf automagic from libdrm headers (drm_fourcc.h) and EGL, so ensure it with USE=egl (platform independent header used only, thus no MULTILIB_USEDEP); provides dmabuf based upload/download/eglimage options
+GL_DEPS="
+       >=media-libs/mesa-9.0[egl?,gbm?,gles2?,wayland?,${MULTILIB_USEDEP}]
+       egl? (
+               x11-libs/libdrm
+       )
+       gbm? (
+               >=dev-libs/libgudev-147[${MULTILIB_USEDEP}]
+               >=x11-libs/libdrm-2.4.55[${MULTILIB_USEDEP}]
+       )
+       wayland? (
+               dev-libs/wayland[${MULTILIB_USEDEP}]
+       )
+
+       media-libs/libpng:0[${MULTILIB_USEDEP}]
+       virtual/jpeg:0[${MULTILIB_USEDEP}]
+" # graphene for optional gltransformation and glvideoflip elements and more GLSL Uniforms support in glshader; libpng/jpeg for gloverlay element
+# >=media-libs/graphene-1.4.0[${MULTILIB_USEDEP}]
+
+RDEPEND="
+       app-text/iso-codes
+       >=dev-libs/glib-2.40.0:2[${MULTILIB_USEDEP}]
+       >=media-libs/gstreamer-${PV}:1.0[introspection?,${MULTILIB_USEDEP}]
+       >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}]
+       alsa? ( >=media-libs/alsa-lib-1.0.27.2[${MULTILIB_USEDEP}] )
+       introspection? ( >=dev-libs/gobject-introspection-1.31.1:= )
+       ivorbis? ( >=media-libs/tremor-0_pre20130223[${MULTILIB_USEDEP}] )
+       ogg? ( >=media-libs/libogg-1.3.0[${MULTILIB_USEDEP}] )
+       orc? ( >=dev-lang/orc-0.4.24[${MULTILIB_USEDEP}] )
+       pango? ( >=x11-libs/pango-1.36.3[${MULTILIB_USEDEP}] )
+       theora? ( >=media-libs/libtheora-1.1.1[encode,${MULTILIB_USEDEP}] )
+       vorbis? ( >=media-libs/libvorbis-1.3.3-r1[${MULTILIB_USEDEP}] )
+       X? (
+               >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}]
+               >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}]
+               >=x11-libs/libXv-1.0.10[${MULTILIB_USEDEP}]
+       )
+
+       gles2? ( ${GL_DEPS} )
+       opengl? ( ${GL_DEPS} )
+
+       !<media-libs/gst-plugins-bad-1.13.1:1.0
+"
+DEPEND="${RDEPEND}
+       >=dev-util/gtk-doc-am-1.12
+       X? ( x11-base/xorg-proto )
+"
+
+multilib_src_configure() {
+       filter-flags -mno-sse -mno-sse2 -mno-sse4.1 #610340
+
+       local myconf=()
+       # FIXME: Automagic gbm and x11 wsi
+       if use opengl || use gles2; then
+               myconf+=(
+                       --enable-gl
+                       $(use_enable egl)
+                       $(use_enable gles2)
+                       $(use_enable opengl)
+                       $(use_enable wayland)
+                       $(use_enable X x11)
+               )
+       else
+               myconf+=(
+                       --disable-gl
+                       --disable-egl
+                       --disable-gles2
+                       --disable-opengl
+                       --disable-wayland
+                       --disable-x11
+               )
+       fi
+
+       if use opengl && use X; then
+               # GLX requires desktop OpenGL and X
+               myconf+=( --enable-glx )
+       else
+               myconf+=( --disable-glx )
+       fi
+
+       myconf+=(
+               --disable-cocoa
+               --disable-dispmanx
+               --disable-wgl
+       )
+
+       gstreamer_multilib_src_configure \
+               $(use_enable alsa) \
+               $(multilib_native_use_enable introspection) \
+               $(use_enable ivorbis) \
+               $(use_enable ogg) \
+               $(use_enable orc) \
+               $(use_enable pango) \
+               $(use_enable theora) \
+               $(use_enable vorbis) \
+               $(use_enable X x) \
+               $(use_enable X xshm) \
+               $(use_enable X xvideo) \
+               --enable-iso-codes \
+               --enable-zlib \
+               --disable-debug \
+               --disable-examples \
+               --disable-static \
+               "${myconf[@]}"
+       # cdparanoia and libvisual are split out, per leio's request
+
+       # bug #366931, flag-o-matic for the whole thing is overkill
+       if [[ ${CHOST} == *86-*-darwin* ]] ; then
+               sed -i \
+                       -e '/FLAGS = /s|-O[23]|-O1|g' \
+                       gst/audioconvert/Makefile \
+                       gst/volume/Makefile || die
+       fi
+
+       if multilib_is_native_abi; then
+               local x
+               for x in libs plugins; do
+                       ln -s "${S}"/docs/${x}/html docs/${x}/html || die
+               done
+       fi
+}
+
+multilib_src_install_all() {
+       DOCS="AUTHORS NEWS README RELEASE"
+       einstalldocs
+       prune_libtool_files --modules
+}
index 1d80bb267a905fc7557957eb11675a02b891ec96..144ac24b2ac6640b456e302edd429987432d871a 100644 (file)
@@ -6,7 +6,13 @@
        <name>GStreamer package maintainers</name>
 </maintainer>
 <use>
+       <flag name="gbm">Enable Graphics Buffer Manager based EGL windowing system support (requires egl and at least one of gles or opengl)</flag>
+       <flag name="egl">Enable EGL platform support</flag>
+       <flag name="gles2">Enable OpenGL library and plugin via GLESv2 API (requires egl)</flag>
        <flag name="ivorbis">Enable integer based vorbis decoder</flag>
+       <flag name="opengl">Enable OpenGL library and plugin via desktop OpenGL API</flag>
        <flag name="pango">Enable pango GStreamer plugin</flag>
+       <flag name="wayland">Enable Wayland EGL windowing system support (requires egl and at least one of gles2 or opengl)</flag>
+       <flag name="X">Enable ximagesink and xvimagesink plugins; build GLX platform support if USE=opengl is enabled; build x11 windowing system support if USE=egl is enabled</flag>
 </use>
 </pkgmetadata>
index d256ea2e706d98ee1b4440fc92e011aae84df4e0..02d03c5ab310309881e10da23fa914f8d59bd156 100644 (file)
@@ -75,6 +75,7 @@ media-libs/libsdl2 kms
 media-libs/mesa gbm dri3 d3d9
 x11-base/xorg-drivers video_cards_radeonsi
 x11-drivers/xf86-video-ati glamor
+media-libs/gst-plugins-base gbm
 
 # connman is Linux only
 dev-qt/qtbearer connman