summaryrefslogtreecommitdiff
path: root/dev-qt/qtmultimedia
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2024-12-16 02:01:58 +0000
committerV3n3RiX <venerix@koprulu.sector>2024-12-16 02:01:58 +0000
commite07c6f9648d478943b5ecd6f1c42cc91cae0f547 (patch)
tree2c56c6944fb4016ee510ee97a1a158baf49edfe4 /dev-qt/qtmultimedia
parent16a4365c3b854e62b50726456ddb29bb78fd5038 (diff)
gentoo auto-resync : 16:12:2024 - 02:01:58
Diffstat (limited to 'dev-qt/qtmultimedia')
-rw-r--r--dev-qt/qtmultimedia/Manifest1
-rw-r--r--dev-qt/qtmultimedia/qtmultimedia-6.9.9999.ebuild150
2 files changed, 151 insertions, 0 deletions
diff --git a/dev-qt/qtmultimedia/Manifest b/dev-qt/qtmultimedia/Manifest
index 1680c99b1fe3..c715d8c7530e 100644
--- a/dev-qt/qtmultimedia/Manifest
+++ b/dev-qt/qtmultimedia/Manifest
@@ -14,5 +14,6 @@ EBUILD qtmultimedia-6.7.2-r2.ebuild 3286 BLAKE2B 59566faeeb43449047c4829393193bb
EBUILD qtmultimedia-6.7.3.ebuild 3791 BLAKE2B 27e2f4221e030c0daa3e2cb82963b4bf5f46a316ac2a47f7cfea3b2c443a2b694c4cdc3c2a786e76baa8fb509ebd05934ae55d30fb4ae809669523f666fd8d79 SHA512 4c4d68c7785bb8cf77a87b75ab8b210013e36ec2f06032b4ea6c4fbb7dc2f22b264010d76581490f6c71ee21aad6b92fb67fed02d3e98f72752588215b9492cd
EBUILD qtmultimedia-6.8.1.ebuild 4098 BLAKE2B 90dcb1b7937298b99ec10e16c247f038d4629fe97350951ba9327e115022686c417b55d1302bcf05d95c16757d8db8a38b1a6ef322a43d8b48e141bc556a2408 SHA512 98cfae6b8f7e89b06de3a420a60c34331b3b701c26db6d4f110979db88eec857bc59db5091d6c1b3b4c4e041ef273f144c459a0aebc7443118f719413b4e3741
EBUILD qtmultimedia-6.8.9999.ebuild 4098 BLAKE2B 90dcb1b7937298b99ec10e16c247f038d4629fe97350951ba9327e115022686c417b55d1302bcf05d95c16757d8db8a38b1a6ef322a43d8b48e141bc556a2408 SHA512 98cfae6b8f7e89b06de3a420a60c34331b3b701c26db6d4f110979db88eec857bc59db5091d6c1b3b4c4e041ef273f144c459a0aebc7443118f719413b4e3741
+EBUILD qtmultimedia-6.9.9999.ebuild 4098 BLAKE2B 90dcb1b7937298b99ec10e16c247f038d4629fe97350951ba9327e115022686c417b55d1302bcf05d95c16757d8db8a38b1a6ef322a43d8b48e141bc556a2408 SHA512 98cfae6b8f7e89b06de3a420a60c34331b3b701c26db6d4f110979db88eec857bc59db5091d6c1b3b4c4e041ef273f144c459a0aebc7443118f719413b4e3741
EBUILD qtmultimedia-6.9999.ebuild 4098 BLAKE2B 90dcb1b7937298b99ec10e16c247f038d4629fe97350951ba9327e115022686c417b55d1302bcf05d95c16757d8db8a38b1a6ef322a43d8b48e141bc556a2408 SHA512 98cfae6b8f7e89b06de3a420a60c34331b3b701c26db6d4f110979db88eec857bc59db5091d6c1b3b4c4e041ef273f144c459a0aebc7443118f719413b4e3741
MISC metadata.xml 888 BLAKE2B bf3f5b1376585d4aa9021aa838b486b8143e5fbf7c5bf7c7324500de96ab86fd0176993567f97f5e5d115284f8c3ccc16475f787407d747689aefa82cf9a9534 SHA512 98e962234f1ed462444e5f7f3e77a08794b2d0480df7773e822a5671cdfbf708b51edfafacffade2ad5f8b177d89cc0d53b975ef181be66b885c17db2a4a542b
diff --git a/dev-qt/qtmultimedia/qtmultimedia-6.9.9999.ebuild b/dev-qt/qtmultimedia/qtmultimedia-6.9.9999.ebuild
new file mode 100644
index 000000000000..5c9d4372dcb4
--- /dev/null
+++ b/dev-qt/qtmultimedia/qtmultimedia-6.9.9999.ebuild
@@ -0,0 +1,150 @@
+# Copyright 2021-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic qt6-build
+
+DESCRIPTION="Multimedia (audio, video, radio, camera) library for the Qt6 framework"
+
+if [[ ${QT6_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~x86"
+fi
+
+IUSE="
+ +X alsa eglfs +ffmpeg gstreamer opengl pulseaudio
+ qml screencast v4l vaapi vulkan wayland
+"
+# tst_qmediaplayerbackend hard requires qml, review in case becomes optional
+REQUIRED_USE="
+ || ( ffmpeg gstreamer )
+ eglfs? ( ffmpeg opengl qml )
+ screencast? ( ffmpeg )
+ test? ( qml )
+ vaapi? ( ffmpeg opengl )
+"
+
+# gstreamer[X=] is to avoid broken gst detect if -X w/ gst[X] w/o xorg-proto
+# (*could* be removed if gst-plugins-base[X] RDEPENDs on xorg-proto)
+# := skipped on pipewire due to only being used through dbus
+RDEPEND="
+ ~dev-qt/qtbase-${PV}:6[gui,network,opengl=,vulkan=,widgets]
+ alsa? (
+ !pulseaudio? ( media-libs/alsa-lib )
+ )
+ ffmpeg? (
+ ~dev-qt/qtbase-${PV}:6[X=,concurrent,eglfs=]
+ media-video/ffmpeg:=[vaapi?]
+ X? (
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXrandr
+ )
+ )
+ gstreamer? (
+ dev-libs/glib:2
+ media-libs/gst-plugins-bad:1.0
+ media-libs/gst-plugins-base:1.0[X=]
+ media-libs/gstreamer:1.0
+ opengl? (
+ ~dev-qt/qtbase-${PV}:6[X?,wayland?]
+ media-libs/gst-plugins-base:1.0[X?,egl,opengl,wayland?]
+ )
+ )
+ opengl? ( media-libs/libglvnd )
+ pulseaudio? ( media-libs/libpulse )
+ qml? (
+ ~dev-qt/qtdeclarative-${PV}:6
+ ~dev-qt/qtquick3d-${PV}:6
+ )
+ screencast? (
+ ~dev-qt/qtbase-${PV}:6[dbus]
+ media-video/pipewire
+ )
+"
+DEPEND="
+ ${RDEPEND}
+ X? ( x11-base/xorg-proto )
+ v4l? ( sys-kernel/linux-headers )
+ vulkan? ( dev-util/vulkan-headers )
+"
+BDEPEND="~dev-qt/qtshadertools-${PV}:6"
+
+CMAKE_SKIP_TESTS=(
+ # unimportant and expects all backends to be available (bug #928420)
+ tst_backends
+ # tries to use real alsa or pulseaudio and fails in sandbox
+ tst_qaudiosink
+ tst_qaudiosource
+ tst_qmediacapture_gstreamer
+ tst_qmediacapturesession
+ tst_qmediaframeinputsbackend
+ tst_qmediaplayer_gstreamer
+ tst_qmediaplayerbackend
+ tst_qsoundeffect
+ # may try to use v4l2 or hardware acceleration depending on availability
+ tst_qmediarecorderbackend
+ tst_qscreencapture_integration
+ tst_qscreencapturebackend
+ tst_qvideoframebackend
+ # fails with offscreen rendering
+ tst_qvideoframecolormanagement
+ tst_qwindowcapturebackend
+)
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-6.7.3-eigen-ppc-no-vsx.patch
+)
+
+src_configure() {
+ # eigen + ppc32 seems broken w/ -maltivec (forced by Qt, bug #943402)
+ use ppc && append-cppflags -DEIGEN_DONT_VECTORIZE
+
+ # normally passed by the build system, but needed for 32-on-64 chroots
+ use x86 && append-cppflags -DDISABLE_SIMD -DPFFFT_SIMD_DISABLE
+
+ local mycmakeargs=(
+ $(cmake_use_find_package qml Qt6Qml)
+ $(qt_feature ffmpeg)
+ $(qt_feature gstreamer)
+ $(usev gstreamer "
+ $(qt_feature opengl gstreamer_gl)
+ $(usev opengl "
+ $(qt_feature X gstreamer_gl_x11)
+ $(qt_feature wayland gstreamer_gl_wayland)
+ ")
+ ")
+ $(qt_feature pulseaudio)
+ $(qt_feature screencast pipewire)
+ $(qt_feature v4l linux_v4l)
+ $(qt_feature vaapi)
+ )
+
+ # ALSA backend is experimental off-by-default and can take priority
+ # causing problems (bug #935146), disable if USE=pulseaudio is set
+ # (also do not want unnecessary usage of ALSA plugins -> pulse)
+ if use alsa && use pulseaudio; then
+ # einfo should be enough given pure-ALSA users tend to disable pulse
+ einfo "Warning: USE=alsa is ignored when USE=pulseaudio is set"
+ mycmakeargs+=( -DQT_FEATURE_alsa=OFF )
+ else
+ mycmakeargs+=( $(qt_feature alsa) )
+ fi
+
+ qt6-build_src_configure
+}
+
+src_install() {
+ qt6-build_src_install
+
+ if use test; then
+ local delete=( # sigh
+ "${D}${QT6_LIBDIR}"/cmake/Qt6Multimedia/Qt6MockMultimediaPlugin*.cmake
+ "${D}${QT6_MKSPECSDIR}"/modules/qt_plugin_mockmultimediaplugin.pri
+ "${D}${QT6_PLUGINDIR}"/multimedia/libmockmultimediaplugin.*
+ "${D}${QT6_PLUGINDIR}"/multimedia/objects-*
+ )
+ # using -f given not tracking which tests may be skipped or not
+ rm -rf -- "${delete[@]}" || die
+ fi
+}