summaryrefslogtreecommitdiff
blob: 1091cf2d5cf6cde02698e9d7ab21ec866bbd4a7f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
# Copyright 2021-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI=8

inherit qt6-build

DESCRIPTION="Multimedia (audio, video, radio, camera) library for the Qt6 framework"

if [[ ${QT6_BUILD_TYPE} == release ]]; then
	KEYWORDS="~amd64"
fi

IUSE="alsa +ffmpeg gstreamer pulseaudio v4l vaapi"

REQUIRED_USE="
	|| ( ffmpeg gstreamer )
	vaapi? ( ffmpeg )
"

RDEPEND="
	=dev-qt/qtbase-${PV}*[gui,network,widgets]
	=dev-qt/qtdeclarative-${PV}*
	=dev-qt/qtquick3d-${PV}*
	=dev-qt/qtshadertools-${PV}*
	=dev-qt/qtsvg-${PV}*
	alsa? ( media-libs/alsa-lib )
	ffmpeg? (
		media-libs/libva:=
		media-video/ffmpeg:=
		x11-libs/libX11
		x11-libs/libXext
		x11-libs/libXrandr
	)
	gstreamer? (
		dev-libs/glib:2
		media-libs/gstreamer:1.0
		media-libs/gst-plugins-bad:1.0
		media-libs/gst-plugins-base:1.0
		media-libs/libglvnd
	)
	pulseaudio? ( media-libs/libpulse[glib] )
	vaapi? (
		=dev-qt/qtbase-${PV}*[opengl]
		media-libs/libglvnd
		media-libs/libva:=
	)
"
DEPEND="${RDEPEND}
	gstreamer? ( x11-base/xorg-proto )
	v4l? ( sys-kernel/linux-headers )
"

src_configure() {
	local mycmakeargs=(
		$(qt_feature alsa)
		$(qt_feature ffmpeg)
		$(qt_feature gstreamer)
		$(qt_feature v4l linux_v4l)
		$(qt_feature pulseaudio)
		$(qt_feature vaapi)
	)

	qt6-build_src_configure
}