From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: <gentoo-commits+bounces-1696306-garchives=archives.gentoo.org@lists.gentoo.org> Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 53A9A1581F3 for <garchives@archives.gentoo.org>; Mon, 2 Dec 2024 07:23:59 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id F22D9E07C9; Mon, 2 Dec 2024 07:23:57 +0000 (UTC) Received: from smtp.gentoo.org (woodpecker.gentoo.org [140.211.166.183]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id CB188E07E1 for <gentoo-commits@lists.gentoo.org>; Mon, 2 Dec 2024 07:23:56 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 6FB55342FAB for <gentoo-commits@lists.gentoo.org>; Mon, 2 Dec 2024 07:23:55 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id CCF851EC5 for <gentoo-commits@lists.gentoo.org>; Mon, 2 Dec 2024 07:23:53 +0000 (UTC) From: "Ionen Wolkens" <ionen@gentoo.org> To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Ionen Wolkens" <ionen@gentoo.org> Message-ID: <1733124163.aad3bed7f652024b2a05039e01c5a48cbcf1ec97.ionen@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: dev-qt/qtmultimedia/ X-VCS-Repository: repo/gentoo X-VCS-Files: dev-qt/qtmultimedia/Manifest dev-qt/qtmultimedia/qtmultimedia-6.8.1.ebuild X-VCS-Directories: dev-qt/qtmultimedia/ X-VCS-Committer: ionen X-VCS-Committer-Name: Ionen Wolkens X-VCS-Revision: aad3bed7f652024b2a05039e01c5a48cbcf1ec97 X-VCS-Branch: master Date: Mon, 2 Dec 2024 07:23:53 +0000 (UTC) Precedence: bulk List-Post: <mailto:gentoo-commits@lists.gentoo.org> List-Help: <mailto:gentoo-commits+help@lists.gentoo.org> List-Unsubscribe: <mailto:gentoo-commits+unsubscribe@lists.gentoo.org> List-Subscribe: <mailto:gentoo-commits+subscribe@lists.gentoo.org> List-Id: Gentoo Linux mail <gentoo-commits.gentoo.org> X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: 43a8ed2c-acba-43f2-97c4-580f34bc3c8c X-Archives-Hash: 8ad105aa5be144df532aed186c54be53 commit: aad3bed7f652024b2a05039e01c5a48cbcf1ec97 Author: Ionen Wolkens <ionen <AT> gentoo <DOT> org> AuthorDate: Mon Dec 2 06:24:53 2024 +0000 Commit: Ionen Wolkens <ionen <AT> gentoo <DOT> org> CommitDate: Mon Dec 2 07:22:43 2024 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=aad3bed7 dev-qt/qtmultimedia: add 6.8.1 Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org> dev-qt/qtmultimedia/Manifest | 1 + dev-qt/qtmultimedia/qtmultimedia-6.8.1.ebuild | 150 ++++++++++++++++++++++++++ 2 files changed, 151 insertions(+) diff --git a/dev-qt/qtmultimedia/Manifest b/dev-qt/qtmultimedia/Manifest index 1a750205cc28..9e26e0a9ed01 100644 --- a/dev-qt/qtmultimedia/Manifest +++ b/dev-qt/qtmultimedia/Manifest @@ -5,3 +5,4 @@ DIST qtmultimedia-everywhere-opensource-src-5.15.16.tar.xz 3824912 BLAKE2B d98fc DIST qtmultimedia-everywhere-src-6.7.2.tar.xz 8451800 BLAKE2B 44523ebe4f1b0c910fdad8ff29f24273c1b7872e9f5dd58b2dd779e61fe3b5c1a97ee900009ca693c740a6e578f9dd62995ac101ef70e1cd718af1bd1c355430 SHA512 bfcd04a5ba142e2a3bee3b67a261ffb4f651ac4e043e3dcafc0175bd25409de375041aa6fdda4f6899b00e4bad6c06ae9fd0d6a1e7db0b874f1bcf0a578d3c70 DIST qtmultimedia-everywhere-src-6.7.3.tar.xz 9360356 BLAKE2B c3ba0c1729b412022959900d4ee7b31f92df5c1b03326ffaea974a59a217be8f39cacf62e03374d63e1d804798ac1bfcfda011a42047ebaa53f5dc1511a44f06 SHA512 6c8c7c18ad71e32507af57456d1c11544f3e6c67c9cd3811a83fd0c20e12d6457ab294d91905e3911bdef1977ec1b535de82e9d92b2a38bd9eef7851e6349b5a DIST qtmultimedia-everywhere-src-6.8.0.tar.xz 9591692 BLAKE2B fd55d8a97573c6eef6af605e0564746cb2aa1fa8ac604c62283e6508f2bcb0ac5f0cacdee919b71dfb8a8c94b34d876e0811c5a2b428d4c8c3ee78dc127ad6c0 SHA512 1374db720141d09ca3081b5a7dd6d0f1b4457ab87096b4bfac0b9ab97de1dadf36ded5cf04ae01824fd9e16cfe7f45f45f2ebebc464696a348284462a731388e +DIST qtmultimedia-everywhere-src-6.8.1.tar.xz 9664564 BLAKE2B 675544811c845ddb34908fe82e33824451e6ec8fecb66730a2f4dbe754c4466db3ae6e157fac9e8d5d0505adf90ac65bed807bd52eaad0de05047e4532b8ebeb SHA512 77f8e913116ff75cf4602e9c5ee01c48161fb40aaadca0e09ca2f89292071fc6f2918403932b9b0653bbc2b007f25362e0cb84a382baedd67e9e4c31bc414463 diff --git a/dev-qt/qtmultimedia/qtmultimedia-6.8.1.ebuild b/dev-qt/qtmultimedia/qtmultimedia-6.8.1.ebuild new file mode 100644 index 000000000000..5c9d4372dcb4 --- /dev/null +++ b/dev-qt/qtmultimedia/qtmultimedia-6.8.1.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 +}