1 |
commit: 647a8643d2941d4f20a6cb2b4799fc35bbc26c36 |
2 |
Author: Francisco Javier Félix <web <AT> inode64 <DOT> com> |
3 |
AuthorDate: Mon Oct 18 06:57:28 2021 +0000 |
4 |
Commit: Sam James <sam <AT> gentoo <DOT> org> |
5 |
CommitDate: Sun Oct 31 03:39:32 2021 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=647a8643 |
7 |
|
8 |
media-libs/dav1d: fix build, support xxhash |
9 |
|
10 |
* Require minimum nasm 2.15.05 |
11 |
* Disable test by default |
12 |
* Fix build, see bug https://code.videolan.org/videolan/dav1d/-/issues/370 and |
13 |
patch https://code.videolan.org/videolan/dav1d/-/commit/c6a08b3aa1ee99dade53e5e32033bc1d14455a22 |
14 |
the same problem with versions of gcc 10.3.0 and gcc 11.2.0, from dav1d 0.8.2 to 0.9.2. |
15 |
|
16 |
Closes: https://bugs.gentoo.org/738726 |
17 |
Closes: https://bugs.gentoo.org/791544 |
18 |
Package-Manager: Portage-3.0.20, Repoman-3.0.3 |
19 |
Signed-off-by: INODE64 <ffelix <AT> inode64.com> |
20 |
Closes: https://github.com/gentoo/gentoo/pull/22621 |
21 |
Signed-off-by: Sam James <sam <AT> gentoo.org> |
22 |
|
23 |
media-libs/dav1d/dav1d-0.8.2.ebuild | 12 ++++++-- |
24 |
media-libs/dav1d/dav1d-0.9.0.ebuild | 12 ++++++-- |
25 |
media-libs/dav1d/dav1d-0.9.1.ebuild | 12 ++++++-- |
26 |
media-libs/dav1d/dav1d-0.9.2.ebuild | 12 ++++++-- |
27 |
media-libs/dav1d/dav1d-9999.ebuild | 11 ++++++-- |
28 |
...id-meson-s-symbols_have_underscore_prefix.patch | 32 ++++++++++++++++++++++ |
29 |
media-libs/dav1d/metadata.xml | 1 + |
30 |
7 files changed, 77 insertions(+), 15 deletions(-) |
31 |
|
32 |
diff --git a/media-libs/dav1d/dav1d-0.8.2.ebuild b/media-libs/dav1d/dav1d-0.8.2.ebuild |
33 |
index 69f48374833..caaf9cb8784 100644 |
34 |
--- a/media-libs/dav1d/dav1d-0.8.2.ebuild |
35 |
+++ b/media-libs/dav1d/dav1d-0.8.2.ebuild |
36 |
@@ -19,15 +19,19 @@ HOMEPAGE="https://code.videolan.org/videolan/dav1d" |
37 |
|
38 |
LICENSE="BSD-2" |
39 |
SLOT="0/5" |
40 |
-IUSE="+8bit +10bit +asm" |
41 |
+IUSE="+8bit +10bit +asm test xxhash" |
42 |
+RESTRICT="!test? ( test )" |
43 |
|
44 |
-ASM_DEPEND=">=dev-lang/nasm-2.14.02" |
45 |
+ASM_DEPEND=">=dev-lang/nasm-2.15.05" |
46 |
BDEPEND="asm? ( |
47 |
abi_x86_32? ( ${ASM_DEPEND} ) |
48 |
abi_x86_64? ( ${ASM_DEPEND} ) |
49 |
- )" |
50 |
+ ) |
51 |
+ xxhash? ( dev-libs/xxhash ) |
52 |
+ " |
53 |
|
54 |
DOCS=( README.md doc/PATENTS THANKS.md ) |
55 |
+PATCHES=( "${FILESDIR}"/build-avoid-meson-s-symbols_have_underscore_prefix.patch ) |
56 |
|
57 |
multilib_src_configure() { |
58 |
local -a bits=() |
59 |
@@ -44,6 +48,8 @@ multilib_src_configure() { |
60 |
local emesonargs=( |
61 |
-D bitdepths=$(IFS=,; echo "${bits[*]}") |
62 |
-D enable_asm=${enable_asm} |
63 |
+ -D enable_tests=$(usex test true false) |
64 |
+ -D xxhash_muxer=$(usex xxhash enabled disabled) |
65 |
) |
66 |
meson_src_configure |
67 |
} |
68 |
|
69 |
diff --git a/media-libs/dav1d/dav1d-0.9.0.ebuild b/media-libs/dav1d/dav1d-0.9.0.ebuild |
70 |
index ae26cc566f3..f111b62346e 100644 |
71 |
--- a/media-libs/dav1d/dav1d-0.9.0.ebuild |
72 |
+++ b/media-libs/dav1d/dav1d-0.9.0.ebuild |
73 |
@@ -19,15 +19,19 @@ HOMEPAGE="https://code.videolan.org/videolan/dav1d" |
74 |
|
75 |
LICENSE="BSD-2" |
76 |
SLOT="0/5" |
77 |
-IUSE="+8bit +10bit +asm" |
78 |
+IUSE="+8bit +10bit +asm test xxhash" |
79 |
+RESTRICT="!test? ( test )" |
80 |
|
81 |
-ASM_DEPEND=">=dev-lang/nasm-2.14.02" |
82 |
+ASM_DEPEND=">=dev-lang/nasm-2.15.05" |
83 |
BDEPEND="asm? ( |
84 |
abi_x86_32? ( ${ASM_DEPEND} ) |
85 |
abi_x86_64? ( ${ASM_DEPEND} ) |
86 |
- )" |
87 |
+ ) |
88 |
+ xxhash? ( dev-libs/xxhash ) |
89 |
+ " |
90 |
|
91 |
DOCS=( README.md doc/PATENTS THANKS.md ) |
92 |
+PATCHES=( "${FILESDIR}"/build-avoid-meson-s-symbols_have_underscore_prefix.patch ) |
93 |
|
94 |
multilib_src_configure() { |
95 |
local -a bits=() |
96 |
@@ -44,6 +48,8 @@ multilib_src_configure() { |
97 |
local emesonargs=( |
98 |
-D bitdepths=$(IFS=,; echo "${bits[*]}") |
99 |
-D enable_asm=${enable_asm} |
100 |
+ -D enable_tests=$(usex test true false) |
101 |
+ -D xxhash_muxer=$(usex xxhash enabled disabled) |
102 |
) |
103 |
meson_src_configure |
104 |
} |
105 |
|
106 |
diff --git a/media-libs/dav1d/dav1d-0.9.1.ebuild b/media-libs/dav1d/dav1d-0.9.1.ebuild |
107 |
index 7dedeea1b79..f7ae3e3273b 100644 |
108 |
--- a/media-libs/dav1d/dav1d-0.9.1.ebuild |
109 |
+++ b/media-libs/dav1d/dav1d-0.9.1.ebuild |
110 |
@@ -19,15 +19,19 @@ HOMEPAGE="https://code.videolan.org/videolan/dav1d" |
111 |
|
112 |
LICENSE="BSD-2" |
113 |
SLOT="0/5" |
114 |
-IUSE="+8bit +10bit +asm" |
115 |
+IUSE="+8bit +10bit +asm test xxhash" |
116 |
+RESTRICT="!test? ( test )" |
117 |
|
118 |
-ASM_DEPEND=">=dev-lang/nasm-2.14.02" |
119 |
+ASM_DEPEND=">=dev-lang/nasm-2.15.05" |
120 |
BDEPEND="asm? ( |
121 |
abi_x86_32? ( ${ASM_DEPEND} ) |
122 |
abi_x86_64? ( ${ASM_DEPEND} ) |
123 |
- )" |
124 |
+ ) |
125 |
+ xxhash? ( dev-libs/xxhash ) |
126 |
+ " |
127 |
|
128 |
DOCS=( README.md doc/PATENTS THANKS.md ) |
129 |
+PATCHES=( "${FILESDIR}"/build-avoid-meson-s-symbols_have_underscore_prefix.patch ) |
130 |
|
131 |
multilib_src_configure() { |
132 |
local -a bits=() |
133 |
@@ -44,6 +48,8 @@ multilib_src_configure() { |
134 |
local emesonargs=( |
135 |
-D bitdepths=$(IFS=,; echo "${bits[*]}") |
136 |
-D enable_asm=${enable_asm} |
137 |
+ -D enable_tests=$(usex test true false) |
138 |
+ -D xxhash_muxer=$(usex xxhash enabled disabled) |
139 |
) |
140 |
meson_src_configure |
141 |
} |
142 |
|
143 |
diff --git a/media-libs/dav1d/dav1d-0.9.2.ebuild b/media-libs/dav1d/dav1d-0.9.2.ebuild |
144 |
index 850f1843db9..fb91a0e8cc7 100644 |
145 |
--- a/media-libs/dav1d/dav1d-0.9.2.ebuild |
146 |
+++ b/media-libs/dav1d/dav1d-0.9.2.ebuild |
147 |
@@ -19,15 +19,19 @@ HOMEPAGE="https://code.videolan.org/videolan/dav1d" |
148 |
|
149 |
LICENSE="BSD-2" |
150 |
SLOT="0/5" |
151 |
-IUSE="+8bit +10bit +asm" |
152 |
+IUSE="+8bit +10bit +asm test xxhash" |
153 |
+RESTRICT="!test? ( test )" |
154 |
|
155 |
-ASM_DEPEND=">=dev-lang/nasm-2.14.02" |
156 |
+ASM_DEPEND=">=dev-lang/nasm-2.15.05" |
157 |
BDEPEND="asm? ( |
158 |
abi_x86_32? ( ${ASM_DEPEND} ) |
159 |
abi_x86_64? ( ${ASM_DEPEND} ) |
160 |
- )" |
161 |
+ ) |
162 |
+ xxhash? ( dev-libs/xxhash ) |
163 |
+ " |
164 |
|
165 |
DOCS=( README.md doc/PATENTS THANKS.md ) |
166 |
+PATCHES=( "${FILESDIR}"/build-avoid-meson-s-symbols_have_underscore_prefix.patch ) |
167 |
|
168 |
multilib_src_configure() { |
169 |
local -a bits=() |
170 |
@@ -44,6 +48,8 @@ multilib_src_configure() { |
171 |
local emesonargs=( |
172 |
-D bitdepths=$(IFS=,; echo "${bits[*]}") |
173 |
-D enable_asm=${enable_asm} |
174 |
+ -D enable_tests=$(usex test true false) |
175 |
+ -D xxhash_muxer=$(usex xxhash enabled disabled) |
176 |
) |
177 |
meson_src_configure |
178 |
} |
179 |
|
180 |
diff --git a/media-libs/dav1d/dav1d-9999.ebuild b/media-libs/dav1d/dav1d-9999.ebuild |
181 |
index 850f1843db9..c0d92e63904 100644 |
182 |
--- a/media-libs/dav1d/dav1d-9999.ebuild |
183 |
+++ b/media-libs/dav1d/dav1d-9999.ebuild |
184 |
@@ -19,13 +19,16 @@ HOMEPAGE="https://code.videolan.org/videolan/dav1d" |
185 |
|
186 |
LICENSE="BSD-2" |
187 |
SLOT="0/5" |
188 |
-IUSE="+8bit +10bit +asm" |
189 |
+IUSE="+8bit +10bit +asm test xxhash" |
190 |
+RESTRICT="!test? ( test )" |
191 |
|
192 |
-ASM_DEPEND=">=dev-lang/nasm-2.14.02" |
193 |
+ASM_DEPEND=">=dev-lang/nasm-2.15.05" |
194 |
BDEPEND="asm? ( |
195 |
abi_x86_32? ( ${ASM_DEPEND} ) |
196 |
abi_x86_64? ( ${ASM_DEPEND} ) |
197 |
- )" |
198 |
+ ) |
199 |
+ xxhash? ( dev-libs/xxhash ) |
200 |
+ " |
201 |
|
202 |
DOCS=( README.md doc/PATENTS THANKS.md ) |
203 |
|
204 |
@@ -44,6 +47,8 @@ multilib_src_configure() { |
205 |
local emesonargs=( |
206 |
-D bitdepths=$(IFS=,; echo "${bits[*]}") |
207 |
-D enable_asm=${enable_asm} |
208 |
+ -D enable_tests=$(usex test true false) |
209 |
+ -D xxhash_muxer=$(usex xxhash enabled disabled) |
210 |
) |
211 |
meson_src_configure |
212 |
} |
213 |
|
214 |
diff --git a/media-libs/dav1d/files/build-avoid-meson-s-symbols_have_underscore_prefix.patch b/media-libs/dav1d/files/build-avoid-meson-s-symbols_have_underscore_prefix.patch |
215 |
new file mode 100644 |
216 |
index 00000000000..8a9b1e86eff |
217 |
--- /dev/null |
218 |
+++ b/media-libs/dav1d/files/build-avoid-meson-s-symbols_have_underscore_prefix.patch |
219 |
@@ -0,0 +1,32 @@ |
220 |
+From c6a08b3aa1ee99dade53e5e32033bc1d14455a22 Mon Sep 17 00:00:00 2001 |
221 |
+From: Janne Grunau <janne-vlc@××××××.net> |
222 |
+Date: Tue, 21 Sep 2021 09:30:14 +0200 |
223 |
+Subject: [PATCH 1/5] build: avoid meson's symbols_have_underscore_prefix |
224 |
+ |
225 |
+Meson's dynamic check is unreliable when additional compiler flags are |
226 |
+passed via CFLAGS. For example '-fprofile-instr-generate' in oss-fuzz' |
227 |
+coverage build. Fixes #370. |
228 |
+--- |
229 |
+ meson.build | 6 +++++- |
230 |
+ 1 file changed, 5 insertions(+), 1 deletion(-) |
231 |
+ |
232 |
+diff --git a/meson.build b/meson.build |
233 |
+index 1bf69ab..1a7c409 100644 |
234 |
+--- a/meson.build |
235 |
++++ b/meson.build |
236 |
+@@ -382,7 +382,11 @@ endif |
237 |
+ |
238 |
+ cdata.set10('ARCH_PPC64LE', host_machine.cpu() == 'ppc64le') |
239 |
+ |
240 |
+-if cc.symbols_have_underscore_prefix() |
241 |
++# meson's cc.symbols_have_underscore_prefix() is unfortunately unrelieably |
242 |
++# when additional flags like '-fprofile-instr-generate' are passed via CFLAGS |
243 |
++# see following meson issue https://github.com/mesonbuild/meson/issues/5482 |
244 |
++if (host_machine.system() == 'darwin' or |
245 |
++ (host_machine.system() == 'windows' and host_machine.cpu_family() == 'x86')) |
246 |
+ cdata.set10('PREFIX', true) |
247 |
+ cdata_asm.set10('PREFIX', true) |
248 |
+ endif |
249 |
+-- |
250 |
+2.32.0 |
251 |
+ |
252 |
|
253 |
diff --git a/media-libs/dav1d/metadata.xml b/media-libs/dav1d/metadata.xml |
254 |
index edef4df0c98..fbe7f555d99 100644 |
255 |
--- a/media-libs/dav1d/metadata.xml |
256 |
+++ b/media-libs/dav1d/metadata.xml |
257 |
@@ -8,6 +8,7 @@ |
258 |
<flag name="8bit">Add support for decoding 8-bit AV1.</flag> |
259 |
<flag name="10bit">Add support for building 10-bit and 12-bit AV1.</flag> |
260 |
<flag name="asm">Enable custom assembly for faster decoding.</flag> |
261 |
+ <flag name="xxhash">Enable <pkg>dev-libs/xxhash</pkg> support for hashing muxer</flag> |
262 |
</use> |
263 |
<upstream> |
264 |
<bugs-to>https://code.videolan.org/videolan/dav1d/issues</bugs-to> |