alsa-lib: update to 1.2.11

This commit is contained in:
cinerea0 2024-02-14 17:15:51 -05:00 committed by cinerea0
parent e7403fa127
commit 5c4cb6bad9
4 changed files with 3 additions and 159 deletions

View file

@ -1,110 +0,0 @@
From 0e3dfb9f705ca78be34cd70fd59d67c431e29cc7 Mon Sep 17 00:00:00 2001
From: Takashi Iwai <tiwai@suse.de>
Date: Sat, 9 Sep 2023 17:42:03 +0200
Subject: [PATCH] pcm: Fix segfault with 32bit libs
The recent rearrangement of header inclusion order caused a regression
showing segfaults on 32bit Arm. The primary reason is the
inconsistent compile condition depending on the inclusion of config.h;
while most of other code include pcm_local.h (that implicitly includes
config.h) at first, pcm_direct.c doesn't do it, hence the access with
direct plugins crashes.
For fixing it, we need to include config.h at the beginning. But,
it's better to include pcm_local.h for all relevant code for
consistency. The patch does it, and also it adds the guard in
pcm_local.h for double inclusions.
Fixes: ad3a8b8b314e ("reshuffle included files to include config.h as first")
Link: https://github.com/alsa-project/alsa-lib/issues/352
Signed-off-by: Takashi Iwai <tiwai@suse.de>
---
src/pcm/pcm_direct.c | 1 +
src/pcm/pcm_dmix.c | 2 +-
src/pcm/pcm_dshare.c | 1 +
src/pcm/pcm_dsnoop.c | 1 +
src/pcm/pcm_local.h | 5 +++++
src/pcm/pcm_shm.c | 1 +
6 files changed, 10 insertions(+), 1 deletion(-)
diff --git a/src/pcm/pcm_direct.c b/src/pcm/pcm_direct.c
index 040fc160..e53e5923 100644
--- a/src/pcm/pcm_direct.c
+++ b/src/pcm/pcm_direct.c
@@ -19,6 +19,7 @@
*
*/
+#include "pcm_local.h"
#include <stdio.h>
#include <stdlib.h>
#include <stddef.h>
diff --git a/src/pcm/pcm_dmix.c b/src/pcm/pcm_dmix.c
index 7cd3c508..55cae3e7 100644
--- a/src/pcm/pcm_dmix.c
+++ b/src/pcm/pcm_dmix.c
@@ -26,7 +26,7 @@
*
*/
-#include "config.h"
+#include "pcm_local.h"
#include <stdio.h>
#include <stdlib.h>
#include <stddef.h>
diff --git a/src/pcm/pcm_dshare.c b/src/pcm/pcm_dshare.c
index 454b39a9..c0329098 100644
--- a/src/pcm/pcm_dshare.c
+++ b/src/pcm/pcm_dshare.c
@@ -26,6 +26,7 @@
*
*/
+#include "pcm_local.h"
#include <stdio.h>
#include <stdlib.h>
#include <stddef.h>
diff --git a/src/pcm/pcm_dsnoop.c b/src/pcm/pcm_dsnoop.c
index d3ce300c..bf67c68a 100644
--- a/src/pcm/pcm_dsnoop.c
+++ b/src/pcm/pcm_dsnoop.c
@@ -26,6 +26,7 @@
*
*/
+#include "pcm_local.h"
#include <stdio.h>
#include <stdlib.h>
#include <stddef.h>
diff --git a/src/pcm/pcm_local.h b/src/pcm/pcm_local.h
index 6a0e71e7..152c92c3 100644
--- a/src/pcm/pcm_local.h
+++ b/src/pcm/pcm_local.h
@@ -20,6 +20,9 @@
*
*/
+#ifndef __PCM_LOCAL_H
+#define __PCM_LOCAL_H
+
#include "config.h"
#include <stdio.h>
@@ -1223,3 +1226,5 @@ static inline void snd_pcm_unlock(snd_pcm_t *pcm)
#define snd_pcm_lock(pcm) do {} while (0)
#define snd_pcm_unlock(pcm) do {} while (0)
#endif /* THREAD_SAFE_API */
+
+#endif /* __PCM_LOCAL_H */
diff --git a/src/pcm/pcm_shm.c b/src/pcm/pcm_shm.c
index f0bfd934..d9596547 100644
--- a/src/pcm/pcm_shm.c
+++ b/src/pcm/pcm_shm.c
@@ -26,6 +26,7 @@
*
*/
+#include "pcm_local.h"
#include <stdio.h>
#include <stdlib.h>
#include <stddef.h>

View file

@ -1,31 +0,0 @@
# Fixes compilation issue on musl
# Upstream: https://github.com/alsa-project/alsa-lib/commit/10bd599970acc71c92f85eb08943eb8d3d702a9c
diff --git a/include/global.h b/include/global.h
index dfe9bc2b..3ecaeee8 100644
--- a/include/global.h
+++ b/include/global.h
@@ -51,6 +51,11 @@ const char *snd_asoundlib_version(void);
#define ATTRIBUTE_UNUSED __attribute__ ((__unused__))
#endif
+#ifndef __STRING
+/** \brief Return 'x' argument as string */
+#define __STRING(x) #x
+#endif
+
#ifdef PIC /* dynamic build */
/** \hideinitializer \brief Helper macro for #SND_DLSYM_BUILD_VERSION. */
@@ -71,11 +76,6 @@ struct snd_dlsym_link {
extern struct snd_dlsym_link *snd_dlsym_start;
-#ifndef __STRING
-/** \brief Return 'x' argument as string */
-#define __STRING(x) #x
-#endif
-
/** \hideinitializer \brief Helper macro for #SND_DLSYM_BUILD_VERSION. */
#define __SND_DLSYM_VERSION(prefix, name, version) _ ## prefix ## name ## version
/**

View file

@ -1,15 +0,0 @@
# Fixes ump header detection when used by external programs
# Upstream: https://github.com/alsa-project/alsa-lib/commit/fcce13a6726c52882bd8b7131c61c4eba308792c
diff --git a/include/control.h b/include/control.h
index ab482ba4..e7541d56 100644
--- a/include/control.h
+++ b/include/control.h
@@ -413,6 +413,8 @@ int snd_ctl_pcm_prefer_subdevice(snd_ctl_t *ctl, int subdev);
int snd_ctl_rawmidi_next_device(snd_ctl_t *ctl, int * device);
int snd_ctl_rawmidi_info(snd_ctl_t *ctl, snd_rawmidi_info_t * info);
int snd_ctl_rawmidi_prefer_subdevice(snd_ctl_t *ctl, int subdev);
+#endif
+#ifdef __ALSA_UMP_H
int snd_ctl_ump_next_device(snd_ctl_t *ctl, int *device);
int snd_ctl_ump_endpoint_info(snd_ctl_t *ctl, snd_ump_endpoint_info_t *info);
int snd_ctl_ump_block_info(snd_ctl_t *ctl, snd_ump_block_info_t *info);

View file

@ -1,7 +1,7 @@
# Template file for 'alsa-lib'
pkgname=alsa-lib
version=1.2.10
revision=2
version=1.2.11
revision=1
build_style=gnu-configure
hostmakedepends="pkg-config libtool"
short_desc="Advanced Linux Sound Architecture (ALSA) library"
@ -9,7 +9,7 @@ maintainer="cinerea0 <cinerea0@protonmail.com>"
license="LGPL-2.1-or-later"
homepage="http://www.alsa-project.org"
distfiles="https://www.alsa-project.org/files/pub/lib/alsa-lib-${version}.tar.bz2"
checksum=c86a45a846331b1b0aa6e6be100be2a7aef92efd405cf6bac7eef8174baa920e
checksum=9f3f2f69b995f9ad37359072fbc69a3a88bfba081fc83e9be30e14662795bb4d
alsa-lib-devel_package() {
depends="${sourcepkg}>=${version}_${revision}"