diff options
Diffstat (limited to 'main/alsa-utils')
-rw-r--r-- | main/alsa-utils/APKBUILD | 6 | ||||
-rw-r--r-- | main/alsa-utils/alsa-utils_portable-mutex.patch | 27 |
2 files changed, 32 insertions, 1 deletions
diff --git a/main/alsa-utils/APKBUILD b/main/alsa-utils/APKBUILD index d1b9cb258..1b788bc50 100644 --- a/main/alsa-utils/APKBUILD +++ b/main/alsa-utils/APKBUILD @@ -2,7 +2,7 @@ # Maintainer: Natanael Copa <ncopa@alpinelinux.org> pkgname=alsa-utils pkgver=1.0.27.2 -pkgrel=0 +pkgrel=1 pkgdesc="Advanced Linux Sound Architecture Utils (alsactl, alsamixer, etc.)" url="http://www.alsa-project.org" arch="all" @@ -11,6 +11,7 @@ makedepends="alsa-lib-dev pciutils-dev ncurses-dev" depends="dialog" subpackages="$pkgname-doc alsaconf" source="ftp://ftp.alsa-project.org/pub/utils/$pkgname-$pkgver.tar.bz2 + alsa-utils_portable-mutex.patch alsaconf.patch alsa.initd alsa.confd @@ -56,14 +57,17 @@ alsaconf() { } md5sums="b65e9a04181bd7c9db7667a4566f8dc3 alsa-utils-1.0.27.2.tar.bz2 +09fdba7a9ad005874b83e6066a1f4379 alsa-utils_portable-mutex.patch 5e65f278b5a77e3ee2821ad955c4cd91 alsaconf.patch b1b7eca57f5ddf64db5527193d62f268 alsa.initd 85b1f1e759fe5953eca329237f4ac256 alsa.confd" sha256sums="02bfac39092f3b68d743c23ad3d688d6c5aa8df69f2ccd692c5b8282edb352ea alsa-utils-1.0.27.2.tar.bz2 +9ff84967047d60ab9f635df4aeded9220dd41f71206e3be33425877c285c0b34 alsa-utils_portable-mutex.patch b99468473fe20de4fac3aeae833612837ff1cb576e68674463fe1efd0aed6d19 alsaconf.patch 765cda11c23003f81ae61d30a5db78d10f4de1dd2ba273a46715b0fc292d4391 alsa.initd e5d26a6ea993540ca2d67aee4b40f1351b13f2c8023d53cb67c22cb3707e72de alsa.confd" sha512sums="c9a4943852ec1a71a5a8d2c99e1df0ba96a5d9d1196cabfdb6655f58c6a9a5a9d40dea62de019f5ed0fad0885800403c48a4a6c86b67af7fbd842097881c2bd6 alsa-utils-1.0.27.2.tar.bz2 +0863ab69301ec7e0cab4ac6130f3d0268a8ca82d3697a6632e366b11a66b57a0339fa61da46718a6aa588b3af9d3e5f3466e7296ae3c020d9cf5d9d3df227761 alsa-utils_portable-mutex.patch bc9f1297574fe4d5bd9baa3f299d68684182f1e6eeb51c862cd6236563516f57a160a00d6607540830aebbb8c4352faf416a981edc878e8a256cbbcc95648614 alsaconf.patch 4b6da76ae190679f39056303f2fb67d6f9ea344a350d381abfaf1abc52e6ec373554326655da79ffc5f2eda2437ffd79ed6d0f10d9737d16b1bcd064430e8ca0 alsa.initd a2ae4d3f7e7bbd799d69ede7e1f052147ebbf2763d8ef6c061832208e330aebe72b112cd36f227645b4543c5388a45db8c0a534a9ec4b6351cfad6584ad6922c alsa.confd" diff --git a/main/alsa-utils/alsa-utils_portable-mutex.patch b/main/alsa-utils/alsa-utils_portable-mutex.patch new file mode 100644 index 000000000..5def7830d --- /dev/null +++ b/main/alsa-utils/alsa-utils_portable-mutex.patch @@ -0,0 +1,27 @@ +--- alsa-utils-1.0.27.2.org/alsaloop/pcmjob.c ++++ alsa-utils-1.0.27.2/alsaloop/pcmjob.c +@@ -62,11 +62,22 @@ + }; + #endif + +-static pthread_mutex_t pcm_open_mutex = +- PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP; ++static pthread_once_t pcm_open_mutex_once = PTHREAD_ONCE_INIT; ++static pthread_mutex_t pcm_open_mutex; + ++static void pcm_open_init_mutex(void) ++{ ++ pthread_mutexattr_t attr; ++ ++ pthread_mutexattr_init(&attr); ++ pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE); ++ pthread_mutex_init(&pcm_open_mutex, &attr); ++ pthread_mutexattr_destroy(&attr); ++} ++ + static inline void pcm_open_lock(void) + { ++ pthread_once(&pcm_open_mutex_once, pcm_open_init_mutex); + if (workarounds & WORKAROUND_SERIALOPEN) + pthread_mutex_lock(&pcm_open_mutex); + } |