Gentoo Archives: gentoo-commits

From: "Anthony G. Basile" <blueness@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/releng:master commit in: media-libs/alsa-lib/, media-libs/alsa-lib/files/
Date: Sat, 22 Feb 2014 14:19:49
Message-Id: 1393078480.150206427e15729496616b4af7ef7f19b7f0bd16.blueness@gentoo
1 commit: 150206427e15729496616b4af7ef7f19b7f0bd16
2 Author: Felix Janda <felix.janda <AT> posteo <DOT> de>
3 AuthorDate: Sun Feb 16 21:39:07 2014 +0000
4 Commit: Anthony G. Basile <blueness <AT> gentoo <DOT> org>
5 CommitDate: Sat Feb 22 14:14:40 2014 +0000
6 URL: http://git.overlays.gentoo.org/gitweb/?p=proj/releng.git;a=commit;h=15020642
7
8 media-libs/alsa-lib: move to tree
9
10 ---
11 media-libs/alsa-lib/Manifest | 7 ++
12 media-libs/alsa-lib/alsa-lib-1.0.27.1-r99.ebuild | 79 ++++++++++++++++++++++
13 .../alsa-lib/files/alsa-lib-1.0.25-pcm-h.patch | 27 ++++++++
14 .../alsa-lib/files/alsa-lib-1.0.27.1-musl.patch | 24 +++++++
15 .../alsa-lib/files/alsa-lib-1.0.27.1-rewind.patch | 40 +++++++++++
16 .../files/alsa-lib-1.0.27.2-portable-mutex.patch | 35 ++++++++++
17 media-libs/alsa-lib/metadata.xml | 14 ++++
18 7 files changed, 226 insertions(+)
19
20 diff --git a/media-libs/alsa-lib/Manifest b/media-libs/alsa-lib/Manifest
21 new file mode 100644
22 index 0000000..b252482
23 --- /dev/null
24 +++ b/media-libs/alsa-lib/Manifest
25 @@ -0,0 +1,7 @@
26 +AUX alsa-lib-1.0.25-pcm-h.patch 1177 SHA256 e6525c81b77f5b5ba48ce2ba16be2622f54a7090e1268be5f5198e2490c9cf45 SHA512 de62a1a1bfed51fc0482a145ed5fce7451b314a84a8c616f2af5f5e1f033da78f2a7800dc0b0921022d934efba110598a9d98d846c71b7861f2867c04093def2 WHIRLPOOL 395ccc8faa5bc59cee8f442224ddee9d1908c24918fd1bdfdd041454eaead4ba1f3e0895bf6d55f1ccbd92378bdc08e6681040ea01c713413aacbf500e008000
27 +AUX alsa-lib-1.0.27.1-musl.patch 965 SHA256 f0f7079e38691bbb65418b097c4c66de2837237d33f0873b2403eca9145b7489 SHA512 6cee79a298214c3a541cb5f523ed44957b169b8bef14d47792cc1f17b0887ae59018097e150c602fef4e70e486da983d495499916691dd7e5e0b512c6e194051 WHIRLPOOL 52767ab59ea59a127fac6470c6b0a843bcba9389b5b34ba5133f91f1b5d70e7b06846e9ae1d4ca73791a98cdc4be17ee6948ae0ea51d80733b69567fd93c532d
28 +AUX alsa-lib-1.0.27.1-rewind.patch 1514 SHA256 b13b1758f1d54cae12510ccfc29ae3ccca0ab8e7ff97798d1de834a30f252fea SHA512 67b38120d4d8be74fecf55af639fb1a3c9c118f1f0b1c55eee81b65693d1fee753c02eea6cabdd0273299d0c6af6e155a91e88efb900040c3069901fc8b2774e WHIRLPOOL fc6adbb7f833efaabfd40f3a4b76f27d1f5a7afdd02ca2b405a91ebf3f483fa03078710223116e0e1f1f2e273c8e26df9a5d5747db247b3bbbb617f9ff893cfc
29 +AUX alsa-lib-1.0.27.2-portable-mutex.patch 894 SHA256 a26d381704f336fef02de6d8413434c56b6cc1401f30d66c10f5602cfd4ec523 SHA512 e4fa707e714fe61628da3cb42adf9c69edfdde48ea034dd72ec34def26b9918f61000ab2343cffe97a55c275a3db0c8b0e7173bfc4c64a5eb74b1887ff4126dc WHIRLPOOL 2b611d0737b9e57fe8a3f089e2ea81ee69e923c8168e17758565601cb94d31616908496fa4073cb0bd8687e8ef2b0fa303f52404469b64f4844c96a8962e1958
30 +DIST alsa-lib-1.0.27.1.tar.bz2 906234 SHA256 690e07a3ef6270d40ed2130638dba3c18395aae8db4a109bcc473643ce29a03b SHA512 546a52c5c23d51e3a49a36565c0bdda98efc3bbe8ba217c72cfb6986b0e1a6104a3040bc223a74966139416ce39709421a3131f3edb29362a3f949b0ae939909 WHIRLPOOL 485a5b260edc208776ca553d13065d242f1266e38b25dab252596fc8d4c9c3482d11fd3e472c7c96c97b396718a715ca12f36c76635bd069ebe09edc6815693f
31 +EBUILD alsa-lib-1.0.27.1-r99.ebuild 2009 SHA256 fbbc786928b8e42d581caf9fd1efc161403bbf15d400e0265d324549aae5ed34 SHA512 4e9f5afebd6c875f535d39002d61501e2d710a7bc523b8bf94e508fbc8e2c14c0e22be8d604281f771909f1c75db1bf584ed09309ab0c7b3bc27e430b59a9f72 WHIRLPOOL 561c8b3f7a3690f6f575404eb8155ec3a0008c1a84eb541425cd484076c06b330d89ef51ed7d3c4b9b091ba8d4ca00035ad2d4fa9b3a8e16ad28669ce4077953
32 +MISC metadata.xml 443 SHA256 2c3e6e0b3b3cfb7d4cd1b35cb092bc3e0fb60688f7aaedc29133408d00437fba SHA512 ba3c80c882e081177bf371ebd8d8fa3696f0cdd8c214333f4a5515e7d2997884ffddb56559ce51e818fdf8516af0529eaed01e6048f582feddc701d9f27bdb30 WHIRLPOOL 8537995f235dbfaf3c242868af177df5199762de1842f0f7085388dbe86e7821ffe137bb3ea6591d45a36bed5499128e7724a8675bff124b676994e723062a2b
33
34 diff --git a/media-libs/alsa-lib/alsa-lib-1.0.27.1-r99.ebuild b/media-libs/alsa-lib/alsa-lib-1.0.27.1-r99.ebuild
35 new file mode 100644
36 index 0000000..7f8b983
37 --- /dev/null
38 +++ b/media-libs/alsa-lib/alsa-lib-1.0.27.1-r99.ebuild
39 @@ -0,0 +1,79 @@
40 +# Copyright 1999-2013 Gentoo Foundation
41 +# Distributed under the terms of the GNU General Public License v2
42 +# $Header: /var/cvsroot/gentoo-x86/media-libs/alsa-lib/alsa-lib-1.0.27.1.ebuild,v 1.15 2013/09/01 18:36:03 ago Exp $
43 +
44 +EAPI=5
45 +
46 +# no support for python3_2 or above yet wrt #471326
47 +PYTHON_COMPAT=( python2_7 )
48 +
49 +inherit autotools eutils multilib python-single-r1
50 +
51 +DESCRIPTION="Advanced Linux Sound Architecture Library"
52 +HOMEPAGE="http://www.alsa-project.org/"
53 +SRC_URI="mirror://alsaproject/lib/${P}.tar.bz2"
54 +
55 +LICENSE="LGPL-2.1"
56 +SLOT="0"
57 +KEYWORDS="amd64 arm x86"
58 +IUSE="doc debug alisp python"
59 +
60 +RDEPEND="python? ( ${PYTHON_DEPS} )"
61 +DEPEND="${RDEPEND}
62 + doc? ( >=app-doc/doxygen-1.2.6 )"
63 +
64 +pkg_setup() {
65 + use python && python-single-r1_pkg_setup
66 +}
67 +
68 +src_prepare() {
69 + find . -name Makefile.am -exec sed -i -e '/CFLAGS/s:-g -O2::' {} + || die
70 + # force use of correct python-config wrt #478802
71 + if [[ ${ABI} == ${DEFAULT_ABI} ]]; then
72 + use python && { sed -i -e "s:python-config:$EPYTHON-config:" configure.in || die; }
73 + fi
74 + epatch "${FILESDIR}"/${P}-rewind.patch #477282
75 + epatch "${FILESDIR}"/${P}-musl.patch
76 + epatch "${FILESDIR}"/${PN}-1.0.25-pcm-h.patch
77 + epatch "${FILESDIR}"/${PN}-1.0.27.2-portable-mutex.patch
78 + epatch_user
79 + eautoreconf
80 +}
81 +
82 +src_configure() {
83 + local myconf
84 + use elibc_uclibc && myconf="--without-versioned"
85 +
86 + ECONF_SOURCE=${S} \
87 + econf \
88 + --disable-maintainer-mode \
89 + --enable-shared \
90 + --disable-resmgr \
91 + --enable-rawmidi \
92 + --enable-seq \
93 + --enable-aload \
94 + $(use_with debug) \
95 + $(use_enable alisp) \
96 + $(use_enable python) \
97 + ${myconf}
98 +}
99 +
100 +src_compile() {
101 + emake
102 +
103 + if use doc; then
104 + emake doc
105 + fgrep -Zrl "${S}" doc/doxygen/html | \
106 + xargs -0 sed -i -e "s:${S}::"
107 + fi
108 +}
109 +
110 +src_install() {
111 + emake DESTDIR="${D}" install
112 + if use doc; then
113 + dohtml -r doc/doxygen/html/.
114 + fi
115 + prune_libtool_files --all
116 + find "${ED}"/usr/$(get_libdir)/alsa-lib -name '*.a' -exec rm -f {} +
117 + dodoc ChangeLog doc/asoundrc.txt NOTES TODO
118 +}
119
120 diff --git a/media-libs/alsa-lib/files/alsa-lib-1.0.25-pcm-h.patch b/media-libs/alsa-lib/files/alsa-lib-1.0.25-pcm-h.patch
121 new file mode 100644
122 index 0000000..7d6dc13
123 --- /dev/null
124 +++ b/media-libs/alsa-lib/files/alsa-lib-1.0.25-pcm-h.patch
125 @@ -0,0 +1,27 @@
126 +taken from sabotage linux
127 +
128 +--- alsa-lib-1.0.25/include/pcm.h
129 ++++ alsa-lib-1.0.25.patched/include/pcm.h
130 +@@ -33,6 +33,7 @@
131 + extern "C" {
132 + #endif
133 +
134 ++#include <stdint.h>
135 + /**
136 + * \defgroup PCM PCM Interface
137 + * See the \ref pcm page for more details.
138 +@@ -941,10 +942,10 @@
139 + int snd_pcm_format_physical_width(snd_pcm_format_t format); /* in bits */
140 + snd_pcm_format_t snd_pcm_build_linear_format(int width, int pwidth, int unsignd, int big_endian);
141 + ssize_t snd_pcm_format_size(snd_pcm_format_t format, size_t samples);
142 +-u_int8_t snd_pcm_format_silence(snd_pcm_format_t format);
143 +-u_int16_t snd_pcm_format_silence_16(snd_pcm_format_t format);
144 +-u_int32_t snd_pcm_format_silence_32(snd_pcm_format_t format);
145 +-u_int64_t snd_pcm_format_silence_64(snd_pcm_format_t format);
146 ++uint8_t snd_pcm_format_silence(snd_pcm_format_t format);
147 ++uint16_t snd_pcm_format_silence_16(snd_pcm_format_t format);
148 ++uint32_t snd_pcm_format_silence_32(snd_pcm_format_t format);
149 ++uint64_t snd_pcm_format_silence_64(snd_pcm_format_t format);
150 + int snd_pcm_format_set_silence(snd_pcm_format_t format, void *buf, unsigned int samples);
151 +
152 + snd_pcm_sframes_t snd_pcm_bytes_to_frames(snd_pcm_t *pcm, ssize_t bytes);
153
154 diff --git a/media-libs/alsa-lib/files/alsa-lib-1.0.27.1-musl.patch b/media-libs/alsa-lib/files/alsa-lib-1.0.27.1-musl.patch
155 new file mode 100644
156 index 0000000..0521fe0
157 --- /dev/null
158 +++ b/media-libs/alsa-lib/files/alsa-lib-1.0.27.1-musl.patch
159 @@ -0,0 +1,24 @@
160 +diff -ur a/alsa-lib-1.0.27.1/configure.in b/alsa-lib-1.0.27.1/configure.in
161 +--- a/alsa-lib-1.0.27.1/configure.in 2013-05-21 08:48:28.000000000 +0000
162 ++++ b/alsa-lib-1.0.27.1/configure.in 2014-02-16 21:04:29.833236371 +0000
163 +@@ -64,7 +64,7 @@
164 +
165 + dnl Checks for library functions.
166 + AC_PROG_GCC_TRADITIONAL
167 +-AC_CHECK_FUNC([hsearch_r], [HAVE_HSEARCH_R=yes])
168 ++AC_CHECK_FUNC([hsearch], [HAVE_HSEARCH_R=yes])
169 + AM_CONDITIONAL([ALSA_HSEARCH_R], [test "x$HAVE_HSEARCH_R" != xyes])
170 + AC_CHECK_FUNCS([uselocale])
171 +
172 +diff -ur a/alsa-lib-1.0.27.1/include/global.h b/alsa-lib-1.0.27.1/include/global.h
173 +--- a/alsa-lib-1.0.27.1/include/global.h 2013-05-21 08:48:28.000000000 +0000
174 ++++ b/alsa-lib-1.0.27.1/include/global.h 2014-02-16 20:08:10.954478169 +0000
175 +@@ -133,7 +133,7 @@
176 +
177 + int snd_user_file(const char *file, char **result);
178 +
179 +-#if !defined(_POSIX_C_SOURCE) && !defined(_POSIX_SOURCE)
180 ++#if 0
181 + struct timeval {
182 + time_t tv_sec; /* seconds */
183 + long tv_usec; /* microseconds */
184
185 diff --git a/media-libs/alsa-lib/files/alsa-lib-1.0.27.1-rewind.patch b/media-libs/alsa-lib/files/alsa-lib-1.0.27.1-rewind.patch
186 new file mode 100644
187 index 0000000..f585645
188 --- /dev/null
189 +++ b/media-libs/alsa-lib/files/alsa-lib-1.0.27.1-rewind.patch
190 @@ -0,0 +1,40 @@
191 +From f2d39afe6139ab16aa2aeea0f51f32db79ab1262 Mon Sep 17 00:00:00 2001
192 +From: David Henningsson <david.henningsson@×××××××××.com>
193 +Date: Thu, 30 May 2013 12:26:34 +0200
194 +Subject: [PATCH] pcm_plugin: Fix return value of snd_pcm_rewind
195 +
196 +In case the rewind did not rewind as much as expected, e g due to
197 +time delay between the latest avail update and the rewind, we must
198 +properly account for that in the plugin layer.
199 +
200 +Otherwise, the plugin's appl ptr and the hw's appl ptr become
201 +unsynchronised, which is very bad, especially in mmap_shadow plugins,
202 +e g, this could cause the overlapping memcpy in the softvol plugin
203 +as seen here:
204 +https://bugs.freedesktop.org/show_bug.cgi?id=64299
205 +
206 +Signed-off-by: David Henningsson <david.henningsson@×××××××××.com>
207 +Signed-off-by: Jaroslav Kysela <perex@×××××.cz>
208 +---
209 + src/pcm/pcm_plugin.c | 4 ++--
210 + 1 file changed, 2 insertions(+), 2 deletions(-)
211 +
212 +diff --git a/src/pcm/pcm_plugin.c b/src/pcm/pcm_plugin.c
213 +index 96218a8..17157e8 100644
214 +--- a/src/pcm/pcm_plugin.c
215 ++++ b/src/pcm/pcm_plugin.c
216 +@@ -219,9 +219,9 @@ static snd_pcm_sframes_t snd_pcm_plugin_rewind(snd_pcm_t *pcm, snd_pcm_uframes_t
217 + snd_atomic_write_end(&plugin->watom);
218 + return sframes;
219 + }
220 +- snd_pcm_mmap_appl_backward(pcm, (snd_pcm_uframes_t) frames);
221 ++ snd_pcm_mmap_appl_backward(pcm, (snd_pcm_uframes_t) sframes);
222 + snd_atomic_write_end(&plugin->watom);
223 +- return (snd_pcm_sframes_t) frames;
224 ++ return (snd_pcm_sframes_t) sframes;
225 + }
226 +
227 + static snd_pcm_sframes_t snd_pcm_plugin_forwardable(snd_pcm_t *pcm)
228 +--
229 +1.7.11.7
230 +
231
232 diff --git a/media-libs/alsa-lib/files/alsa-lib-1.0.27.2-portable-mutex.patch b/media-libs/alsa-lib/files/alsa-lib-1.0.27.2-portable-mutex.patch
233 new file mode 100644
234 index 0000000..c4f90d2
235 --- /dev/null
236 +++ b/media-libs/alsa-lib/files/alsa-lib-1.0.27.2-portable-mutex.patch
237 @@ -0,0 +1,35 @@
238 +taken from sabotage linux
239 +
240 +--- alsa-lib-1.0.27.2.orig/src/conf.c
241 ++++ alsa-lib-1.0.27.2/src/conf.c
242 +@@ -427,8 +427,8 @@
243 + #ifndef DOC_HIDDEN
244 +
245 + #ifdef HAVE_LIBPTHREAD
246 +-static pthread_mutex_t snd_config_update_mutex =
247 +- PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP;
248 ++static pthread_mutex_t snd_config_update_mutex;
249 ++static pthread_once_t snd_config_update_mutex_once = PTHREAD_ONCE_INIT;
250 + #endif
251 +
252 + struct _snd_config {
253 +@@ -472,8 +472,19 @@
254 +
255 + #ifdef HAVE_LIBPTHREAD
256 +
257 ++static void snd_config_init_mutex(void)
258 ++{
259 ++ pthread_mutexattr_t attr;
260 ++
261 ++ pthread_mutexattr_init(&attr);
262 ++ pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE);
263 ++ pthread_mutex_init(&snd_config_update_mutex, &attr);
264 ++ pthread_mutexattr_destroy(&attr);
265 ++}
266 ++
267 + static inline void snd_config_lock(void)
268 + {
269 ++ pthread_once(&snd_config_update_mutex_once, snd_config_init_mutex);
270 + pthread_mutex_lock(&snd_config_update_mutex);
271 + }
272 +
273
274 diff --git a/media-libs/alsa-lib/metadata.xml b/media-libs/alsa-lib/metadata.xml
275 new file mode 100644
276 index 0000000..0ea67ae
277 --- /dev/null
278 +++ b/media-libs/alsa-lib/metadata.xml
279 @@ -0,0 +1,14 @@
280 +<?xml version="1.0" encoding="UTF-8"?>
281 +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
282 +<pkgmetadata>
283 + <herd>alsa</herd>
284 + <maintainer>
285 + <email>alsa-bugs@g.o</email>
286 + </maintainer>
287 + <use>
288 + <flag name="alisp">Enable support for ALISP (ALSA LISP) interpreter for advanced features.</flag>
289 + </use>
290 + <upstream>
291 + <remote-id type="cpe">cpe:/a:alsa-project:alsa-lib</remote-id>
292 + </upstream>
293 +</pkgmetadata>