diff options
author | 2022-02-19 12:49:30 +0300 | |
---|---|---|
committer | 2022-03-08 13:32:19 +0000 | |
commit | 93b6417f1b55aefc05b91fec7b67eadd32b1f733 (patch) | |
tree | 2aa4e2a88378a5d76295ee10fc7b91f2ac40c259 /media-libs/gst-plugins-bad | |
parent | media-libs/libfreeaptx: Change to multilib build (diff) | |
download | gentoo-93b6417f1b55aefc05b91fec7b67eadd32b1f733.tar.gz gentoo-93b6417f1b55aefc05b91fec7b67eadd32b1f733.tar.bz2 gentoo-93b6417f1b55aefc05b91fec7b67eadd32b1f733.zip |
media-libs/gstreamer: Bump to 1.20.0
Gstreamer 1.20.0 version bump, includes
- all existing 1.18.4 plugins except for two dropped upstream
(gst-plugins-libmms and gst-plugins-ofa)
- libnice-0.1.18 version bump required by gst-plugins-webrtc in 1.20.0
- required multilib change for libldac for new plugin gst-plugins-ldac
- required multilib change for libopenaptx and libfreeaptx for new plugin
gst-plugins-openaptx
As discussed, this change adds a LICENSE to each of gstreamer modules which
now require explicit opt-in for (A)GPL plugins for (A)GPL plugins we will not
perform explicit license acceptance for affected gstreamer plugin, instead we
will rely on a user accepting the license of dependency:
- gstreamer change added explicit opt-in https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1084
- I looked at affected gstreamer plugins and looks like all are correctly
license-compatible according to compatibility matrix https://www.gnu.org/licenses/gpl-faq.html#AllCompatibility
- if a user is not willing to accept the license of corresponding (A)GPL
dependency, such dependency will not be available and affected gstreamer
plugin will not be built
- Upstream gstreamer team will look into updating/fixing plugin license display
available via gst-inspect-1.0 <plugin name> | grep License as currently it is
just "GPL" which is not specific enough (should be GPL-2, GPL-2+, GPL-3 etc.)
Signed-off-by: Igor V. Kovalenko <igor.v.kovalenko@gmail.com>
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'media-libs/gst-plugins-bad')
3 files changed, 115 insertions, 0 deletions
diff --git a/media-libs/gst-plugins-bad/Manifest b/media-libs/gst-plugins-bad/Manifest index 58d6f817bb83..04556c3ce5a8 100644 --- a/media-libs/gst-plugins-bad/Manifest +++ b/media-libs/gst-plugins-bad/Manifest @@ -1,3 +1,4 @@ DIST gst-plugins-bad-1.16.3.tar.xz 4900188 BLAKE2B 7d8280a434adb1cb65b065dcdabdb37aad000802c011bb27779c109978d8b75aa4e2fa47043dde95464bb0c34a0d7466dc1f6216f29f0f4911f7a6fe1fb04b25 SHA512 378d8813ba2fd61ea2cab512d5c1fa81e0a4ac4f4ca756547d9b8742e56024c1bc5d6cd332798de66ecfe2b69485c860e181a6c2090398b0e2ad8c4b3fe95d04 DIST gst-plugins-bad-1.18.4-glib-volatile.patch.bz2 8492 BLAKE2B 7a6e4a3fc1d68c39ae08cb052eed1fcef9c5507c655525bcb48ab789f20027632136fb195643dc5d2e04728b4c3ac94b1dcbf9a14343333fb80d65c64244e1c8 SHA512 0d9e04b883a803cec518469f46dbcf47bfef614694cad6b2bb6e8cb31c3fcc80b0f3d81633b16cd05ca0516f49893aa67f4745dc22e80192ed385fb97ee8b97c DIST gst-plugins-bad-1.18.4.tar.xz 5640292 BLAKE2B 5385abe635a35f61c6780e6cfa1189835877b8c0a12145de6890708a097fc453b1abfb14a3497cae4e6961f71fc2c6e01759fe19386cd30a64c4069704ddf77a SHA512 02123e054419f5ce6ca2ebe0bdf23572269ea4120bf463b4d672efbe5d9e5d417d4d711cc80094be974c4569f754d8b2ad93f59b827e3b018d450582834cb125 +DIST gst-plugins-bad-1.20.0.tar.xz 6203880 BLAKE2B 3c2bcbd5e3af56497415ac9e32b91bf0f9ed0668d6992c8d14b2b56c86be2178ea93409e505d438b56fe87bf75a4c96554fd3cbf9ea5b204b2a520fccb6894fe SHA512 d79fedba96517c25d2ba3925405933671fa05e350b8e133277a7c1d509e08a49ceeb50c016e23e798667fa0b09783105914f06538bdcaae969fdba8ac385a51b diff --git a/media-libs/gst-plugins-bad/files/gst-plugins-bad-1.20.0-move-qroverlay-to-external-deps.patch b/media-libs/gst-plugins-bad/files/gst-plugins-bad-1.20.0-move-qroverlay-to-external-deps.patch new file mode 100644 index 000000000000..7ac5d68d7f74 --- /dev/null +++ b/media-libs/gst-plugins-bad/files/gst-plugins-bad-1.20.0-move-qroverlay-to-external-deps.patch @@ -0,0 +1,26 @@ +commit e30ce28b1f4b0373390499f49317f8fa12b02155 +Author: Igor V. Kovalenko <igor.v.kovalenko@gmail.com> +Date: Sat Feb 5 17:36:41 2022 +0300 + + gst-plugins-bad-1.20.0-move-qroverlay-to-external-deps + +diff --git a/subprojects/gst-plugins-bad/meson_options.txt b/subprojects/gst-plugins-bad/meson_options.txt +index 4686492244..b347dcb27b 100644 +--- a/meson_options.txt ++++ b/meson_options.txt +@@ -48,7 +48,6 @@ option('onvif', type : 'feature', value : 'auto') + option('pcapparse', type : 'feature', value : 'auto') + option('pnm', type : 'feature', value : 'auto') + option('proxy', type : 'feature', value : 'auto') +-option('qroverlay', type : 'feature', value : 'auto') + option('rawparse', type : 'feature', value : 'auto') + option('removesilence', type : 'feature', value : 'auto') + option('rist', type : 'feature', value : 'auto') +@@ -140,6 +139,7 @@ option('openmpt', type : 'feature', value : 'auto', description : 'OpenMPT modul + option('openni2', type : 'feature', value : 'auto', description : 'OpenNI2 library plugin') + option('opensles', type : 'feature', value : 'auto', description : 'OpenSL ES audio source/sink plugin') + option('opus', type : 'feature', value : 'auto', description : 'OPUS audio parser plugin') ++option('qroverlay', type : 'feature', value : 'auto', description : 'Element to set random data on a qroverlay') + option('resindvd', type : 'feature', value : 'auto', description : 'Resin DVD playback plugin (GPL - only built if gpl option is also enabled!)') + option('rsvg', type : 'feature', value : 'auto', description : 'SVG overlayer and image decoder plugin') + option('rtmp', type : 'feature', value : 'auto', description : 'RTMP video network source and sink plugin') diff --git a/media-libs/gst-plugins-bad/gst-plugins-bad-1.20.0.ebuild b/media-libs/gst-plugins-bad/gst-plugins-bad-1.20.0.ebuild new file mode 100644 index 000000000000..d35110a72c16 --- /dev/null +++ b/media-libs/gst-plugins-bad/gst-plugins-bad-1.20.0.ebuild @@ -0,0 +1,88 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 +GST_ORG_MODULE="gst-plugins-bad" +PYTHON_COMPAT=( python3_{8,9,10} ) +inherit flag-o-matic gstreamer-meson python-any-r1 + +DESCRIPTION="Less plugins for GStreamer" +HOMEPAGE="https://gstreamer.freedesktop.org/" + +LICENSE="LGPL-2" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" + +# TODO: egl and gtk IUSE only for transition +IUSE="X bzip2 +egl gles2 gtk +introspection +opengl +orc vnc wayland" # Keep default IUSE mirrored with gst-plugins-base where relevant + +# X11 is automagic for now, upstream #709530 - only used by librfb USE=vnc plugin +# We mirror opengl/gles2 from -base to ensure no automagic openglmixers plugin (with "opengl?" it'd still get built with USE=-opengl here) +# FIXME gtk? ( >=media-plugins/gst-plugins-gtk-${PV}:${SLOT}[${MULTILIB_USEDEP}] ) +RDEPEND=" + !media-plugins/gst-transcoder + >=media-libs/gstreamer-${PV}:${SLOT}[${MULTILIB_USEDEP},introspection?] + >=media-libs/gst-plugins-base-${PV}:${SLOT}[${MULTILIB_USEDEP},egl?,introspection?,gles2=,opengl=] + introspection? ( >=dev-libs/gobject-introspection-1.31.1:= ) + + bzip2? ( >=app-arch/bzip2-1.0.6-r4[${MULTILIB_USEDEP}] ) + vnc? ( X? ( x11-libs/libX11[${MULTILIB_USEDEP}] ) ) + wayland? ( + >=dev-libs/wayland-1.4.0[${MULTILIB_USEDEP}] + >=x11-libs/libdrm-2.4.55[${MULTILIB_USEDEP}] + >=dev-libs/wayland-protocols-1.4 + ) + + orc? ( >=dev-lang/orc-0.4.17[${MULTILIB_USEDEP}] ) +" + +DEPEND="${RDEPEND}" + +BDEPEND=" + ${PYTHON_DEPS} + dev-util/glib-utils + >=dev-util/gtk-doc-am-1.12 +" + +# FIXME: gstharness.c:889:gst_harness_new_with_padnames: assertion failed: (element != NULL) +RESTRICT="test" + +# Fixes backported to 1.20.0, to be removed in 1.20.1 +PATCHES=( + "${FILESDIR}/gst-plugins-bad-1.20.0-move-qroverlay-to-external-deps.patch" +) + +src_prepare() { + default + addpredict /dev # Prevent sandbox violations bug #570624 +} + +multilib_src_configure() { + GST_PLUGINS_NOAUTO="shm ipcpipeline librfb hls" + local emesonargs=( + -Dshm=enabled + -Dipcpipeline=enabled + -Dhls=disabled + $(meson_feature vnc librfb) + + $(meson_feature wayland) + ) + + if use opengl || use gles2; then + myconf+=( -Dgl=enabled ) + else + myconf+=( -Dgl=disabled ) + fi + + gstreamer_multilib_src_configure +} + +multilib_src_test() { + # Tests are slower than upstream expects + CK_DEFAULT_TIMEOUT=300 gstreamer_multilib_src_test +} + +multilib_src_install_all() { + DOCS="AUTHORS ChangeLog NEWS README RELEASE" + einstalldocs + find "${ED}" -name '*.la' -delete || die +} |