diff options
author | 2025-01-31 02:52:03 -0500 | |
---|---|---|
committer | 2025-01-31 03:19:50 -0500 | |
commit | 21e7035d8f2695b98d745a6405e810c72ea69aa9 (patch) | |
tree | 5feb787a1095189ec5fd77c9e8d606599fa8b0ce /dev-qt | |
parent | dev-qt/qtlocation: add 6.8.2 (diff) | |
download | gentoo-21e7035d8f2695b98d745a6405e810c72ea69aa9.tar.gz gentoo-21e7035d8f2695b98d745a6405e810c72ea69aa9.tar.bz2 gentoo-21e7035d8f2695b98d745a6405e810c72ea69aa9.zip |
dev-qt/qtmultimedia: add 6.8.2
Signed-off-by: Ionen Wolkens <ionen@gentoo.org>
Diffstat (limited to 'dev-qt')
-rw-r--r-- | dev-qt/qtmultimedia/Manifest | 1 | ||||
-rw-r--r-- | dev-qt/qtmultimedia/qtmultimedia-6.8.2.ebuild | 153 |
2 files changed, 154 insertions, 0 deletions
diff --git a/dev-qt/qtmultimedia/Manifest b/dev-qt/qtmultimedia/Manifest index cd40ae1bc062..3eef92f25a6a 100644 --- a/dev-qt/qtmultimedia/Manifest +++ b/dev-qt/qtmultimedia/Manifest @@ -1,3 +1,4 @@ DIST qtmultimedia-5.15.16-gentoo-kde-1.tar.xz 1496 BLAKE2B 760f0ee32f353849c0e826622fea0e744ceb4e96d3ae3a6e903b32e7e5211d803e29761538c45797f61f0766ae726206fd799fc4d2fa094f46176ee0d6d5a0fb SHA512 97b161727450864643c0c2d395757d3f78503c02d26151017bdbebfd55e7ffeeffc63e530baecdba4a43dc364dad614dd893278eb84e89587c8ac51f89e14f87 DIST qtmultimedia-everywhere-opensource-src-5.15.16.tar.xz 3824912 BLAKE2B d98fcc82164d36f2bc21769796ce69c4b0aff57295795004cc609662a10fa80ecf8709c39ed53f96576071fd9e1e2d6eaadcc4eeb97c3fa6406ca7e2f8dcafe7 SHA512 a848affbc38a532455a34bdf887948210ff9794dae312115be0622246993324902b81209c2cac89ca5db63e6fcc29690f47c1255b1b7c4de68bf6ad5a6ecc5e7 DIST qtmultimedia-everywhere-src-6.8.1.tar.xz 9664564 BLAKE2B 675544811c845ddb34908fe82e33824451e6ec8fecb66730a2f4dbe754c4466db3ae6e157fac9e8d5d0505adf90ac65bed807bd52eaad0de05047e4532b8ebeb SHA512 77f8e913116ff75cf4602e9c5ee01c48161fb40aaadca0e09ca2f89292071fc6f2918403932b9b0653bbc2b007f25362e0cb84a382baedd67e9e4c31bc414463 +DIST qtmultimedia-everywhere-src-6.8.2.tar.xz 9646120 BLAKE2B 14651f1f116e462449678c8c566aaac20356b61b73b023b3aa3e0199b1f44844fb76da82406d653c004a104abd48db6bf8d8d67a3a5216e33447f3505f2fbdfa SHA512 557017faec2596368a453adfee284d88cd83033e73e78b01a6d1918cdf86a283e0a8bfd8a211b31591a7d69fde130528b7a266213460ca37647b13f90b4e22f3 diff --git a/dev-qt/qtmultimedia/qtmultimedia-6.8.2.ebuild b/dev-qt/qtmultimedia/qtmultimedia-6.8.2.ebuild new file mode 100644 index 000000000000..ebedbf72d367 --- /dev/null +++ b/dev-qt/qtmultimedia/qtmultimedia-6.8.2.ebuild @@ -0,0 +1,153 @@ +# Copyright 2021-2025 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 + # seems flaky depending on what codecs system libraries support or not + tst_qmediaformatbackend + # fails with offscreen rendering + tst_qvideoframecolormanagement + tst_qwindowcapturebackend +) + +PATCHES=( + "${FILESDIR}"/${PN}-6.7.3-eigen-ppc-no-vsx.patch + "${FILESDIR}"/${PN}-6.8.1-qversionnumber.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 +} |