forked from gentoo/gentoo
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
media-plugins/gst-plugins-vaapi: bump to 1.14.3 for upstream bug fixes
Package-Manager: Portage-2.3.49, Repoman-2.3.10
- Loading branch information
Showing
2 changed files
with
111 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,4 @@ | ||
DIST gstreamer-vaapi-1.12.4.tar.xz 998844 BLAKE2B e37d6f66054e46e421ffbd4c27362bba0fb2ad57bfccb4891ba85573dec18ca304654336768a519c202bda0e829b80ab75a5708ddfc1dc9751774b4ef783a16d SHA512 2251395f77be8d17837f4b0d38a2271155a5fbd57560fac9334660abb34a4f609dda8d9714bfa8f64395a85d3fa336f7ad1b8e8e7490b5288843fbe3d1dbd7f5 | ||
DIST gstreamer-vaapi-1.14.1.tar.xz 1064992 BLAKE2B bae42e3cafc6d1e5799a8ef795f9e1f6a6ac60b6878aea1aed81550fd7e408c5104b5ea89d6e5f7535ac8d21fe5f14fccf061e15eb68a7c1c60c29ad4a4deabb SHA512 f1eecb61cb92439d93a47ac162a5cda8a456dbb205594f378e8adf98c45e4cd59553ccfd3bbcf1c6a568c6af5e7834bbfb0ea17610f0c7e7c9e268a4eeb5b020 | ||
DIST gstreamer-vaapi-1.14.2.tar.xz 1068872 BLAKE2B 835eb394d81b4de671703b2ff05b3bf57d2d09bc15d01c865c1c74cf6aad61071149c1f78f693b47b81d4c28f580d5fd6b004a99c26972ac67e5dca13abc8dfa SHA512 7297dc04c116cab5cb066efc2dc34f9510927fadf696475c14ca3b3a3befe8c0ed5c63c9a4039f1f268e79a967c89a34d74048da92198f05833315f90d503202 | ||
DIST gstreamer-vaapi-1.14.3.tar.xz 1070536 BLAKE2B 7e3458702072d96acc31c1ac5c4ec9f23f6d618ba922884fb141a0897a04959da7f34c7abff7765f086357d3f8f7532a1582508d117c199f76338ebd3723c6ae SHA512 b89acf63c2900b0cd588cce1a06d959a4f8bbe929c237fce985d3cfce7b94d43a3317f06a42fa77e3ff790fff8a81c8bbeeed7ac797794e4cc3342f18faa69e3 |
110 changes: 110 additions & 0 deletions
110
media-plugins/gst-plugins-vaapi/gst-plugins-vaapi-1.14.3.ebuild
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,110 @@ | ||
# Copyright 1999-2018 Gentoo Foundation | ||
# Distributed under the terms of the GNU General Public License v2 | ||
|
||
EAPI=6 | ||
|
||
inherit multilib-minimal | ||
|
||
MY_PN="gstreamer-vaapi" | ||
DESCRIPTION="Hardware accelerated video decoding through VA-API plugin for GStreamer" | ||
HOMEPAGE="https://cgit.freedesktop.org/gstreamer/gstreamer-vaapi" | ||
SRC_URI="https://gstreamer.freedesktop.org/src/${MY_PN}/${MY_PN}-${PV}.tar.xz" | ||
|
||
LICENSE="LGPL-2.1+" | ||
SLOT="1.0" | ||
KEYWORDS="~amd64 ~arm64 ~x86" | ||
IUSE="+drm +egl gles2 +opengl wayland +X" # Keep default enabled IUSE in sync with gst-plugins-base and libva | ||
|
||
# gst-vaapi configure is based around GL platform mainly, unlike gst-plugins-bad that goes by GL API mainly; for less surprises, | ||
# we design gst-vaapi ebuild in terms of GL API as main choice as well, meaning that USE opengl and/or gles2 is required to | ||
# enable opengl support at all and choices get chained from there. | ||
# One or multiple video output are required: drm, x11, glx, egl and/or wayland; | ||
# but GL API is our main trigger, thus USE=egl should be ineffective if neither gles2 or opengl is enabled; | ||
# So "|| ( drm egl opengl wayland X )" would be wrong, because egl isn't built with USE="egl -opengl -gles2", ending up with no video outputs. | ||
# As we ensure at least one working GL output with other REQUIRED_USE, we can put gles2/opengl in REQUIRED_USE instead of egl, solving the issue. | ||
# gles2 API only supported windowing system (on linux) is EGL, so require it | ||
# opengl API only supported windowing systems (on linux) are EGL and GLX, so require one of them (glx is enabled with USE="opengl X") | ||
REQUIRED_USE=" | ||
|| ( drm gles2 opengl wayland X ) | ||
gles2? ( egl ) | ||
opengl? ( || ( egl X ) ) | ||
" | ||
|
||
# glx doesn't require libva-glx (libva[opengl]) afaics, only by tests/test-display.c | ||
# USE flag behavior: | ||
# 'drm' enables vaapi drm support | ||
# 'egl' enables EGL platform support (but only if also 'opengl||gles2') | ||
# - 'egl' is exposed as a USE flag mainly to get EGL support instead of or in addition to GLX support with desktop GL while keeping it optional for pure GLX cases; | ||
# it's always required with USE=gles2, thus USE="gles2 opengl X" will require and build desktop GL EGL platform support as well on top of GLX, which doesn't add extra deps at that point. | ||
# 'gles2' enables GLESv2 or GLESv3 based GL API support | ||
# 'opengl' enables desktop OpenGL based GL API support | ||
# 'wayland' enables non-GL Wayland support; wayland EGL support when combined with 'egl' (but only if also 'opengl||gles2') | ||
# 'X' enables non-GL X support; GLX support when combined with 'opengl' | ||
# gst-plugins-bad still needed for codecparsers (GL libraries moved to -base); checked for 1.14 (recheck for 1.16) | ||
GST_REQ="${PV}" | ||
GL_DEPS=" | ||
>=media-libs/gst-plugins-base-${GST_REQ}:${SLOT}[egl?,gles2?,opengl?,wayland?,X?] | ||
media-libs/mesa[gles2?,egl?,${MULTILIB_USEDEP}] | ||
" | ||
RDEPEND=" | ||
>=dev-libs/glib-2.40:2[${MULTILIB_USEDEP}] | ||
>=media-libs/gstreamer-${GST_REQ}:${SLOT}[${MULTILIB_USEDEP}] | ||
>=media-libs/gst-plugins-base-${GST_REQ}:${SLOT}[${MULTILIB_USEDEP}] | ||
>=media-libs/gst-plugins-bad-${GST_REQ}:${SLOT}[${MULTILIB_USEDEP}] | ||
>=x11-libs/libva-1.4.0:=[drm?,wayland?,X?,${MULTILIB_USEDEP}] | ||
drm? ( | ||
>=virtual/libudev-208:=[${MULTILIB_USEDEP}] | ||
>=x11-libs/libdrm-2.4.46[${MULTILIB_USEDEP}] | ||
) | ||
gles2? ( ${GL_DEPS} ) | ||
opengl? ( ${GL_DEPS} ) | ||
wayland? ( >=dev-libs/wayland-1.0.6[${MULTILIB_USEDEP}] ) | ||
X? ( | ||
>=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}] | ||
>=x11-libs/libXrandr-1.4.2[${MULTILIB_USEDEP}] | ||
x11-libs/libXrender[${MULTILIB_USEDEP}] ) | ||
" | ||
DEPEND="${RDEPEND} | ||
>=dev-util/gtk-doc-am-1.12 | ||
>=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}] | ||
" | ||
|
||
S="${WORKDIR}/${MY_PN}-${PV}" | ||
|
||
multilib_src_configure() { | ||
local myconf=() | ||
if use opengl || use gles2; then | ||
myconf+=( | ||
$(use_enable egl) | ||
--with-glapi=$(usex opengl 'gl,' '')$(usex gles2 'gles2,gles3' '') # It's fine to have extra commas passed | ||
) | ||
else | ||
myconf+=( | ||
--disable-egl | ||
--without-glapi | ||
) | ||
fi | ||
|
||
if use opengl && use X; then | ||
myconf+=( --enable-glx ) | ||
else | ||
myconf+=( --disable-glx ) | ||
fi | ||
|
||
ECONF_SOURCE=${S} \ | ||
econf \ | ||
--disable-static \ | ||
--disable-debug \ | ||
--disable-examples \ | ||
--enable-encoders \ | ||
$(use_enable drm) \ | ||
$(use_enable X x11) \ | ||
$(use_enable wayland) \ | ||
--without-gtk \ | ||
"${myconf[@]}" | ||
} | ||
|
||
multilib_src_install_all() { | ||
einstalldocs | ||
find "${ED}" -name '*.la' -delete || die | ||
} |