Compare commits

...

No commits in common. "c8" and "c10s" have entirely different histories.
c8 ... c10s

14 changed files with 211 additions and 2591 deletions

View File

@ -1,2 +0,0 @@
4b3a804d873807f2e48ecf6278d71655651e1e9d SOURCES/alsa-lib-1.2.10.tar.bz2
5f1ed71a3e30698b6467c2572896fda146f6f74b SOURCES/alsa-ucm-conf-1.2.10.tar.bz2

5
.gitignore vendored
View File

@ -1,2 +1,3 @@
SOURCES/alsa-lib-1.2.10.tar.bz2 /alsa-lib-1.*.tar.bz2
SOURCES/alsa-ucm-conf-1.2.10.tar.bz2 /alsa-topology-conf-1.*.tar.bz2
/alsa-ucm-conf-1.*.tar.bz2

View File

@ -1,533 +0,0 @@
From 9685505bf438467d9b11919b332b066d3a1c94d0 Mon Sep 17 00:00:00 2001
From: Jaroslav Kysela <perex@perex.cz>
Date: Mon, 4 Sep 2023 09:37:29 +0200
Subject: [PATCH 1/6] gitcompile: Add static build
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
---
gitcompile | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/gitcompile b/gitcompile
index 0fe092ce..c70448f7 100755
--- a/gitcompile
+++ b/gitcompile
@@ -32,6 +32,10 @@ if [ $# -ne 0 ]; then
lto="-flto -flto-partition=none"
echo "Forced lto build..."
shift ;;
+ static)
+ static=yes
+ echo "Selected static build..."
+ shift ;;
*)
endloop=yes
;;
@@ -75,6 +79,12 @@ if [ "$python2" = "yes" ]; then
args="$args --enable-python2"
fi
+if [ "$static" = "yes" ]; then
+ #args="$args --enable-shared=no --enable-static=yes"
+ args="$args --disable-shared"
+fi
+
+
touch ltconfig
libtoolize --force --copy --automake
aclocal $ACLOCAL_FLAGS
--
2.41.0
From fcce13a6726c52882bd8b7131c61c4eba308792c Mon Sep 17 00:00:00 2001
From: Jaroslav Kysela <perex@perex.cz>
Date: Mon, 4 Sep 2023 09:38:26 +0200
Subject: [PATCH 2/6] control.h: Fix ump header file detection
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Apparently, the control.h is used from apps separately (outside
asoundlib.h). Avoid errors like:
/usr/include/alsa/control.h:417:47: error: snd_ump_endpoint_info_t has not been declared
417 | int snd_ctl_ump_endpoint_info(snd_ctl_t *ctl, snd_ump_endpoint_info_t *info);
| ^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/alsa/control.h:418:44: error: snd_ump_block_info_t has not been declared
418 | int snd_ctl_ump_block_info(snd_ctl_t *ctl, snd_ump_block_info_t *info);
| ^~~~~~~~~~~~~~~~~~~~
Fixes: https://github.com/alsa-project/alsa-lib/issues/348
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
---
include/control.h | 2 ++
1 file changed, 2 insertions(+)
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);
--
2.41.0
From 10bd599970acc71c92f85eb08943eb8d3d702a9c Mon Sep 17 00:00:00 2001
From: Jaroslav Kysela <perex@perex.cz>
Date: Wed, 6 Sep 2023 15:16:44 +0200
Subject: [PATCH 3/6] global.h: move __STRING() macro outside !PIC ifdef block
It solves the musl libc compilation issue.
control.c: In function 'snd_ctl_open_conf':
../../include/global.h:98:36: warning: implicit declaration of function '__STRING' [-Wimplicit-function-declaratio]
98 | #define SND_DLSYM_VERSION(version) __STRING(version)
| ^~~~~~~~
Fixes: https://github.com/alsa-project/alsa-lib/issues/350
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
---
include/global.h | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
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
/**
--
2.41.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 4/6] 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>
--
2.41.0
From 81a7a93636d9472fcb0c2ff32d9bfdf6ed10763d Mon Sep 17 00:00:00 2001
From: Jaroslav Kysela <perex@perex.cz>
Date: Wed, 13 Sep 2023 12:27:21 +0200
Subject: [PATCH 5/6] reshuffle included files to include config.h as first -
v2
config.h may contain defines like _FILE_OFFSET_BITS which influence
the system wide include files (off_t types, open -> open64 function
usage etc.).
Fixes: ad3a8b8b ("reshuffle included files to include config.h as first")
Related: https://github.com/alsa-project/alsa-lib/pull/333
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
---
src/control/setup.c | 2 +-
src/rawmidi/rawmidi.c | 2 +-
src/rawmidi/rawmidi_local.h | 2 +-
src/rawmidi/rawmidi_virt.c | 4 +---
src/rawmidi/ump.c | 4 ----
src/seq/seq.c | 2 +-
src/seq/seq_hw.c | 2 +-
src/seq/seq_local.h | 2 +-
src/seq/seq_midi_event.c | 2 +-
src/seq/seqmid.c | 4 +---
src/userfile.c | 2 +-
11 files changed, 10 insertions(+), 18 deletions(-)
diff --git a/src/control/setup.c b/src/control/setup.c
index 88635e42..fb096117 100644
--- a/src/control/setup.c
+++ b/src/control/setup.c
@@ -29,13 +29,13 @@
*
*/
+#include "local.h"
#include <stdio.h>
#include <stdlib.h>
#include <stdarg.h>
#include <unistd.h>
#include <string.h>
#include <ctype.h>
-#include "local.h"
#ifndef DOC_HIDDEN
typedef struct {
diff --git a/src/rawmidi/rawmidi.c b/src/rawmidi/rawmidi.c
index 316f524b..c4b45fa2 100644
--- a/src/rawmidi/rawmidi.c
+++ b/src/rawmidi/rawmidi.c
@@ -144,12 +144,12 @@ This example shows open and read/write rawmidi operations.
* Shows open and read/write rawmidi operations.
*/
+#include "rawmidi_local.h"
#include <stdio.h>
#include <stdlib.h>
#include <stdarg.h>
#include <unistd.h>
#include <string.h>
-#include "rawmidi_local.h"
/**
* \brief setup the default parameters
diff --git a/src/rawmidi/rawmidi_local.h b/src/rawmidi/rawmidi_local.h
index 19dbf725..f0bb06a7 100644
--- a/src/rawmidi/rawmidi_local.h
+++ b/src/rawmidi/rawmidi_local.h
@@ -19,10 +19,10 @@
*
*/
+#include "local.h"
#include <stdio.h>
#include <stdlib.h>
#include <limits.h>
-#include "local.h"
typedef struct {
int (*close)(snd_rawmidi_t *rawmidi);
diff --git a/src/rawmidi/rawmidi_virt.c b/src/rawmidi/rawmidi_virt.c
index 884b8ff8..04c485d3 100644
--- a/src/rawmidi/rawmidi_virt.c
+++ b/src/rawmidi/rawmidi_virt.c
@@ -19,13 +19,11 @@
*
*/
-#include <stdio.h>
-#include <stdlib.h>
+#include "rawmidi_local.h"
#include <unistd.h>
#include <string.h>
#include <fcntl.h>
#include <sys/ioctl.h>
-#include "rawmidi_local.h"
#include "seq.h"
#include "seq_midi_event.h"
diff --git a/src/rawmidi/ump.c b/src/rawmidi/ump.c
index 25fbaff2..39c1c4a9 100644
--- a/src/rawmidi/ump.c
+++ b/src/rawmidi/ump.c
@@ -4,10 +4,6 @@
* \brief Universal MIDI Protocol (UMP) Interface
*/
-#include <stdio.h>
-#include <stdlib.h>
-#include <limits.h>
-#include "local.h"
#include "rawmidi_local.h"
#include "ump_local.h"
diff --git a/src/seq/seq.c b/src/seq/seq.c
index 899dfe9f..fd8ca30e 100644
--- a/src/seq/seq.c
+++ b/src/seq/seq.c
@@ -777,8 +777,8 @@ void event_filter(snd_seq_t *seq, snd_seq_event_t *ev)
*/
-#include <poll.h>
#include "seq_local.h"
+#include <poll.h>
/****************************************************************************
* *
diff --git a/src/seq/seq_hw.c b/src/seq/seq_hw.c
index a51ebfb6..b74948c8 100644
--- a/src/seq/seq_hw.c
+++ b/src/seq/seq_hw.c
@@ -20,9 +20,9 @@
*
*/
+#include "seq_local.h"
#include <fcntl.h>
#include <sys/ioctl.h>
-#include "seq_local.h"
#ifndef PIC
/* entry for static linking */
diff --git a/src/seq/seq_local.h b/src/seq/seq_local.h
index 9b4a6545..46824806 100644
--- a/src/seq/seq_local.h
+++ b/src/seq/seq_local.h
@@ -23,10 +23,10 @@
#ifndef __SEQ_LOCAL_H
#define __SEQ_LOCAL_H
+#include "local.h"
#include <stdio.h>
#include <stdlib.h>
#include <limits.h>
-#include "local.h"
#define SND_SEQ_OBUF_SIZE (16*1024) /* default size */
#define SND_SEQ_IBUF_SIZE 500 /* in event_size aligned */
diff --git a/src/seq/seq_midi_event.c b/src/seq/seq_midi_event.c
index df09bde3..95a44e9b 100644
--- a/src/seq/seq_midi_event.c
+++ b/src/seq/seq_midi_event.c
@@ -28,10 +28,10 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
+#include "local.h"
#if HAVE_MALLOC_H
#include <malloc.h>
#endif
-#include "local.h"
#ifndef DOC_HIDDEN
diff --git a/src/seq/seqmid.c b/src/seq/seqmid.c
index 55651f38..9ec93ee8 100644
--- a/src/seq/seqmid.c
+++ b/src/seq/seqmid.c
@@ -20,14 +20,12 @@
*
*/
-#include <stdio.h>
-#include <stdlib.h>
+#include "seq_local.h"
#include <unistd.h>
#include <string.h>
#include <fcntl.h>
#include <ctype.h>
#include <sys/ioctl.h>
-#include "seq_local.h"
/**
* \brief queue controls - start/stop/continue
diff --git a/src/userfile.c b/src/userfile.c
index 4a740834..492ea9cb 100644
--- a/src/userfile.c
+++ b/src/userfile.c
@@ -18,7 +18,7 @@
*
*/
-#include <config.h>
+#include "config.h"
#include <string.h>
#include <errno.h>
#include <assert.h>
--
2.41.0
From 96f60d829f2c9dc9ad9eda46410adaa41b4b0da0 Mon Sep 17 00:00:00 2001
From: Takashi Iwai <tiwai@suse.de>
Date: Tue, 10 Oct 2023 08:20:15 +0200
Subject: [PATCH 6/6] seq: Fix typos in symbol version definitions
There were obvious typos in src/Versions.in that resulted in the
undefined symbols. Correct those entries.
Fixes: 2aefb5c41cc0 ("seq: Add UMP support")
Closes: https://github.com/alsa-project/alsa-lib/issues/356
Signed-off-by: Takashi Iwai <tiwai@suse.de>
---
src/Versions.in | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/src/Versions.in b/src/Versions.in
index c8ac1c82..c53a99fa 100644
--- a/src/Versions.in
+++ b/src/Versions.in
@@ -158,13 +158,13 @@ ALSA_1.2.10 {
@SYMBOL_PREFIX@snd_ctl_ump_block_info;
@SYMBOL_PREFIX@snd_seq_ump_*;
@SYMBOL_PREFIX@snd_seq_client_info_get_midi_version;
- @SYMBOL_PREFIX@snd_seq_seq_client_info_get_ump_group_enabled;
+ @SYMBOL_PREFIX@snd_seq_client_info_get_ump_group_enabled;
@SYMBOL_PREFIX@snd_seq_client_info_get_ump_groupless_enabled;
- @SYMBOL_PREFIX@snd_seq_seq_client_get_ump_conversion;
+ @SYMBOL_PREFIX@snd_seq_client_info_get_ump_conversion;
@SYMBOL_PREFIX@snd_seq_client_info_set_midi_version;
- @SYMBOL_PREFIX@snd_seq_seq_client_info_set_ump_group_enabled;
+ @SYMBOL_PREFIX@snd_seq_client_info_set_ump_group_enabled;
@SYMBOL_PREFIX@snd_seq_client_info_set_ump_groupless_enabled;
- @SYMBOL_PREFIX@snd_seq_seq_client_set_ump_conversion;
+ @SYMBOL_PREFIX@snd_seq_client_info_set_ump_conversion;
@SYMBOL_PREFIX@snd_seq_get_ump_endpoint_info;
@SYMBOL_PREFIX@snd_seq_get_ump_block_info;
@SYMBOL_PREFIX@snd_seq_set_ump_endpoint_info;
--
2.41.0
From 915a71a2cdf6361f0fc77fa367a67910dc0288db Mon Sep 17 00:00:00 2001
From: Takashi Iwai <tiwai@suse.de>
Date: Sat, 4 Nov 2023 10:05:39 +0100
Subject: [PATCH] seq: Fix invalid sanity-check in
snd_seq_set_input_buffer_size()
snd_seq_set_input_buffer_size() has an assert() call with packet_size,
but it's still uninitialized at that point. Fix it with the real
packet size.
Fixes: 2aefb5c41cc0 ("seq: Add UMP support")
Signed-off-by: Takashi Iwai <tiwai@suse.de>
---
src/seq/seq.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/seq/seq.c b/src/seq/seq.c
index fd8ca30e..5ec737a7 100644
--- a/src/seq/seq.c
+++ b/src/seq/seq.c
@@ -1269,9 +1269,9 @@ int snd_seq_set_input_buffer_size(snd_seq_t *seq, size_t size)
size_t packet_size;
assert(seq && seq->ibuf);
+ packet_size = get_packet_size(seq);
assert(size >= packet_size);
snd_seq_drop_input(seq);
- packet_size = get_packet_size(seq);
size = (size + packet_size - 1) / packet_size;
if (size != seq->ibufsize) {
char *newbuf;
--
2.41.0

File diff suppressed because it is too large Load Diff

View File

@ -2,38 +2,31 @@
#define prever_dot .rc3 #define prever_dot .rc3
#define postver a #define postver a
%define version_alsa_lib 1.2.10 %define version_alsa_lib 1.2.12
%define version_alsa_ucm 1.2.10 %define version_alsa_ucm 1.2.12
%define version_alsa_tplg 1.2.5 %define version_alsa_tplg 1.2.5
%if 0%{?rhel}
%global _without_topology 1
%endif
Summary: The Advanced Linux Sound Architecture (ALSA) library Summary: The Advanced Linux Sound Architecture (ALSA) library
Name: alsa-lib Name: alsa-lib
Version: %{version_alsa_lib} Version: %{version_alsa_lib}
Release: 2%{?prever_dot}%{?dist} Release: 3%{?prever_dot}%{?dist}
License: LGPLv2+ License: LGPL-2.1-or-later
Group: System Environment/Libraries
URL: http://www.alsa-project.org/ URL: http://www.alsa-project.org/
Source: https://www.alsa-project.org/files/pub/lib/%{name}-%{version}%{?prever}%{?postver}.tar.bz2 Source: ftp://ftp.alsa-project.org/pub/lib/%{name}-%{version}%{?prever}%{?postver}.tar.bz2
Source1: https://www.alsa-project.org/files/pub/lib/alsa-ucm-conf-%{version_alsa_ucm}.tar.bz2 Source1: ftp://ftp.alsa-project.org/pub/lib/alsa-ucm-conf-%{version_alsa_ucm}.tar.bz2
%if 0%{!?_without_topology:1} Source2: ftp://ftp.alsa-project.org/pub/lib/alsa-topology-conf-%{version_alsa_tplg}.tar.bz2
Source2: https://www.alsa-project.org/files/pub/lib/alsa-topology-conf-%{version_alsa_tplg}.tar.bz2
%endif
Source10: asound.conf Source10: asound.conf
Source11: modprobe-dist-alsa.conf Source11: modprobe-dist-alsa.conf
Source12: modprobe-dist-oss.conf Source12: modprobe-dist-oss.conf
Source20: alsa-ucm-conf.patch #Source40: alsa-ucm-conf.patch
Patch0: alsa-git.patch #Patch0: alsa-git.patch
Patch1: alsa-lib-1.2.3-config.patch Patch1: alsa-lib-1.2.3.1-config.patch
Patch2: alsa-lib-1.2.10-glibc-open.patch Patch2: alsa-lib-1.2.10-glibc-open.patch
BuildRequires: doxygen BuildRequires: doxygen
BuildRequires: autoconf automake libtool BuildRequires: autoconf automake libtool
Requires(post): /sbin/ldconfig, coreutils BuildRequires: make
%description %description
The Advanced Linux Sound Architecture (ALSA) provides audio and MIDI The Advanced Linux Sound Architecture (ALSA) provides audio and MIDI
@ -45,7 +38,6 @@ the older OSS API, providing binary compatibility for most OSS programs.
%package devel %package devel
Summary: Development files from the ALSA library Summary: Development files from the ALSA library
Group: Development/Libraries
Requires: %{name} = %{version}-%{release} Requires: %{name} = %{version}-%{release}
Requires: pkgconfig Requires: pkgconfig
@ -58,37 +50,41 @@ against the ALSA libraries and interfaces.
%package -n alsa-ucm %package -n alsa-ucm
Summary: ALSA Use Case Manager configuration Summary: ALSA Use Case Manager configuration
Group: System Environment/Libraries
BuildArch: noarch BuildArch: noarch
License: BSD License: BSD-3-Clause
Requires: %{name} >= %{version_alsa_lib} Requires: %{name} >= %{version_alsa_lib}
%description -n alsa-ucm %description -n alsa-ucm
The Advanced Linux Sound Architecture (ALSA) Universal Configuration The Advanced Linux Sound Architecture (ALSA) Use Case Manager configuration
Manager allows configuration of Audio input/output names and routing contains alsa-lib configuration of Audio input/output names and routing
%if 0%{!?_without_topology:1}
%package -n alsa-topology %package -n alsa-topology
Summary: ALSA Topology configuration Summary: ALSA Topology configuration
Group: System Environment/Libraries
BuildArch: noarch BuildArch: noarch
License: BSD License: BSD-3-Clause
Requires: %{name} >= %{version_alsa_lib} Requires: %{name} >= %{version_alsa_lib}
%endif
%if 0%{!?_without_topology:1}
%description -n alsa-topology %description -n alsa-topology
The Advanced Linux Sound Architecture (ALSA) topology configuration The Advanced Linux Sound Architecture (ALSA) topology configuration
contains alsa-lib configuration of SoC topology contains alsa-lib configuration of SoC topology
%endif
%prep %prep
%setup -q -n %{name}-%{version}%{?prever}%{?postver} %setup -q -n %{name}-%{version}%{?prever}%{?postver}
%patch -P 0 -p1 -b .alsa-git #patch -P 0 -p1 -b .alsa-git
%patch -P 1 -p1 -b .config %patch -P 1 -p1 -b .config
%patch -P 2 -p1 -b .glibc-open %patch -P 2 -p1 -b .glibc-open
%build %build
# This package uses top level ASM constructs which are incompatible with LTO.
# Top level ASMs are often used to implement symbol versioning. gcc-10
# introduces a new mechanism for symbol versioning which works with LTO.
# Converting packages to use that mechanism instead of toplevel ASMs is
# recommended.
# Note: The v1.2.4 contains changes wich are compatible with gcc-10 LTO
# although using the old ASM constructs.
# Enable custom LTO flags
%define _lto_cflags -flto -ffat-lto-objects -flto-partition=none
autoreconf -vif autoreconf -vif
%configure --disable-aload --with-plugindir=%{_libdir}/alsa-lib --disable-alisp %configure --disable-aload --with-plugindir=%{_libdir}/alsa-lib --disable-alisp
@ -120,25 +116,21 @@ mkdir -p %{buildroot}/%{_datadir}/alsa/ucm2
# Unpack UCMs # Unpack UCMs
tar xvjf %{SOURCE1} -C %{buildroot}/%{_datadir}/alsa --strip-components=1 "*/ucm" "*/ucm2" tar xvjf %{SOURCE1} -C %{buildroot}/%{_datadir}/alsa --strip-components=1 "*/ucm" "*/ucm2"
patch -d %{buildroot}/%{_datadir}/alsa -p1 < %{SOURCE20} #patch -d %{buildroot}/%{_datadir}/alsa -p1 < %{SOURCE40}
# Create topology directory # Create topology directory
mkdir -p %{buildroot}/%{_datadir}/alsa/topology mkdir -p %{buildroot}/%{_datadir}/alsa/topology
# Unpack topologies # Unpack topologies
%if 0%{!?_without_topology:1}
tar xvjf %{SOURCE2} -C %{buildroot}/%{_datadir}/alsa --strip-components=1 "*/topology" tar xvjf %{SOURCE2} -C %{buildroot}/%{_datadir}/alsa --strip-components=1 "*/topology"
%endif
# Remove libtool archives # Remove libtool archives.
find %{buildroot} -name '*.la' -delete find %{buildroot} -name '*.la' -delete
# Remove /usr/include/asoundlib.h # Remove /usr/include/asoundlib.h
rm %{buildroot}/%{_includedir}/asoundlib.h rm %{buildroot}/%{_includedir}/asoundlib.h
%post -p /sbin/ldconfig %ldconfig_scriptlets
%postun -p /sbin/ldconfig
%files %files
%{!?_licensedir:%global license %%doc} %{!?_licensedir:%global license %%doc}
@ -170,62 +162,178 @@ rm %{buildroot}/%{_includedir}/asoundlib.h
%{_datadir}/alsa/ucm %{_datadir}/alsa/ucm
%{_datadir}/alsa/ucm2 %{_datadir}/alsa/ucm2
%if 0%{!?_without_topology:1}
%files -n alsa-topology %files -n alsa-topology
# BSD # BSD
%{_datadir}/alsa/topology %{_datadir}/alsa/topology
%endif
%changelog %changelog
* Thu Nov 30 2023 Jaroslav Kysela <perex@perex.cz> - 1.2.10-2 * Tue Oct 29 2024 Troy Dawson <tdawson@redhat.com> - 1.2.12-3
- update to alsa-lib 1.2.10 and alsa-ucm-conf 1.2.10 - Bump release for October 2024 mass rebuild:
Resolves: RHEL-64018
* Mon May 15 2023 Jaroslav Kysela <perex@perex.cz> - 1.2.9-1 * Mon Jun 24 2024 Troy Dawson <tdawson@redhat.com> - 1.2.12-2
- update to alsa-lib 1.2.9 and alsa-ucm-conf 1.2.9 - Bump release for June 2024 mass rebuild
* Thu Jan 5 2023 Jaroslav Kysela <perex@perex.cz> - 1.2.8-2 * Mon Jun 17 2024 Jaroslav Kysela <perex@perex.cz> - 1.2.12-1
- update to alsa-lib 1.2.8 and alsa-ucm-conf 1.2.8 - update to alsa-lib 1.2.12 and alsa-ucm-conf 1.2.12
- remove alsa-topology package for rhel
* Fri Jul 8 2022 Jaroslav Kysela <perex@perex.cz> - 1.2.7.2-1 * Mon Jan 29 2024 Jaroslav Kysela <perex@perex.cz> - 1.2.11-2
- Updated to 1.2.7.2 - update to 1.2.11
* Fri Feb 11 2022 Jaroslav Kysela <perex@perex.cz> - 1.2.6.1-3 * Mon Jan 22 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.2.10-5
- import fixes from upstream (UCM: AMD ACP6x, HDA, sof-hda-dsp) - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Mon Dec 20 2021 Jaroslav Kysela <perex@perex.cz> - 1.2.6.1-1 * Fri Jan 19 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.2.10-4
- Updated to alsa-lib 1.2.6.1 and alsa-ucm-conf 1.2.6.3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Mon Jun 14 2021 Jaroslav Kysela <perex@perex.cz> - 1.2.5-4 * Mon Sep 4 2023 Jaroslav Kysela <perex@perex.cz> - 1.2.10-3
- Updated to 1.2.5 - fix control.h header file (ump)
- fix SplitPCM (alsa-ucm)
* Mon Feb 1 2021 Jaroslav Kysela <perex@perex.cz> - 1.2.4-5 * Fri Sep 1 2023 Jaroslav Kysela <perex@perex.cz> - 1.2.10-1
- Apply fixes from upstream (alsa-lib, alsa-ucm-conf) - update to 1.2.10
* Mon Oct 19 2020 Jaroslav Kysela <perex@perex.cz> - 1.2.4-3 * Wed Jul 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1.2.9-4
- Updated to 1.2.4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Mon Jun 29 2020 Jaroslav Kysela <perex@perex.cz> - 1.2.3.2-1 * Tue Jun 6 2023 Jaroslav Kysela <perex@perex.cz> - 1.2.9-3
- SPDX licences
* Tue May 16 2023 Jaroslav Kysela <perex@perex.cz> - 1.2.9-2
- update ucm (nhlt-dmic-info)
* Thu May 4 2023 Jaroslav Kysela <perex@perex.cz> - 1.2.9-1
- update to 1.2.9
* Wed Jan 18 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1.2.8-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Wed Dec 7 2022 Jaroslav Kysela <perex@perex.cz> - 1.2.8-2
- update lib code to latest git
- update ucm configs to latest git
* Mon Oct 24 2022 Jaroslav Kysela <perex@perex.cz> - 1.2.8-1
- update to 1.2.8
* Wed Jul 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1.2.7.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Fri Jul 8 2022 Jaroslav Kysela <perex@perex.cz> - 1.2.7.1-2
- update to 1.2.7.2
* Fri Jun 17 2022 Jaroslav Kysela <perex@perex.cz> - 1.2.7.1-1
- update to 1.2.7.1
* Tue May 31 2022 Jaroslav Kysela <perex@perex.cz> - 1.2.7-1
- update to 1.2.7
* Wed Jan 19 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1.2.6.1-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Fri Dec 17 2021 Jaroslav Kysela <perex@perex.cz> - 1.2.6.1-3
- updated alsa-ucm-conf to 1.2.6.3
* Fri Dec 10 2021 Jaroslav Kysela <perex@perex.cz> - 1.2.6.1-2
- updated alsa-lib to 1.2.6.1 and alsa-ucm-conf to 1.2.6.2
* Thu Dec 9 2021 Jaroslav Kysela <perex@perex.cz> - 1.2.6-3
- device open fixes from upstream
* Mon Dec 6 2021 Jaroslav Kysela <perex@perex.cz> - 1.2.6-1
- update to 1.2.6
* Sat Nov 13 2021 Peter Robinson <pbrobinson@fedoraproject.org> - 1.2.5.1-4
- Add Rockchip ES8316 support
* Tue Aug 31 2021 Jaroslav Kysela <perex@perex.cz> - 1.2.5.1-3
- add UCM related fixes
* Wed Jul 21 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.2.5.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Mon Jun 14 2021 Jaroslav Kysela <perex@perex.cz> - 1.2.5.1-1
- update to 1.2.5.1
* Wed Jun 2 2021 Jaroslav Kysela <perex@perex.cz> - 1.2.5-2
- add upstream fixes (conf + ucm)
* Fri May 28 2021 Jaroslav Kysela <perex@perex.cz> - 1.2.5-1
- update to 1.2.5
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.2.4-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Mon Oct 19 2020 Jaroslav Kysela <perex@perex.cz> - 1.2.4-4
- update to 1.2.4
- enable LTO
* Fri Jul 31 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.2.3.2-5
- Second attempt - Rebuilt for
https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.2.3.2-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Wed Jul 1 2020 Jeff Law <law@redhat.com> - 1.2.3.2-3
- Disable LTO
* Mon Jun 29 2020 Jaroslav Kysela <perex@perex.cz> - 1.2.3.2-2
- update to 1.2.3.2 - update to 1.2.3.2
* Tue Mar 17 2020 Jaroslav Kysela <perex@perex.cz> - 1.2.1.2-3 * Thu Jun 18 2020 Jaroslav Kysela <perex@perex.cz> - 1.2.3.1-1
- Fix for HDA Intel dual codecs - update to 1.2.3.1
* Tue Dec 10 2019 Jaroslav Kysela <perex@perex.cz> - 1.2.1.2-2 * Sun Jun 7 2020 Jaroslav Kysela <perex@perex.cz> - 1.2.3-8
- update to 1.2.3
* Mon Apr 6 2020 Jaroslav Kysela <perex@perex.cz> - 1.2.2-2
- UCM2 fixes (RemoveDevice), bug#1786723
* Wed Feb 19 2020 Jaroslav Kysela <perex@perex.cz> - 1.2.2-1
- Updated to 1.2.2
* Sun Feb 9 2020 Jaroslav Kysela <perex@perex.cz> - 1.2.1.2-6
- More UCM2 related fixes
* Tue Jan 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.2.1.2-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Mon Dec 9 2019 Jaroslav Kysela <perex@perex.cz> - 1.2.1.2-4
- Fixes for sof-hda-dsp UCM2 configuration
* Tue Dec 3 2019 Jaroslav Kysela <perex@perex.cz> - 1.2.1.2-3
- Fixed more UCM2 related issues
* Fri Nov 29 2019 Jaroslav Kysela <perex@perex.cz> - 1.2.1.2-1
- Updated to 1.2.1.2 - Updated to 1.2.1.2
- UCM fixes
* Fri Nov 15 2019 Jaroslav Kysela <perex@perex.cz> - 1.2.1-2 * Tue Nov 19 2019 Jaroslav Kysela <perex@perex.cz> - 1.2.1.1-1
- Updated to 1.2.1.1
* Wed Nov 13 2019 Jaroslav Kysela <perex@perex.cz> - 1.2.1-3
- Updated to 1.2.1 - Updated to 1.2.1
* Mon May 27 2019 Jaroslav Kysela <perex@perex.cz> - 1.1.9-4 * Wed Jul 24 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.1.9-2
- Moved topology files to alsa-topology - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Fri May 10 2019 Jaroslav Kysela <perex@perex.cz> - 1.1.9-1
- Updated to 1.1.9 - Updated to 1.1.9
* Fri Jan 25 2019 Jaroslav Kysela <jkysela@redhat.com> - 1.1.6-3 * Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.1.8-2
- Sync with the RHEL 7 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
- Add Dell WD15/WD19 Dock to USB-Audio.conf and create UCM configs
- Resolves: rhbz#1664247 * Mon Jan 7 2019 Jaroslav Kysela <perex@perex.cz> - 1.1.8-1
- Updated to 1.1.8
* Tue Dec 25 2018 Hans de Goede <hdegoede@redhat.com> - 1.1.7-3
- Fix broken chtrt5645 UCM profile, fixing mic input on chtrt5645 devices
* Wed Oct 24 2018 Jaroslav Kysela <perex@perex.cz> - 1.1.7-2
- Moved topology files to alsa-topology
- Updated to 1.1.7
* Thu Jul 12 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.1.6-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Wed Apr 04 2018 Jaroslav Kysela <perex@perex.cz> - 1.1.6-2 * Wed Apr 04 2018 Jaroslav Kysela <perex@perex.cz> - 1.1.6-2
- Changed add-on directory to /etc/alsa/conf.d - Changed add-on directory to /etc/alsa/conf.d

6
gating.yaml Normal file
View File

@ -0,0 +1,6 @@
--- !Policy
product_versions:
- rhel-10
decision_context: osci_compose_gate
rules:
- !PassingTestCaseRule {test_case_name: osci.brew-build.tier0.functional}

3
sources Normal file
View File

@ -0,0 +1,3 @@
SHA512 (alsa-lib-1.2.12.tar.bz2) = 053e36e51c0ff28f07028b89c8845b50682a5c14035ab85c2fc8cae2f2f0d05e4cd45ed879602c15c1596fb7fe84bfd50ec0d119dfb55c66589a2d458a9b317d
SHA512 (alsa-ucm-conf-1.2.12.tar.bz2) = 391dde123271172d899c04865d1d6e21b4ad0060ee9b2256dfbc6fc89ad48edcaa43c861893ab0e5c70d972e20d15c528defc19c00308e7465f13f954cce25d7
SHA512 (alsa-topology-conf-1.2.5.tar.bz2) = 2eb4d8baf2dcbf0b631dd11dbf15bffc51694d9cc6931619e51787f3ba58d1a091d266e6721a3b737c040ec74a28270b93f39fb97f30a3227cf340dd646e5d51

10
tests/run_tests.sh Executable file
View File

@ -0,0 +1,10 @@
#!/bin/bash
set -ex
# a quick PCM API test
str=$(aplay -L | grep -E "^null$")
if [ "$str" != "null" ]; then
echo "The 'null' pcm plugin was not found!"
exit 99
fi

11
tests/tests.yml Normal file
View File

@ -0,0 +1,11 @@
- hosts: localhost
roles:
- role: standard-test-basic
tags:
- classic
required_packages:
- alsa-utils
tests:
- simple:
dir: .
run: ./run_tests.sh