diff options
Diffstat (limited to 'meta/recipes-multimedia/alsa')
21 files changed, 545 insertions, 720 deletions
diff --git a/meta/recipes-multimedia/alsa/alsa-fpu.inc b/meta/recipes-multimedia/alsa/alsa-fpu.inc deleted file mode 100644 index 355a9dfcd1..0000000000 --- a/meta/recipes-multimedia/alsa/alsa-fpu.inc +++ /dev/null @@ -1,4 +0,0 @@ -def get_alsa_fpu_setting(bb, d): - if d.getVar('TARGET_FPU') in [ 'soft' ]: - return "--with-softfloat" - return "" diff --git a/meta/recipes-multimedia/alsa/alsa-lib/0001-topology-correct-version-script-path.patch b/meta/recipes-multimedia/alsa/alsa-lib/0001-topology-correct-version-script-path.patch new file mode 100644 index 0000000000..30aeef5817 --- /dev/null +++ b/meta/recipes-multimedia/alsa/alsa-lib/0001-topology-correct-version-script-path.patch @@ -0,0 +1,38 @@ +From 2a736a0d2543f206fd2653aaae8a08a4c42eb917 Mon Sep 17 00:00:00 2001 +From: Michael Opdenacker <michael.opdenacker@bootlin.com> +Date: Tue, 30 Jan 2024 14:24:25 +0100 +Subject: [PATCH] topology: correct version script path + +From: Jan Palus <jpalus@fastmail.com> + +contrary to libasound, version script for libatopology is a regular +source file. while it's often the case that $(builddir) and $(srcdir) +point to the same directory, they don't always have to. therefore path +needs to point explicitly to $(srcdir) for Versions script in topology + +Closes: https://github.com/alsa-project/alsa-lib/pull/383 +Fixes: GH-382 +Fixes: dc7da761f3a2 ("topology: separate Versions linker script") +Signed-off-by: Jan Palus <jpalus@fastmail.com> +Signed-off-by: Jaroslav Kysela <perex@perex.cz> +Upstream-Status: Backport [https://git.alsa-project.org/?p=alsa-lib.git;a=commitdiff;h=2a736a0d2543f206fd2653aaae8a08a4c42eb917] +--- + src/topology/Makefile.am | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/topology/Makefile.am b/src/topology/Makefile.am +index 04299588..e0b78373 100644 +--- a/src/topology/Makefile.am ++++ b/src/topology/Makefile.am +@@ -2,7 +2,7 @@ EXTRA_DIST = Versions + COMPATNUM=@LIBTOOL_VERSION_INFO@ + + if VERSIONED_SYMBOLS +-VSYMS = -Wl,--version-script=Versions ++VSYMS = -Wl,--version-script=$(srcdir)/Versions + else + VSYMS = + endif +-- +2.34.1 + diff --git a/meta/recipes-multimedia/alsa/alsa-lib/Check-if-wordexp-function-is-supported.patch b/meta/recipes-multimedia/alsa/alsa-lib/Check-if-wordexp-function-is-supported.patch deleted file mode 100644 index 795e48ab2e..0000000000 --- a/meta/recipes-multimedia/alsa/alsa-lib/Check-if-wordexp-function-is-supported.patch +++ /dev/null @@ -1,51 +0,0 @@ -From 3408f8e78776b12f131e433749721602f87e0a70 Mon Sep 17 00:00:00 2001 -From: "Hong H. Pham" <hong.pham@windriver.com> -Date: Fri, 29 Aug 2014 17:13:55 +0300 -Subject: [PATCH] Check if wordexp function is supported - -eglibc could be configured to build without wordexp, so it is not enough -to check if wordexp.h exists (the header file could be installed, but it's -possible that the wordexp() function is not supported). An additional -check if wordexp() is supported by the system C library is needed. - -Upstream-Status: Inappropriate [configuration] - -Signed-off-by: Hong H. Pham <hong.pham@windriver.com> -Signed-off-by: Cristian Iorga <cristian.iorga@intel.com> ---- - configure.ac | 5 ++++- - src/userfile.c | 2 +- - 2 files changed, 5 insertions(+), 2 deletions(-) - -diff --git a/configure.ac b/configure.ac -index 9490d39..b08a90a 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -295,7 +295,10 @@ fi - AC_SUBST(ALSA_DEPLIBS) - - dnl Check for headers --AC_CHECK_HEADERS([wordexp.h endian.h sys/endian.h sys/shm.h]) -+AC_CHECK_HEADERS([wordexp.h endian.h sys/endian.h sys/shm.h], -+ dnl Make sure wordexp is supported by the C library -+ AC_CHECK_FUNCS([wordexp]) -+) - - dnl Check for resmgr support... - AC_MSG_CHECKING(for resmgr support) -diff --git a/src/userfile.c b/src/userfile.c -index 72779da..e9d13e6 100644 ---- a/src/userfile.c -+++ b/src/userfile.c -@@ -32,7 +32,7 @@ - * stores the first matchine one. The returned string is strdup'ed. - */ - --#ifdef HAVE_WORDEXP_H -+#if (defined(HAVE_WORDEXP_H) && defined(HAVE_WORDEXP)) - #include <wordexp.h> - #include <assert.h> - int snd_user_file(const char *file, char **result) --- -2.6.4 - diff --git a/meta/recipes-multimedia/alsa/alsa-lib/avoid-including-sys-poll.h-directly.patch b/meta/recipes-multimedia/alsa/alsa-lib/avoid-including-sys-poll.h-directly.patch deleted file mode 100644 index 3d44585939..0000000000 --- a/meta/recipes-multimedia/alsa/alsa-lib/avoid-including-sys-poll.h-directly.patch +++ /dev/null @@ -1,183 +0,0 @@ -From c2c13cf0c469862cd39b2a69862002331ab7c8cb Mon Sep 17 00:00:00 2001 -From: Andre McCurdy <armccurdy@gmail.com> -Date: Tue, 9 Feb 2016 14:01:18 -0800 -Subject: [PATCH] avoid including <sys/poll.h> directly - -Fixes compiler warnings when building with musl libc. - -Upstream-Status: Pending - -Signed-off-by: Andre McCurdy <armccurdy@gmail.com> ---- - aserver/aserver.c | 2 +- - include/asoundlib-head.h | 2 +- - include/asoundlib.h | 2 +- - include/local.h | 2 +- - src/control/control.c | 2 +- - src/control/control_shm.c | 2 +- - src/pcm/pcm_direct.c | 2 +- - src/pcm/pcm_mmap.c | 2 +- - src/pcm/pcm_share.c | 2 +- - src/pcm/pcm_shm.c | 2 +- - src/seq/seq.c | 2 +- - src/shmarea.c | 2 +- - 12 files changed, 12 insertions(+), 12 deletions(-) - -diff --git a/aserver/aserver.c b/aserver/aserver.c -index ac20706..46f731a 100644 ---- a/aserver/aserver.c -+++ b/aserver/aserver.c -@@ -20,7 +20,7 @@ - - #include <sys/shm.h> - #include <sys/socket.h> --#include <sys/poll.h> -+#include <poll.h> - #include <sys/un.h> - #include <sys/uio.h> - #include <stdio.h> -diff --git a/include/asoundlib-head.h b/include/asoundlib-head.h -index 1ec611e..21e32c6 100644 ---- a/include/asoundlib-head.h -+++ b/include/asoundlib-head.h -@@ -35,6 +35,6 @@ - #include <string.h> - #include <fcntl.h> - #include <assert.h> --#include <sys/poll.h> -+#include <poll.h> - #include <errno.h> - #include <stdarg.h> -diff --git a/include/asoundlib.h b/include/asoundlib.h -index 3c2766e..a546194 100644 ---- a/include/asoundlib.h -+++ b/include/asoundlib.h -@@ -35,7 +35,7 @@ - #include <string.h> - #include <fcntl.h> - #include <assert.h> --#include <sys/poll.h> -+#include <poll.h> - #include <errno.h> - #include <stdarg.h> - #include <endian.h> -diff --git a/include/local.h b/include/local.h -index 317f2e3..6a43a47 100644 ---- a/include/local.h -+++ b/include/local.h -@@ -47,7 +47,7 @@ - #error Header defining endianness not defined - #endif - #include <stdarg.h> --#include <sys/poll.h> -+#include <poll.h> - #include <sys/types.h> - #include <errno.h> - #if defined(__linux__) -diff --git a/src/control/control.c b/src/control/control.c -index 6c00b8e..fd0c303 100644 ---- a/src/control/control.c -+++ b/src/control/control.c -@@ -90,7 +90,7 @@ I/O operations. - #include <string.h> - #include <fcntl.h> - #include <signal.h> --#include <sys/poll.h> -+#include <poll.h> - #include <stdbool.h> - #include "control_local.h" - -diff --git a/src/control/control_shm.c b/src/control/control_shm.c -index bd07d4a..9a2e268 100644 ---- a/src/control/control_shm.c -+++ b/src/control/control_shm.c -@@ -27,7 +27,7 @@ - #include <fcntl.h> - #include <sys/shm.h> - #include <sys/socket.h> --#include <sys/poll.h> -+#include <poll.h> - #include <sys/un.h> - #include <sys/uio.h> - #include <sys/mman.h> -diff --git a/src/pcm/pcm_direct.c b/src/pcm/pcm_direct.c -index c3925cc..18f1dd5 100644 ---- a/src/pcm/pcm_direct.c -+++ b/src/pcm/pcm_direct.c -@@ -30,7 +30,7 @@ - #include <grp.h> - #include <sys/ioctl.h> - #include <sys/mman.h> --#include <sys/poll.h> -+#include <poll.h> - #include <sys/shm.h> - #include <sys/sem.h> - #include <sys/wait.h> -diff --git a/src/pcm/pcm_mmap.c b/src/pcm/pcm_mmap.c -index 1948289..4cf220a 100644 ---- a/src/pcm/pcm_mmap.c -+++ b/src/pcm/pcm_mmap.c -@@ -22,7 +22,7 @@ - #include <stdio.h> - #include <malloc.h> - #include <string.h> --#include <sys/poll.h> -+#include <poll.h> - #include <sys/mman.h> - #ifdef HAVE_SYS_SHM_H - #include <sys/shm.h> -diff --git a/src/pcm/pcm_share.c b/src/pcm/pcm_share.c -index 5d8aaf2..21a57fc 100644 ---- a/src/pcm/pcm_share.c -+++ b/src/pcm/pcm_share.c -@@ -34,7 +34,7 @@ - #include <signal.h> - #include <math.h> - #include <sys/socket.h> --#include <sys/poll.h> -+#include <poll.h> - #include <pthread.h> - #include "pcm_local.h" - -diff --git a/src/pcm/pcm_shm.c b/src/pcm/pcm_shm.c -index a815ac6..4ee958c 100644 ---- a/src/pcm/pcm_shm.c -+++ b/src/pcm/pcm_shm.c -@@ -36,7 +36,7 @@ - #include <sys/ioctl.h> - #include <sys/shm.h> - #include <sys/socket.h> --#include <sys/poll.h> -+#include <poll.h> - #include <sys/un.h> - #include <sys/mman.h> - #include <netinet/in.h> -diff --git a/src/seq/seq.c b/src/seq/seq.c -index 9279830..d2027cb 100644 ---- a/src/seq/seq.c -+++ b/src/seq/seq.c -@@ -777,7 +777,7 @@ void event_filter(snd_seq_t *seq, snd_seq_event_t *ev) - - */ - --#include <sys/poll.h> -+#include <poll.h> - #include "seq_local.h" - - /**************************************************************************** -diff --git a/src/shmarea.c b/src/shmarea.c -index 9843aa8..eaa71f0 100644 ---- a/src/shmarea.c -+++ b/src/shmarea.c -@@ -27,7 +27,7 @@ - #include <malloc.h> - #include <string.h> - #include <errno.h> --#include <sys/poll.h> -+#include <poll.h> - #include <sys/mman.h> - #include <sys/shm.h> - #include "list.h" --- -2.8.1 - diff --git a/meta/recipes-multimedia/alsa/alsa-lib_1.1.4.1.bb b/meta/recipes-multimedia/alsa/alsa-lib_1.1.4.1.bb deleted file mode 100644 index acdeae13f3..0000000000 --- a/meta/recipes-multimedia/alsa/alsa-lib_1.1.4.1.bb +++ /dev/null @@ -1,43 +0,0 @@ -SUMMARY = "ALSA sound library" -HOMEPAGE = "http://www.alsa-project.org" -BUGTRACKER = "http://alsa-project.org/main/index.php/Bug_Tracking" -SECTION = "libs/multimedia" -LICENSE = "LGPLv2.1 & GPLv2+" -LIC_FILES_CHKSUM = "file://COPYING;md5=7fbc338309ac38fefcd64b04bb903e34 \ - file://src/socket.c;beginline=1;endline=26;md5=11ff89a8a7a4a690a5c78effe8159545" - -BBCLASSEXTEND = "native nativesdk" - -SRC_URI = "ftp://ftp.alsa-project.org/pub/lib/${BP}.tar.bz2 \ - file://Check-if-wordexp-function-is-supported.patch \ - file://avoid-including-sys-poll.h-directly.patch \ -" -SRC_URI[md5sum] = "29fa3e69122d3cf3e8f0e01a0cb1d183" -SRC_URI[sha256sum] = "91bb870c14d1c7c269213285eeed874fa3d28112077db061a3af8010d0885b76" - -inherit autotools pkgconfig - -require alsa-fpu.inc -EXTRA_OECONF += "${@get_alsa_fpu_setting(bb, d)} " - -EXTRA_OECONF += "--disable-python" - -PACKAGES =+ "alsa-server libasound alsa-conf alsa-doc" -FILES_libasound = "${libdir}/libasound.so.*" -FILES_alsa-server = "${bindir}/*" -FILES_alsa-conf = "${datadir}/alsa/" - -RDEPENDS_libasound = "alsa-conf" - -# alsa-lib gets automatically added to alsa-lib-dev dependencies, but the -# alsa-lib package doesn't exist. libasound is the real library package. -RDEPENDS_${PN}-dev = "libasound" - -# upgrade path -RPROVIDES_${PN}-dev = "alsa-dev" -RREPLACES_${PN}-dev = "alsa-dev" -RCONFLICTS_${PN}-dev = "alsa-dev" - -RPROVIDES_alsa-conf = "alsa-conf-base" -RREPLACES_alsa-conf = "alsa-conf-base" -RCONFLICTS_alsa-conf = "alsa-conf-base" diff --git a/meta/recipes-multimedia/alsa/alsa-lib_1.2.11.bb b/meta/recipes-multimedia/alsa/alsa-lib_1.2.11.bb new file mode 100644 index 0000000000..c212b17aa3 --- /dev/null +++ b/meta/recipes-multimedia/alsa/alsa-lib_1.2.11.bb @@ -0,0 +1,46 @@ +SUMMARY = "ALSA sound library" +DESCRIPTION = "(Occasionally a.k.a. libasound) is a userspace library that \ +provides a level of abstraction over the /dev interfaces provided by the kernel modules." +HOMEPAGE = "http://www.alsa-project.org" +BUGTRACKER = "http://alsa-project.org/main/index.php/Bug_Tracking" +SECTION = "libs/multimedia" +LICENSE = "LGPL-2.1-only & GPL-2.0-or-later" +LIC_FILES_CHKSUM = "file://COPYING;md5=a916467b91076e631dd8edb7424769c7 \ + file://src/socket.c;md5=285675b45e83f571c6a957fe4ab79c93;beginline=9;endline=24 \ + " + +SRC_URI = "https://www.alsa-project.org/files/pub/lib/${BP}.tar.bz2 \ + file://0001-topology-correct-version-script-path.patch \ + " +SRC_URI[sha256sum] = "9f3f2f69b995f9ad37359072fbc69a3a88bfba081fc83e9be30e14662795bb4d" + +inherit autotools pkgconfig + +EXTRA_OECONF += " \ + ${@bb.utils.contains('TARGET_FPU', 'soft', '--with-softfloat', '', d)} \ + --disable-python --disable-old-symbols \ +" + +PACKAGES =+ "alsa-server alsa-conf libatopology" + +FILES:alsa-server = "${bindir}/*" +FILES:alsa-conf = "${datadir}/alsa/" +FILES:libatopology = "${libdir}/libatopology.so.*" + +RDEPENDS:${PN}:class-target = "alsa-conf alsa-ucm-conf" +RDEPENDS:libatopology:class-target = "alsa-topology-conf" + +# upgrade path +RPROVIDES:${PN} = "libasound" +RREPLACES:${PN} = "libasound" +RCONFLICTS:${PN} = "libasound" + +RPROVIDES:${PN}-dev = "alsa-dev" +RREPLACES:${PN}-dev = "alsa-dev" +RCONFLICTS:${PN}-dev = "alsa-dev" + +RPROVIDES:alsa-conf = "alsa-conf-base" +RREPLACES:alsa-conf = "alsa-conf-base" +RCONFLICTS:alsa-conf = "alsa-conf-base" + +BBCLASSEXTEND = "native nativesdk" diff --git a/meta/recipes-multimedia/alsa/alsa-plugins/0001-arcam_av.c-Include-missing-string.h.patch b/meta/recipes-multimedia/alsa/alsa-plugins/0001-arcam_av.c-Include-missing-string.h.patch new file mode 100644 index 0000000000..ff7745d637 --- /dev/null +++ b/meta/recipes-multimedia/alsa/alsa-plugins/0001-arcam_av.c-Include-missing-string.h.patch @@ -0,0 +1,25 @@ +From b01b176a665ba65979d74922955f51dc4888a713 Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Tue, 23 Aug 2022 15:21:16 -0700 +Subject: [PATCH] arcam_av.c: Include missing string.h + +bzero() function needs this header to be included + +Upstream-Status: Submitted [https://github.com/alsa-project/alsa-plugins/pull/47] +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + arcam-av/arcam_av.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/arcam-av/arcam_av.c b/arcam-av/arcam_av.c +index 63f9b4e..29fc537 100644 +--- a/arcam-av/arcam_av.c ++++ b/arcam-av/arcam_av.c +@@ -27,6 +27,7 @@ + #include <signal.h> + #include <stddef.h> + #include <stdio.h> ++#include <string.h> + #include <termios.h> + #include <unistd.h> + diff --git a/meta/recipes-multimedia/alsa/alsa-plugins_1.1.4.bb b/meta/recipes-multimedia/alsa/alsa-plugins_1.1.4.bb deleted file mode 100644 index b7f79b7535..0000000000 --- a/meta/recipes-multimedia/alsa/alsa-plugins_1.1.4.bb +++ /dev/null @@ -1,103 +0,0 @@ -SUMMARY = "ALSA Plugins" -HOMEPAGE = "http://alsa-project.org" -BUGTRACKER = "http://alsa-project.org/main/index.php/Bug_Tracking" -SECTION = "multimedia" - -# The primary license of alsa-plugins is LGPLv2.1. -# -# m4/attributes.m4 is licensed under GPLv2+. m4/attributes.m4 is part of the -# build system, and doesn't affect the licensing of the build result. -# -# The samplerate plugin source code is licensed under GPLv2+ to be consistent -# with the libsamplerate license. However, if the licensee has a commercial -# license for libsamplerate, the samplerate plugin may be used under the terms -# of LGPLv2.1 like the rest of the plugins. -LICENSE = "LGPLv2.1 & GPLv2+" -LIC_FILES_CHKSUM = "\ - file://COPYING;md5=7fbc338309ac38fefcd64b04bb903e34 \ - file://COPYING.GPL;md5=94d55d512a9ba36caa9b7df079bae19f \ - file://m4/attributes.m4;endline=33;md5=b25958da44c02231e3641f1bccef53eb \ - file://rate/rate_samplerate.c;endline=35;md5=fd77bce85f4a338c0e8ab18430b69fae \ -" - -SRC_URI = "ftp://ftp.alsa-project.org/pub/plugins/${BP}.tar.bz2" -SRC_URI[md5sum] = "de51130a7444b79b2dd3c25e28420754" -SRC_URI[sha256sum] = "530d1c3bdaeb058f2a03607a33b9e16ee5369bfd30a96bc09bd2c69b4ddd1a8a" - -DEPENDS += "alsa-lib" - -inherit autotools pkgconfig - -PACKAGECONFIG ??= "\ - samplerate \ - speexdsp \ - ${@bb.utils.filter('DISTRO_FEATURES', 'pulseaudio', d)} \ -" -PACKAGECONFIG[avcodec] = "--enable-avcodec,--disable-avcodec,libav" -PACKAGECONFIG[jack] = "--enable-jack,--disable-jack,jack" -PACKAGECONFIG[maemo-plugin] = "--enable-maemo-plugin,--disable-maemo-plugin" -PACKAGECONFIG[maemo-resource-manager] = "--enable-maemo-resource-manager,--disable-maemo-resource-manager,dbus" -PACKAGECONFIG[pulseaudio] = "--enable-pulseaudio,--disable-pulseaudio,pulseaudio" -PACKAGECONFIG[samplerate] = "--enable-samplerate,--disable-samplerate,libsamplerate0" -PACKAGECONFIG[speexdsp] = "--with-speex=lib,--with-speex=no,speexdsp" - -PACKAGES += "${@bb.utils.contains('PACKAGECONFIG', 'pulseaudio', 'alsa-plugins-pulseaudio-conf', '', d)}" - -PACKAGES_DYNAMIC = "^libasound-module-.*" - -# The alsa-plugins package doesn't itself contain anything, it just depends on -# all built plugins. -ALLOW_EMPTY_${PN} = "1" - -do_install_append() { - rm ${D}${libdir}/alsa-lib/*.la - - # We use the example as is, so just drop the .example suffix. - if [ "${@bb.utils.contains('PACKAGECONFIG', 'pulseaudio', 'yes', 'no', d)}" = "yes" ]; then - mv ${D}${datadir}/alsa/alsa.conf.d/99-pulseaudio-default.conf.example ${D}${datadir}/alsa/alsa.conf.d/99-pulseaudio-default.conf - fi -} - -python populate_packages_prepend() { - plugindir = d.expand('${libdir}/alsa-lib/') - packages = " ".join(do_split_packages(d, plugindir, '^libasound_module_(.*)\.so$', 'libasound-module-%s', 'Alsa plugin for %s', extra_depends='')) - d.setVar("RDEPENDS_alsa-plugins", packages) -} - -# The rate plugins create some symlinks. For example, the samplerate plugin -# creates these links to the main plugin file: -# -# libasound_module_rate_samplerate_best.so -# libasound_module_rate_samplerate_linear.so -# libasound_module_rate_samplerate_medium.so -# libasound_module_rate_samplerate_order.so -# -# The other rate plugins create similar links. We have to add the links to -# FILES manually, because do_split_packages() skips the links (which is good, -# because we wouldn't want do_split_packages() to create separate packages for -# the symlinks). -# -# The symlinks cause QA errors, because usually it's a bug if a non -# -dev/-dbg/-nativesdk package contains links to .so files, but in this case -# the errors are false positives, so we disable the QA checks. -FILES_${MLPREFIX}libasound-module-rate-lavcrate += "${libdir}/alsa-lib/*rate_lavcrate_*.so" -FILES_${MLPREFIX}libasound-module-rate-samplerate += "${libdir}/alsa-lib/*rate_samplerate_*.so" -FILES_${MLPREFIX}libasound-module-rate-speexrate += "${libdir}/alsa-lib/*rate_speexrate_*.so" -INSANE_SKIP_${MLPREFIX}libasound-module-rate-lavcrate = "dev-so" -INSANE_SKIP_${MLPREFIX}libasound-module-rate-samplerate = "dev-so" -INSANE_SKIP_${MLPREFIX}libasound-module-rate-speexrate = "dev-so" - -# 50-pulseaudio.conf defines a device named "pulse" that applications can use -# if they explicitly want to use the PulseAudio plugin. -# 99-pulseaudio-default.conf configures the "default" device to use the -# PulseAudio plugin. -FILES_${PN}-pulseaudio-conf += "\ - ${datadir}/alsa/alsa.conf.d/50-pulseaudio.conf \ - ${datadir}/alsa/alsa.conf.d/99-pulseaudio-default.conf \ -" - -RDEPENDS_${PN}-pulseaudio-conf += "\ - libasound-module-conf-pulse \ - libasound-module-ctl-pulse \ - libasound-module-pcm-pulse \ -" diff --git a/meta/recipes-multimedia/alsa/alsa-plugins_1.2.7.1.bb b/meta/recipes-multimedia/alsa/alsa-plugins_1.2.7.1.bb new file mode 100644 index 0000000000..9500462d5c --- /dev/null +++ b/meta/recipes-multimedia/alsa/alsa-plugins_1.2.7.1.bb @@ -0,0 +1,176 @@ +SUMMARY = "ALSA Plugins" +DESCRIPTION = "Used to create virtual devices that can be used like normal \ +hardware devices but cause extra processing of the sound stream to take place. \ +They are used while configuring ALSA in the .asoundrc file." +HOMEPAGE = "http://alsa-project.org" +BUGTRACKER = "http://alsa-project.org/main/index.php/Bug_Tracking" +SECTION = "multimedia" + +# The primary license of alsa-plugins is LGPL-2.1-only. +# +# m4/attributes.m4 is licensed under GPL-2.0-or-later. m4/attributes.m4 is part +# of the build system, and doesn't affect the licensing of the build result. +# +# The samplerate plugin source code is licensed under GPL-2.0-or-later to be +# consistent with the libsamplerate license. However, if the licensee has a +# commercial license for libsamplerate, the samplerate plugin may be used under +# the terms of LGPL-2.1-only like the rest of the plugins. +LICENSE = "LGPL-2.1-only & GPL-2.0-or-later" +LIC_FILES_CHKSUM = "file://COPYING;md5=a916467b91076e631dd8edb7424769c7 \ + file://COPYING.GPL;md5=59530bdf33659b29e73d4adb9f9f6552 \ + file://m4/attributes.m4;endline=33;md5=bb8c6b2a67ac15156961e242fec33e50 \ + file://rate/rate_samplerate.c;endline=35;md5=fd77bce85f4a338c0e8ab18430b69fae \ + " + +SRC_URI = "https://www.alsa-project.org/files/pub/plugins/${BP}.tar.bz2 \ + file://0001-arcam_av.c-Include-missing-string.h.patch \ + " +SRC_URI[sha256sum] = "8c337814954bb7c167456733a6046142a2931f12eccba3ec2a4ae618a3432511" + +DEPENDS += "alsa-lib" + +inherit autotools pkgconfig + +PACKAGECONFIG ??= "\ + samplerate \ + speexdsp \ + ${@bb.utils.filter('DISTRO_FEATURES', 'pulseaudio', d)} \ +" +PACKAGECONFIG[aaf] = "--enable-aaf,--disable-aaf,libavtp" +PACKAGECONFIG[jack] = "--enable-jack,--disable-jack,jack" +PACKAGECONFIG[libav] = "--enable-libav,--disable-libav,libav" +PACKAGECONFIG[maemo-plugin] = "--enable-maemo-plugin,--disable-maemo-plugin" +PACKAGECONFIG[maemo-resource-manager] = "--enable-maemo-resource-manager,--disable-maemo-resource-manager,dbus" +PACKAGECONFIG[pulseaudio] = "--enable-pulseaudio,--disable-pulseaudio,pulseaudio" +PACKAGECONFIG[samplerate] = "--enable-samplerate,--disable-samplerate,libsamplerate0" +PACKAGECONFIG[speexdsp] = "--with-speex=lib,--with-speex=no,speexdsp" + +PACKAGES += "${@bb.utils.contains('PACKAGECONFIG', 'pulseaudio', 'alsa-plugins-pulseaudio-conf', '', d)}" + +PACKAGES_DYNAMIC = "^libasound-module-.*" + +# The alsa-plugins package doesn't itself contain anything, it just depends on +# all built plugins. +FILES:${PN} = "" +ALLOW_EMPTY:${PN} = "1" + +do_install:append() { + rm -f ${D}${libdir}/alsa-lib/*.la + + if [ "${@bb.utils.contains('PACKAGECONFIG', 'pulseaudio', 'yes', 'no', d)}" = "yes" ]; then + # We use the example as is. Upstream installs the file under + # /etc, but we move it under /usr/share and add a symlink under + # /etc to be consistent with other installed configuration + # files. + mv ${D}${sysconfdir}/alsa/conf.d/99-pulseaudio-default.conf.example ${D}${datadir}/alsa/alsa.conf.d/99-pulseaudio-default.conf + ln -s ${datadir}/alsa/alsa.conf.d/99-pulseaudio-default.conf ${D}${sysconfdir}/alsa/conf.d/99-pulseaudio-default.conf + fi +} + +python populate_packages:prepend() { + plugindir = d.expand('${libdir}/alsa-lib/') + packages = " ".join(do_split_packages(d, plugindir, r'^libasound_module_(.*)\.so$', 'libasound-module-%s', 'Alsa plugin for %s', extra_depends='')) + d.setVar("RDEPENDS:alsa-plugins", packages) +} + +# Many plugins have a configuration file (plus a symlink in /etc) associated +# with them. We put the plugin and it's configuration usually in the same +# package, but that's problematic when the configuration file is related to +# multiple plugins, as is the case with the pulse, oss and maemo plugins. In +# case of the pulse plugins, we have a separate alsa-plugins-pulseaudio-conf +# package that depends on all the pulse plugins, which ensures that all plugins +# that the configuration references are installed. The oss and maemo +# configuration files, on the other hand, are in the respective pcm plugin +# packages. Therefore it's possible to install the configuration file without +# the ctl plugin that the configuration file references. This is unlikely to +# cause big problems, but some kind of improvement to the packaging could +# probably be done here (at least it would be good to handle the different +# plugins in a consistent way). +FILES:${MLPREFIX}libasound-module-ctl-arcam-av += "\ + ${datadir}/alsa/alsa.conf.d/50-arcam-av-ctl.conf \ + ${sysconfdir}/alsa/conf.d/50-arcam-av-ctl.conf \ +" +FILES:${MLPREFIX}libasound-module-pcm-a52 += "\ + ${datadir}/alsa/alsa.conf.d/60-a52-encoder.conf \ + ${sysconfdir}/alsa/conf.d/60-a52-encoder.conf \ +" +FILES:${MLPREFIX}libasound-module-pcm-alsa-dsp += "\ + ${datadir}/alsa/alsa.conf.d/98-maemo.conf \ + ${sysconfdir}/alsa/conf.d/98-maemo.conf \ +" +FILES:${MLPREFIX}libasound-module-pcm-jack += "\ + ${datadir}/alsa/alsa.conf.d/50-jack.conf \ + ${sysconfdir}/alsa/conf.d/50-jack.conf \ +" +FILES:${MLPREFIX}libasound-module-pcm-oss += "\ + ${datadir}/alsa/alsa.conf.d/50-oss.conf \ + ${sysconfdir}/alsa/conf.d/50-oss.conf \ +" +FILES:${MLPREFIX}libasound-module-pcm-speex += "\ + ${datadir}/alsa/alsa.conf.d/60-speex.conf \ + ${sysconfdir}/alsa/conf.d/60-speex.conf \ +" +FILES:${MLPREFIX}libasound-module-pcm-upmix += "\ + ${datadir}/alsa/alsa.conf.d/60-upmix.conf \ + ${sysconfdir}/alsa/conf.d/60-upmix.conf \ +" +FILES:${MLPREFIX}libasound-module-pcm-usb-stream += "\ + ${datadir}/alsa/alsa.conf.d/98-usb-stream.conf \ + ${sysconfdir}/alsa/conf.d/98-usb-stream.conf \ +" +FILES:${MLPREFIX}libasound-module-pcm-vdownmix += "\ + ${datadir}/alsa/alsa.conf.d/60-vdownmix.conf \ + ${sysconfdir}/alsa/conf.d/60-vdownmix.conf \ +" +FILES:${MLPREFIX}libasound-module-rate-lavrate += "\ + ${datadir}/alsa/alsa.conf.d/10-rate-lav.conf \ + ${sysconfdir}/alsa/conf.d/10-rate-lav.conf \ +" +FILES:${MLPREFIX}libasound-module-rate-samplerate += "\ + ${datadir}/alsa/alsa.conf.d/10-samplerate.conf \ + ${sysconfdir}/alsa/conf.d/10-samplerate.conf \ +" +FILES:${MLPREFIX}libasound-module-rate-speexrate += "\ + ${datadir}/alsa/alsa.conf.d/10-speexrate.conf \ + ${sysconfdir}/alsa/conf.d/10-speexrate.conf \ +" + +# The rate plugins create some symlinks. For example, the samplerate plugin +# creates these links to the main plugin file: +# +# libasound_module_rate_samplerate_best.so +# libasound_module_rate_samplerate_linear.so +# libasound_module_rate_samplerate_medium.so +# libasound_module_rate_samplerate_order.so +# +# The other rate plugins create similar links. We have to add the links to +# FILES manually, because do_split_packages() skips the links (which is good, +# because we wouldn't want do_split_packages() to create separate packages for +# the symlinks). +# +# The symlinks cause QA errors, because usually it's a bug if a non +# -dev/-dbg/-nativesdk package contains links to .so files, but in this case +# the errors are false positives, so we disable the QA checks. +FILES:${MLPREFIX}libasound-module-rate-lavrate += "${libdir}/alsa-lib/*rate_lavrate_*.so" +FILES:${MLPREFIX}libasound-module-rate-samplerate += "${libdir}/alsa-lib/*rate_samplerate_*.so" +FILES:${MLPREFIX}libasound-module-rate-speexrate += "${libdir}/alsa-lib/*rate_speexrate_*.so" +INSANE_SKIP:${MLPREFIX}libasound-module-rate-lavrate = "dev-so" +INSANE_SKIP:${MLPREFIX}libasound-module-rate-samplerate = "dev-so" +INSANE_SKIP:${MLPREFIX}libasound-module-rate-speexrate = "dev-so" + +# 50-pulseaudio.conf defines a device named "pulse" that applications can use +# if they explicitly want to use the PulseAudio plugin. +# 99-pulseaudio-default.conf configures the "default" device to use the +# PulseAudio plugin. +FILES:${PN}-pulseaudio-conf += "\ + ${datadir}/alsa/alsa.conf.d/50-pulseaudio.conf \ + ${datadir}/alsa/alsa.conf.d/99-pulseaudio-default.conf \ + ${sysconfdir}/alsa/conf.d/50-pulseaudio.conf \ + ${sysconfdir}/alsa/conf.d/99-pulseaudio-default.conf \ +" + +RDEPENDS:${PN}-pulseaudio-conf += "\ + ${MLPREFIX}libasound-module-conf-pulse \ + ${MLPREFIX}libasound-module-ctl-pulse \ + ${MLPREFIX}libasound-module-pcm-pulse \ +" diff --git a/meta/recipes-multimedia/alsa/alsa-tools/0001-as10k1-Make-output_tram_line-static-inline.patch b/meta/recipes-multimedia/alsa/alsa-tools/0001-as10k1-Make-output_tram_line-static-inline.patch deleted file mode 100644 index d049a30d2c..0000000000 --- a/meta/recipes-multimedia/alsa/alsa-tools/0001-as10k1-Make-output_tram_line-static-inline.patch +++ /dev/null @@ -1,31 +0,0 @@ -From 1e5926df74a35fe2cd90bc59f5264a8715c94048 Mon Sep 17 00:00:00 2001 -From: Khem Raj <raj.khem@gmail.com> -Date: Mon, 7 Sep 2015 08:16:59 +0000 -Subject: [PATCH] as10k1: Make output_tram_line() static inline - -The function is not used in any other file, its better to make it static -inline so compiler has a better chance of optimizing here - -Signed-off-by: Khem Raj <raj.khem@gmail.com> ---- -Upstream-Status: Pending - - as10k1/as10k1.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/as10k1/as10k1.c b/as10k1/as10k1.c -index 96af0c3..d0766fd 100644 ---- a/as10k1/as10k1.c -+++ b/as10k1/as10k1.c -@@ -366,7 +366,7 @@ void as_exit(const char *message) - exit(1); - } - --inline void output_tram_line( struct list_head *line_head, int type){ -+static inline void output_tram_line( struct list_head *line_head, int type){ - - struct tram *tram_sym; - struct list_head *entry; --- -2.5.1 - diff --git a/meta/recipes-multimedia/alsa/alsa-tools/autotools.patch b/meta/recipes-multimedia/alsa/alsa-tools/autotools.patch deleted file mode 100644 index 319f25d27a..0000000000 --- a/meta/recipes-multimedia/alsa/alsa-tools/autotools.patch +++ /dev/null @@ -1,32 +0,0 @@ -Add parameters to autoreconf to support cross compile. -Remove some sub-components which needs further recipe support. - -Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com> - -Upstream-Status: Inappropriate [configuration] - -diff -ruN alsa-tools-1.0.24.1-orig//ld10k1/gitcompile alsa-tools-1.0.24.1/ld10k1/gitcompile ---- alsa-tools-1.0.24.1-orig//ld10k1/gitcompile 2011-07-06 11:27:40.227665002 +0800 -+++ alsa-tools-1.0.24.1/ld10k1/gitcompile 2011-07-14 13:26:18.017665004 +0800 -@@ -1,6 +1,6 @@ - #!/bin/bash - --autoreconf -fi || exit 1 -+autoreconf $ACLOCAL_FLAGS -fi || exit 1 - export CFLAGS='-O2 -Wall -pipe -g' - echo "CFLAGS=$CFLAGS" - echo "./configure $@" -diff -ruN alsa-tools-1.0.24.1-orig//Makefile alsa-tools-1.0.24.1/Makefile ---- alsa-tools-1.0.24.1-orig//Makefile 2011-07-06 11:27:40.207665000 +0800 -+++ alsa-tools-1.0.24.1/Makefile 2011-07-14 15:08:08.877665009 +0800 -@@ -1,8 +1,8 @@ - VERSION = 1.1.0 - TOP = . --SUBDIRS = as10k1 envy24control hdsploader hdspconf hdspmixer \ -+SUBDIRS = as10k1 envy24control \ - mixartloader pcxhrloader rmedigicontrol sb16_csp seq sscape_ctl \ -- us428control usx2yloader vxloader echomixer ld10k1 qlo10k1 \ -+ us428control usx2yloader vxloader echomixer \ - hwmixvolume hdajackretask hda-verb hdajacksensetest - - all: diff --git a/meta/recipes-multimedia/alsa/alsa-tools/gitcompile_hdajacksensetest b/meta/recipes-multimedia/alsa/alsa-tools/gitcompile_hdajacksensetest deleted file mode 100755 index 58328bd3a5..0000000000 --- a/meta/recipes-multimedia/alsa/alsa-tools/gitcompile_hdajacksensetest +++ /dev/null @@ -1,13 +0,0 @@ -#!/bin/bash - -aclocal $ACLOCAL_FLAGS || exit 1 -automake --foreign --add-missing || exit 1 -autoconf || exit 1 -export CFLAGS='-O2 -Wall -pipe -g' -echo "CFLAGS=$CFLAGS" -echo "./configure $@" -./configure $@ || exit 1 -unset CFLAGS -if [ -z "$GITCOMPILE_NO_MAKE" ]; then - make || exit 1 -fi diff --git a/meta/recipes-multimedia/alsa/alsa-tools/makefile_no_gtk.patch b/meta/recipes-multimedia/alsa/alsa-tools/makefile_no_gtk.patch deleted file mode 100644 index 9bd6848eda..0000000000 --- a/meta/recipes-multimedia/alsa/alsa-tools/makefile_no_gtk.patch +++ /dev/null @@ -1,29 +0,0 @@ -Remove some sub-components which need gtk+. - -Upstream-Status: Inappropriate [configuration] - -Signed-off-by: Rogerio Nunes <ronunes@gmail.com> -Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> - -Update patch for alsa-tools 1.0.29 - -Signed-off-by: Kai Kang <kai.kang@windriver.com> - -diff --git a/Makefile b/Makefile -index 2457a1c..72346d9 100644 ---- a/Makefile -+++ b/Makefile -@@ -1,9 +1,9 @@ - VERSION = 1.1.0 - TOP = . --SUBDIRS = as10k1 envy24control \ -- mixartloader pcxhrloader rmedigicontrol sb16_csp seq sscape_ctl \ -- us428control usx2yloader vxloader echomixer \ -- hwmixvolume hdajackretask hda-verb hdajacksensetest -+SUBDIRS = as10k1 \ -+ mixartloader pcxhrloader sb16_csp seq sscape_ctl \ -+ us428control usx2yloader vxloader \ -+ hwmixvolume hda-verb hdajacksensetest - - all: - @for i in $(SUBDIRS); do \ diff --git a/meta/recipes-multimedia/alsa/alsa-tools_1.1.3.bb b/meta/recipes-multimedia/alsa/alsa-tools_1.1.3.bb deleted file mode 100644 index 9e97c0e969..0000000000 --- a/meta/recipes-multimedia/alsa/alsa-tools_1.1.3.bb +++ /dev/null @@ -1,41 +0,0 @@ -SUMMARY = "Advanced tools for certain ALSA sound card drivers" -HOMEPAGE = "http://www.alsa-project.org" -BUGTRACKER = "http://alsa-project.org/main/index.php/Bug_Tracking" -SECTION = "console/utils" -LICENSE = "GPLv2 & LGPLv2+" -DEPENDS = "alsa-lib ncurses glib-2.0" - -LIC_FILES_CHKSUM = "file://hdsploader/COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \ - file://ld10k1/COPYING.LIB;md5=7fbc338309ac38fefcd64b04bb903e34" - -SRC_URI = "ftp://ftp.alsa-project.org/pub/tools/${BP}.tar.bz2 \ - file://autotools.patch \ - ${@bb.utils.contains('DISTRO_FEATURES', 'x11', '', 'file://makefile_no_gtk.patch', d)} \ - file://gitcompile_hdajacksensetest \ - file://0001-as10k1-Make-output_tram_line-static-inline.patch \ - " - -SRC_URI[md5sum] = "b23eaae687d55410b92587c2053b301f" -SRC_URI[sha256sum] = "d88f1dcd6872121383eded5fa24e328e68c54e527db4547e1435d5eabc2b6709" - -inherit autotools-brokensep pkgconfig - -CLEANBROKEN = "1" - -EXTRA_OEMAKE += "GITCOMPILE_ARGS='--host=${HOST_SYS} --build=${BUILD_SYS} --target=${TARGET_SYS} --with-libtool-sysroot=${STAGING_DIR_HOST} --prefix=${prefix}'" - -PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'gtk+', '', d)}" -PACKAGECONFIG[gtk+] = ",,gtk+ gtk+3," - -# configure.ac/.in doesn't exist so force copy -AUTOTOOLS_COPYACLOCAL = "1" - -do_compile_prepend () { - #Automake dir is not correctly detected in cross compilation case - export AUTOMAKE_DIR="$(automake --print-libdir)" - export ACLOCAL_FLAGS="--system-acdir=${ACLOCALDIR}/ ${ACLOCALEXTRAPATH}" - - cp ${WORKDIR}/gitcompile_hdajacksensetest ${S}/hdajacksensetest/gitcompile -} - -FILES_${PN} += "${datadir}/ld10k1" diff --git a/meta/recipes-multimedia/alsa/alsa-tools_1.2.11.bb b/meta/recipes-multimedia/alsa/alsa-tools_1.2.11.bb new file mode 100644 index 0000000000..53868041c0 --- /dev/null +++ b/meta/recipes-multimedia/alsa/alsa-tools_1.2.11.bb @@ -0,0 +1,89 @@ +SUMMARY = "Advanced tools for certain ALSA sound card drivers" +DESCRIPTION = "Package containing a number of tools ranging from envy24control \ +which provides complete control over all devices with an envy24 chip, to \ +firmware loaders for pcmcia, USB and the hdsp devices." +HOMEPAGE = "http://www.alsa-project.org" +BUGTRACKER = "http://alsa-project.org/main/index.php/Bug_Tracking" +SECTION = "console/utils" +LICENSE = "GPL-2.0-only & LGPL-2.0-or-later" +DEPENDS = "alsa-lib" + +LIC_FILES_CHKSUM = "file://hdsploader/COPYING;md5=59530bdf33659b29e73d4adb9f9f6552 \ + file://ld10k1/COPYING.LIB;md5=a916467b91076e631dd8edb7424769c7 \ + " + +SRC_URI = "https://www.alsa-project.org/files/pub/tools/${BP}.tar.bz2" + +SRC_URI[sha256sum] = "0915c9634a502fd3655ca9c574d259bc9e79983d91d45aeacff6f3c00f8ae3e9" + +inherit autotools-brokensep pkgconfig +# brokensep as as10k1 (and probably more) fail out of tree +CLEANBROKEN = "1" + +# Here we use PACKAGECONFIG options to pick which directories we configure/build. +# Remember on upgrades to check that no new tools have been added. +PACKAGECONFIG ??= "as10k1 hdajacksensetest hda-verb hdsploader ld10k1 mixartloader pcxhrloader \ + sb16_csp seq--sbiload sscape_ctl us428control usx2yloader vxloader \ + ${@bb.utils.contains_any('DISTRO_FEATURES', '${GTK3DISTROFEATURES}', 'hdajackretask', '', d)} \ + " + +PACKAGECONFIG[as10k1] = "" +PACKAGECONFIG[echomixer] = ",,gtk+" +PACKAGECONFIG[envy24control] = ",,gtk+" +PACKAGECONFIG[hda-verb] = "" +PACKAGECONFIG[hdajackretask] = ",,gtk+3" +PACKAGECONFIG[hdajacksensetest] = ",,glib-2.0" +PACKAGECONFIG[hdspconf] = ",,fltk" +PACKAGECONFIG[hdsploader] = "" +PACKAGECONFIG[hdspmixer] = ",,fltk" +PACKAGECONFIG[ld10k1] = "" +PACKAGECONFIG[mixartloader] = "" +PACKAGECONFIG[pcxhrloader] = "" +PACKAGECONFIG[qlo10k1] = ",,qt-x11-free" +PACKAGECONFIG[rmedigicontrol] = ",,gtk+" +PACKAGECONFIG[sb16_csp] = "" +PACKAGECONFIG[seq--sbiload] = "" +PACKAGECONFIG[sscape_ctl] = "" +PACKAGECONFIG[us428control] = "" +PACKAGECONFIG[usx2yloader] = "" +PACKAGECONFIG[vxloader] = "" + +# At the time of writing pyalsa is not packaged for OE, so this is not expected +# to work. +PACKAGECONFIG[hwmixvolume] = ",,,python-core python-pygobject pyalsa" + +python do_configure() { + for subdir in d.getVar("PACKAGECONFIG").split(): + subdir = subdir.replace("--", "/") + bb.note("Configuring %s" % subdir) + dd = d.createCopy() + dd.setVar("S", os.path.join(d.getVar("S"), subdir)) + bb.build.exec_func("autotools_do_configure", dd) +} + +python do_compile() { + for subdir in d.getVar("PACKAGECONFIG").split(): + subdir = subdir.replace("--", "/") + bb.note("Compiling %s" % subdir) + dd = d.createCopy() + dd.setVar("S", os.path.join(d.getVar("S"), subdir)) + bb.build.exec_func("autotools_do_compile", dd) +} + +python do_install() { + d.delVarFlag("autotools_do_install", "cleandirs") + for subdir in d.getVar("PACKAGECONFIG").split(): + subdir = subdir.replace("--", "/") + bb.note("Installing %s" % subdir) + dd = d.createCopy() + dd.setVar("S", os.path.join(d.getVar("S"), subdir)) + bb.build.exec_func("autotools_do_install", dd) + + # Just remove bash-needing init script that isn't installed as an init script + try: + os.remove(oe.path.join(d.getVar("D"), d.getVar("sbindir"), "ld10k1d")) + except: + pass +} + +FILES:${PN} += "${datadir}" diff --git a/meta/recipes-multimedia/alsa/alsa-topology-conf_1.2.5.1.bb b/meta/recipes-multimedia/alsa/alsa-topology-conf_1.2.5.1.bb new file mode 100644 index 0000000000..4374a6bb6d --- /dev/null +++ b/meta/recipes-multimedia/alsa/alsa-topology-conf_1.2.5.1.bb @@ -0,0 +1,23 @@ +SUMMARY = "ALSA topology configuration files" +DESCRIPTION = "Provides a method for audio drivers to load their mixers, \ +routing, PCMs and capabilities from user space at runtime without changing \ +any driver source code." +HOMEPAGE = "https://alsa-project.org" +BUGTRACKER = "https://alsa-project.org/wiki/Bug_Tracking" +LICENSE = "BSD-3-Clause" +LIC_FILES_CHKSUM = "file://LICENSE;md5=20d74d74db9741697903372ad001d3b4" + +SRC_URI = "https://www.alsa-project.org/files/pub/lib/${BP}.tar.bz2" +SRC_URI[sha256sum] = "f7c5bae1545abcd73824bc97f4e72c340e11abea188ba0f1c06f5e0ad776b179" +# Something went wrong at upstream tarballing + +inherit allarch + +do_install() { + install -d "${D}${datadir}/alsa" + cp -r "${S}/topology" "${D}${datadir}/alsa" +} + +PACKAGES = "${PN}" + +FILES:${PN} = "*" diff --git a/meta/recipes-multimedia/alsa/alsa-ucm-conf_1.2.11.bb b/meta/recipes-multimedia/alsa/alsa-ucm-conf_1.2.11.bb new file mode 100644 index 0000000000..ce1a42c9b8 --- /dev/null +++ b/meta/recipes-multimedia/alsa/alsa-ucm-conf_1.2.11.bb @@ -0,0 +1,24 @@ +SUMMARY = "ALSA Use Case Manager configuration" +DESCRIPTION = "This package contains ALSA Use Case Manager configuration \ +of audio input/output names and routing for specific audio hardware. \ +They can be used with the alsaucm tool. " +HOMEPAGE = "https://alsa-project.org" +BUGTRACKER = "https://alsa-project.org/wiki/Bug_Tracking" +LICENSE = "BSD-3-Clause" +LIC_FILES_CHKSUM = "file://LICENSE;md5=20d74d74db9741697903372ad001d3b4" + +SRC_URI = "https://www.alsa-project.org/files/pub/lib/${BP}.tar.bz2" +SRC_URI[sha256sum] = "387c01cf30e2a1676d7b8f72b2681cf219abca70dd1ec2a9e33add5bf3feae81" +# Something went wrong at upstream tarballing + +inherit allarch + +do_install() { + install -d "${D}${datadir}/alsa" + cp -r "${S}/ucm" "${D}${datadir}/alsa" + cp -r "${S}/ucm2" "${D}${datadir}/alsa" +} + +PACKAGES = "${PN}" + +FILES:${PN} = "*" diff --git a/meta/recipes-multimedia/alsa/alsa-utils-scripts_1.1.4.bb b/meta/recipes-multimedia/alsa/alsa-utils-scripts_1.1.4.bb deleted file mode 100644 index fef79d9c9c..0000000000 --- a/meta/recipes-multimedia/alsa/alsa-utils-scripts_1.1.4.bb +++ /dev/null @@ -1,25 +0,0 @@ -require alsa-utils_${PV}.bb - -SUMMARY = "Shell scripts that show help info and create ALSA configuration files" -PROVIDES = "alsa-utils-alsaconf" - -FILESEXTRAPATHS_prepend := "${THISDIR}/alsa-utils:" - -PACKAGES = "${PN}" -RDEPENDS_${PN} += "bash" - -FILES_${PN} = "${sbindir}/alsaconf \ - ${sbindir}/alsa-info.sh \ - ${sbindir}/alsabat-test.sh \ - " - -S = "${WORKDIR}/alsa-utils-${PV}" - -do_install() { - install -d ${D}${sbindir} - install -m 0755 ${B}/alsaconf/alsaconf ${D}${sbindir}/ - install -m 0755 ${S}/alsa-info/alsa-info.sh ${D}${sbindir}/ - if ${@bb.utils.contains('PACKAGECONFIG', 'bat', 'true', 'false', d)}; then - install -m 0755 ${S}/bat/alsabat-test.sh ${D}${sbindir}/ - fi -} diff --git a/meta/recipes-multimedia/alsa/alsa-utils/0001-alsactl-don-t-let-systemd-unit-restore-the-volume-wh.patch b/meta/recipes-multimedia/alsa/alsa-utils/0001-alsactl-don-t-let-systemd-unit-restore-the-volume-wh.patch deleted file mode 100644 index e578dfe743..0000000000 --- a/meta/recipes-multimedia/alsa/alsa-utils/0001-alsactl-don-t-let-systemd-unit-restore-the-volume-wh.patch +++ /dev/null @@ -1,56 +0,0 @@ -From 8c3e0ef9625066c2bb67ee3d2b8cd37fd44eadac Mon Sep 17 00:00:00 2001 -From: Koen Kooi <koen@dominion.thruhere.net> -Date: Fri, 29 Aug 2014 18:58:56 +0300 -Subject: [PATCH] alsactl: don't let systemd unit restore the volume when - asound.state is missing - -This avoids an error on bootup - -Filed as https://bugtrack.alsa-project.org/alsa-bug/view.php?id=5459 - -Upstream-Status: Pending - -Signed-off-by: Koen Kooi <koen@dominion.thruhere.net> -Signed-off-by: Cristian Iorga <cristian.iorga@intel.com> - -Rebased on 1.1.0. - -Signed-off-by: Tanu Kaskinen <tanuk@iki.fi> ---- - alsactl/Makefile.am | 7 ++++--- - alsactl/alsa-restore.service.in | 1 + - 2 files changed, 5 insertions(+), 3 deletions(-) - -diff --git a/alsactl/Makefile.am b/alsactl/Makefile.am -index cac8094..ff865dc 100644 ---- a/alsactl/Makefile.am -+++ b/alsactl/Makefile.am -@@ -38,9 +38,10 @@ install-data-hook: - endif - - edit = \ -- $(SED) -r -e 's,@sbindir\@,$(sbindir),g' \ -- -e 's,@mydatadir\@,$(mydatadir),g' \ -- -e 's,@daemonswitch\@,$(ALSACTL_DAEMONSWITCH),g' \ -+ $(SED) -e 's,@localstatedir\@,$(localstatedir),g' \ -+ -e 's,@sbindir\@,$(sbindir),g' \ -+ -e 's,@mydatadir\@,$(mydatadir),g' \ -+ -e 's,@daemonswitch\@,$(ALSACTL_DAEMONSWITCH),g' \ - < $< > $@ || rm $@ - - alsa-state.service: alsa-state.service.in -diff --git a/alsactl/alsa-restore.service.in b/alsactl/alsa-restore.service.in -index 2884098..bac3ccc 100644 ---- a/alsactl/alsa-restore.service.in -+++ b/alsactl/alsa-restore.service.in -@@ -8,6 +8,7 @@ Description=Save/Restore Sound Card State - ConditionPathExists=!@daemonswitch@ - ConditionPathExistsGlob=/dev/snd/control* - After=alsa-state.service -+ConditionPathExists=@localstatedir@/lib/alsa/asound.state - - [Service] - Type=oneshot --- -2.7.0.rc3 - diff --git a/meta/recipes-multimedia/alsa/alsa-utils_1.1.4.bb b/meta/recipes-multimedia/alsa/alsa-utils_1.1.4.bb deleted file mode 100644 index c8f4b861bd..0000000000 --- a/meta/recipes-multimedia/alsa/alsa-utils_1.1.4.bb +++ /dev/null @@ -1,109 +0,0 @@ -SUMMARY = "ALSA sound utilities" -HOMEPAGE = "http://www.alsa-project.org" -BUGTRACKER = "http://alsa-project.org/main/index.php/Bug_Tracking" -SECTION = "console/utils" -LICENSE = "GPLv2+" -LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552 \ - file://alsactl/utils.c;beginline=1;endline=20;md5=fe9526b055e246b5558809a5ae25c0b9" -DEPENDS = "alsa-lib ncurses libsamplerate0" - -PACKAGECONFIG ??= "udev" - -# alsabat can be built also without fftw support (with reduced functionality). -# It would be better to always enable alsabat, but provide an option for -# enabling/disabling fftw. The configure script doesn't support that, however -# (at least in any obvious way), so for now we only support alsabat with fftw -# or no alsabat at all. -PACKAGECONFIG[bat] = "--enable-bat,--disable-bat,fftwf" - -PACKAGECONFIG[udev] = "--with-udev-rules-dir=`pkg-config --variable=udevdir udev`/rules.d,,udev" -PACKAGECONFIG[manpages] = "--enable-xmlto, --disable-xmlto, xmlto-native docbook-xml-dtd4-native docbook-xsl-stylesheets-native" - -SRC_URI = "ftp://ftp.alsa-project.org/pub/utils/alsa-utils-${PV}.tar.bz2 \ - file://0001-alsactl-don-t-let-systemd-unit-restore-the-volume-wh.patch \ - " - -SRC_URI[md5sum] = "01e3934ca5bd22a80c27289d1b0adcdc" -SRC_URI[sha256sum] = "a7831044de92c5bf33bf3365a3f36e49397f4191e934df460ae1ca15138c9d9d" - -# On build machines with python-docutils (not python3-docutils !!) installed -# rst2man (not rst2man.py) is detected and compile fails with -# | make[1]: *** No rule to make target 'alsaucm.1', needed by 'all-am'. Stop. -# Avoid this by disabling expicitly -EXTRA_OECONF = "--disable-rst2man" - -inherit autotools gettext pkgconfig manpages - -# This are all packages that we need to make. Also, the now empty alsa-utils -# ipk depends on them. - -ALSA_UTILS_PKGS = "\ - ${@bb.utils.contains('PACKAGECONFIG', 'bat', 'alsa-utils-alsabat', '', d)} \ - alsa-utils-alsamixer \ - alsa-utils-alsatplg \ - alsa-utils-midi \ - alsa-utils-aplay \ - alsa-utils-amixer \ - alsa-utils-aconnect \ - alsa-utils-iecset \ - alsa-utils-speakertest \ - alsa-utils-aseqnet \ - alsa-utils-aseqdump \ - alsa-utils-alsactl \ - alsa-utils-alsaloop \ - alsa-utils-alsaucm \ - " - -PACKAGES += "${ALSA_UTILS_PKGS}" -RDEPENDS_${PN} += "${ALSA_UTILS_PKGS}" - -FILES_${PN} = "" -FILES_alsa-utils-alsabat = "${bindir}/alsabat" -FILES_alsa-utils-alsatplg = "${bindir}/alsatplg" -FILES_alsa-utils-aplay = "${bindir}/aplay ${bindir}/arecord" -FILES_alsa-utils-amixer = "${bindir}/amixer" -FILES_alsa-utils-alsamixer = "${bindir}/alsamixer" -FILES_alsa-utils-speakertest = "${bindir}/speaker-test ${datadir}/sounds/alsa/ ${datadir}/alsa/speaker-test/" -FILES_alsa-utils-midi = "${bindir}/aplaymidi ${bindir}/arecordmidi ${bindir}/amidi" -FILES_alsa-utils-aconnect = "${bindir}/aconnect" -FILES_alsa-utils-aseqnet = "${bindir}/aseqnet" -FILES_alsa-utils-iecset = "${bindir}/iecset" -FILES_alsa-utils-alsactl = "${sbindir}/alsactl */udev/rules.d */*/udev/rules.d ${systemd_unitdir} ${localstatedir}/lib/alsa ${datadir}/alsa/init/" -FILES_alsa-utils-aseqdump = "${bindir}/aseqdump" -FILES_alsa-utils-alsaloop = "${bindir}/alsaloop" -FILES_alsa-utils-alsaucm = "${bindir}/alsaucm" - -SUMMARY_alsa-utils-alsabat = "Command-line sound tester for ALSA sound card driver" -SUMMARY_alsa-utils-alsatplg = "Converts topology text files into binary format for kernel" -SUMMARY_alsa-utils-aplay = "Play (and record) sound files using ALSA" -SUMMARY_alsa-utils-amixer = "Command-line control for ALSA mixer and settings" -SUMMARY_alsa-utils-alsamixer = "ncurses-based control for ALSA mixer and settings" -SUMMARY_alsa-utils-speakertest = "ALSA surround speaker test utility" -SUMMARY_alsa-utils-midi = "Miscellaneous MIDI utilities for ALSA" -SUMMARY_alsa-utils-aconnect = "ALSA sequencer connection manager" -SUMMARY_alsa-utils-aseqnet = "Network client/server for ALSA sequencer" -SUMMARY_alsa-utils-iecset = "ALSA utility for setting/showing IEC958 (S/PDIF) status bits" -SUMMARY_alsa-utils-alsactl = "Saves/restores ALSA-settings in /etc/asound.state" -SUMMARY_alsa-utils-aseqdump = "Shows the events received at an ALSA sequencer port" -SUMMARY_alsa-utils-alsaloop = "ALSA PCM loopback utility" -SUMMARY_alsa-utils-alsaucm = "ALSA Use Case Manager" - -RRECOMMENDS_alsa-utils-alsactl = "alsa-states" - -ALLOW_EMPTY_alsa-utils = "1" - -do_install() { - autotools_do_install - - # We don't ship this here because it requires a dependency on bash. - # See alsa-utils-scripts_${PV}.bb - rm ${D}${sbindir}/alsaconf - rm ${D}${sbindir}/alsa-info.sh - rm -f ${D}${sbindir}/alsabat-test.sh - - if ${@bb.utils.contains('PACKAGECONFIG', 'udev', 'false', 'true', d)}; then - # This is where alsa-utils will install its rules if we don't tell it anything else. - rm -rf ${D}${nonarch_base_libdir}/udev - rmdir --ignore-fail-on-non-empty ${D}${nonarch_base_libdir} - fi -} diff --git a/meta/recipes-multimedia/alsa/alsa-utils_1.2.11.bb b/meta/recipes-multimedia/alsa/alsa-utils_1.2.11.bb new file mode 100644 index 0000000000..e598fac9f8 --- /dev/null +++ b/meta/recipes-multimedia/alsa/alsa-utils_1.2.11.bb @@ -0,0 +1,124 @@ +SUMMARY = "ALSA sound utilities" +DESCRIPTION = "collection of small and often extremely powerful applications \ +designed to allow users to control the various parts of the ALSA system." +HOMEPAGE = "http://www.alsa-project.org" +BUGTRACKER = "http://alsa-project.org/main/index.php/Bug_Tracking" +SECTION = "console/utils" +# Some parts are GPL-2.0-or-later, some are GPL-2.0-only (e.g. axfer, alsactl) +# so result is GPL-2.0-only +LICENSE = "GPL-2.0-only" +LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552 \ + file://alsactl/utils.c;beginline=3;endline=18;md5=96cc06a4cebe5eb7975688ffb0e65642" +DEPENDS = "alsa-lib ncurses libsamplerate0" + +PACKAGECONFIG ??= "udev" + +# alsabat can be built also without fftw support (with reduced functionality). +# It would be better to always enable alsabat, but provide an option for +# enabling/disabling fftw. The configure script doesn't support that, however +# (at least in any obvious way), so for now we only support alsabat with fftw +# or no alsabat at all. +PACKAGECONFIG[bat] = "--enable-bat,--disable-bat,fftwf" + +PACKAGECONFIG[udev] = "--with-udev-rules-dir=`pkg-config --variable=udevdir udev`/rules.d,--with-udev-rules-dir=/unwanted/rules.d,udev" +PACKAGECONFIG[manpages] = "--enable-xmlto, --disable-xmlto, xmlto-native docbook-xml-dtd4-native docbook-xsl-stylesheets-native" + +# alsa-utils specified in SRC_URI due to alsa-utils-scripts recipe +SRC_URI = "https://www.alsa-project.org/files/pub/utils/alsa-utils-${PV}.tar.bz2 \ + " +SRC_URI[sha256sum] = "9ac6ca3a883f151e568dcf979b8d2e5cbecc51b819bb0e6bb8a2e9b34cc428a7" + +# On build machines with python-docutils (not python3-docutils !!) installed +# rst2man (not rst2man.py) is detected and compile fails with +# | make[1]: *** No rule to make target 'alsaucm.1', needed by 'all-am'. Stop. +# Avoid this by disabling expicitly +EXTRA_OECONF = "--disable-rst2man" + +inherit autotools gettext pkgconfig manpages + +# This are all packages that we need to make. Also, the now empty alsa-utils +# ipk depends on them. + +ALSA_UTILS_PKGS = "\ + ${@bb.utils.contains('PACKAGECONFIG', 'bat', 'alsa-utils-alsabat', '', d)} \ + alsa-utils-alsamixer \ + alsa-utils-alsatplg \ + alsa-utils-midi \ + alsa-utils-aplay \ + alsa-utils-amixer \ + alsa-utils-aconnect \ + alsa-utils-iecset \ + alsa-utils-speakertest \ + alsa-utils-aseqnet \ + alsa-utils-aseqdump \ + alsa-utils-alsactl \ + alsa-utils-alsaloop \ + alsa-utils-alsaucm \ + alsa-utils-scripts \ + alsa-utils-nhltdmicinfo \ + " + +PACKAGES += "${ALSA_UTILS_PKGS}" +RDEPENDS:${PN} += "${ALSA_UTILS_PKGS}" + +FILES:${PN} = "" +ALLOW_EMPTY:alsa-utils = "1" +FILES:alsa-utils-alsabat = "${bindir}/alsabat" +FILES:alsa-utils-alsatplg = "${bindir}/alsatplg ${libdir}/alsa-topology" +FILES:alsa-utils-aplay = "${bindir}/aplay ${bindir}/arecord ${bindir}/axfer" +FILES:alsa-utils-amixer = "${bindir}/amixer" +FILES:alsa-utils-alsamixer = "${bindir}/alsamixer" +FILES:alsa-utils-speakertest = "${bindir}/speaker-test ${datadir}/sounds/alsa/ ${datadir}/alsa/speaker-test/" +FILES:alsa-utils-midi = "${bindir}/aplaymidi ${bindir}/arecordmidi ${bindir}/amidi" +FILES:alsa-utils-aconnect = "${bindir}/aconnect" +FILES:alsa-utils-aseqnet = "${bindir}/aseqnet" +FILES:alsa-utils-iecset = "${bindir}/iecset" +FILES:alsa-utils-alsactl = "${sbindir}/alsactl */udev/rules.d/90-alsa-restore.rules */*/udev/rules.d/90-alsa-restore.rules ${systemd_unitdir} ${localstatedir}/lib/alsa ${datadir}/alsa/init/" +FILES:alsa-utils-aseqdump = "${bindir}/aseqdump" +FILES:alsa-utils-alsaloop = "${bindir}/alsaloop" +FILES:alsa-utils-alsaucm = "${bindir}/alsaucm */udev/rules.d/89-alsa-ucm.rules */*/udev/rules.d/89-alsa-ucm.rules" +FILES:alsa-utils-scripts = "${sbindir}/alsaconf \ + ${sbindir}/alsa-info.sh \ + ${sbindir}/alsabat-test.sh \ + " +FILES:alsa-utils-nhltdmicinfo = "${bindir}/nhlt-dmic-info" + +SUMMARY:alsa-utils-alsabat = "Command-line sound tester for ALSA sound card driver" +SUMMARY:alsa-utils-alsatplg = "Converts topology text files into binary format for kernel" +SUMMARY:alsa-utils-aplay = "Play (and record) sound files using ALSA" +SUMMARY:alsa-utils-amixer = "Command-line control for ALSA mixer and settings" +SUMMARY:alsa-utils-alsamixer = "ncurses-based control for ALSA mixer and settings" +SUMMARY:alsa-utils-speakertest = "ALSA surround speaker test utility" +SUMMARY:alsa-utils-midi = "Miscellaneous MIDI utilities for ALSA" +SUMMARY:alsa-utils-aconnect = "ALSA sequencer connection manager" +SUMMARY:alsa-utils-aseqnet = "Network client/server for ALSA sequencer" +SUMMARY:alsa-utils-iecset = "ALSA utility for setting/showing IEC958 (S/PDIF) status bits" +SUMMARY:alsa-utils-alsactl = "Saves/restores ALSA-settings in /etc/asound.state" +SUMMARY:alsa-utils-aseqdump = "Shows the events received at an ALSA sequencer port" +SUMMARY:alsa-utils-alsaloop = "ALSA PCM loopback utility" +SUMMARY:alsa-utils-alsaucm = "ALSA Use Case Manager" +SUMMARY:alsa-utils-scripts = "Shell scripts that show help info and create ALSA configuration files" +SUMMARY:alsa-utils-nhltdmicinfo = "Dumps microphone array information from ACPI NHLT table" + +RRECOMMENDS:alsa-utils-alsactl = "alsa-states" + +do_install() { + autotools_do_install + + install -d ${D}${sbindir} + install -m 0755 ${B}/alsaconf/alsaconf ${D}${sbindir}/ + install -m 0755 ${S}/alsa-info/alsa-info.sh ${D}${sbindir}/ + if ${@bb.utils.contains('PACKAGECONFIG', 'bat', 'true', 'false', d)}; then + install -m 0755 ${S}/bat/alsabat-test.sh ${D}${sbindir}/ + fi + + # If udev is disabled, we told configure to install the rules + # in /unwanted, so we can remove them now. If udev is enabled, + # then /unwanted won't exist and this will have no effect. + rm -rf ${D}/unwanted +} + + +PROVIDES = "alsa-utils-alsaconf alsa-utils-scripts" + +RDEPENDS:${PN}-scripts += "bash" |