summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam James <sam@gentoo.org>2023-05-30 22:55:29 +0100
committerSam James <sam@gentoo.org>2023-05-30 22:55:51 +0100
commit92103eee9acba549fd4d4708015d7405989b96bc (patch)
tree1aa02e98b3c9de61a225bbbead071fac3fd380b1 /media-plugins
parentnet-nds/openldap: add upstream libressl patch (diff)
downloadgentoo-92103eee9acba549fd4d4708015d7405989b96bc.tar.gz
gentoo-92103eee9acba549fd4d4708015d7405989b96bc.tar.bz2
gentoo-92103eee9acba549fd4d4708015d7405989b96bc.zip
media-plugins/gst-plugins-opencv: wire up opencv patch for 1.22.x and add commentary
Thanks to leio for explaining it. Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'media-plugins')
-rw-r--r--media-plugins/gst-plugins-opencv/files/gst-plugins-bad-1.22.3-use-system-libs-opencv.patch99
-rw-r--r--media-plugins/gst-plugins-opencv/gst-plugins-opencv-1.22.3-r1.ebuild (renamed from media-plugins/gst-plugins-opencv/gst-plugins-opencv-1.22.3.ebuild)8
2 files changed, 103 insertions, 4 deletions
diff --git a/media-plugins/gst-plugins-opencv/files/gst-plugins-bad-1.22.3-use-system-libs-opencv.patch b/media-plugins/gst-plugins-opencv/files/gst-plugins-bad-1.22.3-use-system-libs-opencv.patch
new file mode 100644
index 000000000000..cb05c45c2c31
--- /dev/null
+++ b/media-plugins/gst-plugins-opencv/files/gst-plugins-bad-1.22.3-use-system-libs-opencv.patch
@@ -0,0 +1,99 @@
+libgstopencv.so is "normally" installed by gst-plugins-bad, but we want it to
+be part of our gst-plugins-opencv package (installing it as part of gst-plugins-bad
+would at least be confusing, and also not ideal given it'd have to depend on opencv,
+even though we have gst-plugins-opencv).
+
+bad currently doesn't have a way to allow disabling everything but the opencv
+plugin bit, so that's what this patch does as a hack. It only keeps the bare
+minimum to build the opencv helper (i.e. disable everything that gst-plugins-bad
+does to not collide, but keep opencv).
+
+TODO: replace this with something more maintainable, e.g. possible hacks
+with submodules or creating a drop-in meson.build in the ebuild to just build
+the plugin & helper libs.
+--- a/ext/meson.build
++++ b/ext/meson.build
+@@ -64,7 +64,6 @@ subdir('ttml')
+ subdir('voaacenc')
+ subdir('voamrwbenc')
+ subdir('vulkan')
+-subdir('wayland')
+ subdir('webrtc')
+ subdir('webrtcdsp')
+ subdir('webp')
+--- a/gst-libs/gst/meson.build
++++ b/gst-libs/gst/meson.build
+@@ -1,24 +1 @@
+-subdir('uridownloader')
+-
+-subdir('adaptivedemux')
+-subdir('audio')
+-subdir('basecamerabinsrc')
+-subdir('codecparsers')
+-subdir('codecs')
+-subdir('d3d11')
+-# cuda can depend on d3d11
+-subdir('cuda')
+-subdir('insertbin')
+-subdir('interfaces')
+-subdir('isoff')
+-subdir('mpegts')
+ subdir('opencv')
+-subdir('play')
+-subdir('player')
+-subdir('sctp')
+-subdir('transcoder')
+-subdir('va')
+-subdir('vulkan')
+-subdir('wayland')
+-subdir('webrtc')
+-subdir('winrt')
+--- a/meson.build
++++ b/meson.build
+@@ -530,23 +530,10 @@ pkgconfig_variables = ['exec_prefix=${prefix}',
+
+ pkgconfig_subdirs = ['gstreamer-1.0']
+
+-pkgconfig.generate(
+- libraries : [gst_dep],
+- variables : pkgconfig_variables,
+- subdirs : pkgconfig_subdirs,
+- name : 'gstreamer-plugins-bad-1.0',
+- description : 'Streaming media framework, bad plugins libraries',
+-)
+-
+ gpl_allowed = get_option('gpl').allowed()
+
+ subdir('gst-libs')
+-subdir('gst')
+-subdir('sys')
+ subdir('ext')
+-subdir('tests')
+-subdir('data')
+-subdir('tools')
+
+ if have_orcc
+ update_orc_dist_files = find_program('scripts/update-orc-dist-files.py')
+--- a/sys/meson.build
++++ b/sys/meson.build
+@@ -18,7 +18,6 @@ subdir('msdk')
+ subdir('nvcodec')
+ subdir('opensles')
+ subdir('qsv')
+-subdir('shm')
+ subdir('tinyalsa')
+ subdir('uvch264')
+ subdir('v4l2codecs')
+diff --git a/ext/meson.build b/ext/meson.build
+index ebf7e3b..4124917 100644
+--- a/ext/meson.build
++++ b/ext/meson.build
+@@ -64,8 +64,6 @@ subdir('ttml')
+ subdir('voaacenc')
+ subdir('voamrwbenc')
+ subdir('vulkan')
+-subdir('webrtc')
+-subdir('webrtcdsp')
+ subdir('webp')
+ subdir('wildmidi')
+ subdir('wpe')
diff --git a/media-plugins/gst-plugins-opencv/gst-plugins-opencv-1.22.3.ebuild b/media-plugins/gst-plugins-opencv/gst-plugins-opencv-1.22.3-r1.ebuild
index 1356163c0ab0..dd4e9c41a067 100644
--- a/media-plugins/gst-plugins-opencv/gst-plugins-opencv-1.22.3.ebuild
+++ b/media-plugins/gst-plugins-opencv/gst-plugins-opencv-1.22.3-r1.ebuild
@@ -3,7 +3,7 @@
EAPI=7
GST_ORG_MODULE=gst-plugins-bad
-PYTHON_COMPAT=( python3_{8,9,10,11} )
+PYTHON_COMPAT=( python3_{10..11} )
inherit gstreamer-meson python-any-r1
DESCRIPTION="OpenCV elements for GStreamer"
@@ -16,9 +16,9 @@ RDEPEND="
DEPEND="${RDEPEND}"
BDEPEND="${PYTHON_DEPS}"
-#PATCHES=(
-# "${FILESDIR}"/gst-plugins-bad-1.20.1-use-system-libs-opencv.patch
-#)
+PATCHES=(
+ "${FILESDIR}"/gst-plugins-bad-1.22.3-use-system-libs-opencv.patch
+)
src_prepare() {
default