blob: 345f478cae2bbba377080f5e86bf429d2b950206 (
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
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
|
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit meson
DESCRIPTION="Collection of utilities and tests for VA-API"
HOMEPAGE="https://01.org/linuxmedia/vaapi"
if [[ ${PV} = *9999 ]] ; then
inherit git-r3
EGIT_REPO_URI="https://github.com/intel/libva-utils"
else
SRC_URI="https://github.com/intel/libva-utils/archive/${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="amd64 arm64 ppc64 ~riscv x86 ~amd64-linux ~x86-linux"
fi
LICENSE="MIT"
SLOT="0"
IUSE="examples putsurface test +vainfo wayland X"
RESTRICT="test" # Tests must be run manually
REQUIRED_USE="
putsurface? ( || ( wayland X ) )
|| ( examples putsurface test vainfo )
"
BDEPEND="virtual/pkgconfig"
if [[ ${PV} = *9999 ]] ; then
DEPEND="~x11-libs/libva-${PV}:=[drm(+),wayland?,X?]"
else
DEPEND=">=x11-libs/libva-$(ver_cut 1-2).0:=[drm(+),wayland?,X?]"
fi
DEPEND+="
wayland? ( >=dev-libs/wayland-1.0.6 )
X? ( >=x11-libs/libX11-1.6.2 )
"
RDEPEND="${DEPEND}"
src_prepare() {
default
local sed_args=()
# Fix broken dependency check
# https://github.com/intel/libva-utils/pull/260
sed_args+=(-e "s/dependency('drm'/dependency('libdrm'/")
if ! use examples ; then
sed_args+=(
-e "/^subdir('decode')$/d"
-e "/^subdir('encode')$/d"
-e "/^subdir('videoprocess')$/d"
-e "/^subdir('vendor\/intel')$/d"
-e "/^subdir('vendor\/intel\/sfcsample')$/d"
)
fi
if ! use putsurface ; then
sed_args+=(-e "/^subdir('putsurface')$/d")
fi
if ! use vainfo ; then
sed_args+=(-e "/^subdir('vainfo')$/d")
fi
if [[ ${#sed_args[@]} -gt 0 ]] ; then
sed "${sed_args[@]}" -i meson.build || die
fi
}
src_configure() {
local emesonargs=(
-Ddrm=true
$(meson_use X x11)
$(meson_use wayland)
$(meson_use test tests)
)
meson_src_configure
}
src_install() {
meson_src_install
if ! use test ; then
rm -f "${ED}"/usr/bin/test_va_api || die
fi
}
pkg_postinst() {
if use test ; then
elog "Tests must be run manually with the test_va_api binary"
fi
}
|