pulseaudio: 12.2 -> 13.0

Release notes:
https://www.freedesktop.org/wiki/Software/PulseAudio/Notes/13.0/

Dropped intltool-native from DEPENDS. The .desktop file translations
don't need intltool any more, gettext is enough.

Dropped upstreamed patches:
0001-alsa-Fix-inclusion-of-use-case.h.patch
0001-introduce-a-special-build-flag-to-explicitly-disable.patch

Added a new package: pulseaudio-pa-info. It contains the new pa-info
script.

BlueZ 4 support was removed in this version. That's not visible in the
recipe, but I noticed that the BlueZ 4 modules were still being built in
12.2, since they hadn't been explicitly disabled in the recipe.

(From OE-Core rev: e4b9e98100cdeb74d4898afcab2d76f2e0855960)

Signed-off-by: Tanu Kaskinen <tanuk@iki.fi>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Tanu Kaskinen
2019-11-21 16:06:24 +02:00
committed by Richard Purdie
parent 9582fec24a
commit 9f88035bb8
4 changed files with 26 additions and 214 deletions

View File

@@ -56,7 +56,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=0e5cd938de1a7a53ea5adac38cc10c39 \
file://src/pulsecore/filter/biquad.h;beginline=1;endline=4;md5=6d46d1365206528a20137355924233c1 \
"
DEPENDS = "libatomic-ops libsndfile1 libtool intltool-native"
DEPENDS = "libatomic-ops libsndfile1 libtool"
# optional
DEPENDS += "udev alsa-lib glib-2.0"
DEPENDS += "speexdsp libxml-parser-perl-native libcap"
@@ -158,12 +158,22 @@ USERADD_PARAM_pulseaudio-server = "--system --home /var/run/pulse \
--no-create-home --shell /bin/false \
--groups audio,pulse --gid pulse pulse"
PACKAGES =+ "\
libpulse \
libpulse-mainloop-glib \
libpulse-simple \
libpulsecommon \
libpulsecore \
${PN}-pa-info \
${PN}-server \
${PN}-misc \
"
# The console-kit module is included here explicitly so bitbake can map to the
# RDEPENDS we define for it in this recipe, and thereby ensure that when
# adding the console-kit module to an image, we also get the necessary
# consolekit package produced.
PACKAGES =+ "libpulsecore libpulsecommon libpulse libpulse-simple libpulse-mainloop-glib \
pulseaudio-server pulseaudio-misc ${@bb.utils.contains('PACKAGECONFIG', 'dbus', 'pulseaudio-module-console-kit', '', d)}"
PACKAGES =+ "${@bb.utils.contains('PACKAGECONFIG', 'dbus', 'pulseaudio-module-console-kit', '', d)}"
#upgrade path:
RREPLACES_pulseaudio-server = "libpulse-bin libpulse-conf"
@@ -183,6 +193,7 @@ FILES_libpulse-mainloop-glib = "${libdir}/libpulse-mainloop-glib.so.*"
FILES_${PN}-dev += "${libdir}/pulse-${PV}/modules/*.la ${datadir}/vala ${libdir}/cmake"
FILES_${PN}-conf = "${sysconfdir}"
FILES_${PN}-bin += "${sysconfdir}/default/volatiles/volatiles.04_pulse"
FILES_${PN}-pa-info = "${bindir}/pa-info"
FILES_${PN}-server = "${bindir}/pulseaudio ${bindir}/start-* ${sysconfdir} ${bindir}/pactl */udev/rules.d/*.rules */*/udev/rules.d/*.rules ${systemd_user_unitdir}/*"
#SYSTEMD_PACKAGES = "${PN}-server"
@@ -214,6 +225,16 @@ python populate_packages_prepend() {
do_split_packages(d, plugindir, r'^lib(.*)\.so$', '${PN}-lib-%s', 'PulseAudio library for %s', extra_depends='', prepend=True)
}
# pa-info is a bash script that collects information about the audio setup.
# It's primarily useful for attaching an information dump when reporting bugs.
RDEPENDS_${PN}-pa-info = "\
alsa-utils-amixer \
alsa-utils-aplay \
alsa-utils-scripts \
bash \
${PN}-server \
"
RDEPENDS_pulseaudio-server = " \
pulseaudio-module-filter-apply \
pulseaudio-module-filter-heuristics \

View File

@@ -1,46 +0,0 @@
From b89d33bb182c42db5ad3987b0e91b7bf62f421e8 Mon Sep 17 00:00:00 2001
From: Takashi Iwai <tiwai@suse.de>
Date: Sun, 21 Apr 2019 11:59:30 +0200
Subject: [PATCH] alsa: Fix inclusion of use-case.h
The recent change in ALSA upstream stripped -I$include/alsa path from
pkgconfig. We already fixed for this change in some places but still
the code for UCM was overlooked, and this resulted in the unresolved
symbols in alsa card module. Fix them as well.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Upstream-Status: Backport
---
configure.ac | 2 +-
src/modules/alsa/alsa-ucm.h | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/configure.ac b/configure.ac
index c004bd70d..b44ed1595 100644
--- a/configure.ac
+++ b/configure.ac
@@ -826,7 +826,7 @@ AS_IF([test "x$enable_alsa" = "xyes" && test "x$HAVE_ALSA" = "x0"],
AS_IF([test "x$HAVE_ALSA" = "x1"],
[
save_CPPFLAGS="$CPPFLAGS"; CPPFLAGS="$CPPFLAGS $ASOUNDLIB_CFLAGS"
- AC_CHECK_HEADERS([use-case.h], HAVE_ALSA_UCM=1, HAVE_ALSA_UCM=0)
+ AC_CHECK_HEADERS([alsa/use-case.h], HAVE_ALSA_UCM=1, HAVE_ALSA_UCM=0)
CPPFLAGS="$save_CPPFLAGS"
],
HAVE_ALSA_UCM=0)
diff --git a/src/modules/alsa/alsa-ucm.h b/src/modules/alsa/alsa-ucm.h
index 53abf3f90..c926f3cc3 100644
--- a/src/modules/alsa/alsa-ucm.h
+++ b/src/modules/alsa/alsa-ucm.h
@@ -23,7 +23,7 @@
***/
#ifdef HAVE_ALSA_UCM
-#include <use-case.h>
+#include <alsa/use-case.h>
#else
typedef void snd_use_case_mgr_t;
#endif
--
2.21.0

View File

@@ -1,161 +0,0 @@
From 36feb98e568221e24286615730888d5f6ff323f0 Mon Sep 17 00:00:00 2001
From: Hongxu Jia <hongxu.jia@windriver.com>
Date: Fri, 7 Dec 2018 15:12:38 +0800
Subject: [PATCH] introduce a special build flag to explicitly disables running
from build tree
It is helpful to improve reproducibility build [1] since
PA_SRCDIR/PA_BUILDDIR contains build path, disable running
from build tree could drop these macros at precompilation.
[1] https://reproducible-builds.org/
Upstream-Status: Submitted [pulseaudio-discuss@lists.freedesktop.org]
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Acked-by: Tanu Kaskinen <tanuk@iki.fi>
---
configure.ac | 10 ++++++++++
src/daemon/daemon-conf.c | 4 +++-
src/daemon/main.c | 6 ++++++
src/modules/alsa/alsa-mixer.c | 4 ++++
src/modules/gconf/module-gconf.c | 2 +-
src/modules/gsettings/module-gsettings.c | 2 +-
src/pulsecore/core-util.c | 4 +++-
7 files changed, 28 insertions(+), 4 deletions(-)
diff --git a/configure.ac b/configure.ac
index c9c414f..8b345ef 100644
--- a/configure.ac
+++ b/configure.ac
@@ -998,6 +998,16 @@ AS_IF([test "x$enable_asyncns" = "xyes" && test "x$HAVE_LIBASYNCNS" = "x0"],
AM_CONDITIONAL([HAVE_LIBASYNCNS], [test "x$HAVE_LIBASYNCNS" = x1])
AS_IF([test "x$HAVE_LIBASYNCNS" = "x1"], AC_DEFINE([HAVE_LIBASYNCNS], 1, [Have libasyncns?]))
+#### Running from build tree (optional) ####
+
+AC_ARG_ENABLE([running-from-build-tree],
+ AS_HELP_STRING([--disable-running-from-build-tree],[Disable running from build tree]))
+
+AS_IF([test "x$enable_running_from_build_tree" != "xno"],
+ AC_DEFINE([HAVE_RUNNING_FROM_BUILD_TREE], 1, [Have running from build tree]))
+
+AC_SUBST(HAVE_RUNNING_FROM_BUILD_TREE)
+
#### TCP wrappers (optional) ####
AC_ARG_ENABLE([tcpwrap],
diff --git a/src/daemon/daemon-conf.c b/src/daemon/daemon-conf.c
index 9883126..f01eff4 100644
--- a/src/daemon/daemon-conf.c
+++ b/src/daemon/daemon-conf.c
@@ -155,12 +155,14 @@ pa_daemon_conf *pa_daemon_conf_new(void) {
c->dl_search_path = pa_sprintf_malloc("%s" PA_PATH_SEP "lib" PA_PATH_SEP "pulse-%d.%d" PA_PATH_SEP "modules",
pa_win32_get_toplevel(NULL), PA_MAJOR, PA_MINOR);
#else
+#ifdef HAVE_RUNNING_FROM_BUILD_TREE
if (pa_run_from_build_tree()) {
pa_log_notice("Detected that we are run from the build tree, fixing search path.");
c->dl_search_path = pa_xstrdup(PA_BUILDDIR);
} else
- c->dl_search_path = pa_xstrdup(PA_DLSEARCHPATH);
#endif
+ c->dl_search_path = pa_xstrdup(PA_DLSEARCHPATH);
+#endif //Endof #ifdef OS_IS_WIN32
return c;
}
diff --git a/src/daemon/main.c b/src/daemon/main.c
index c80fa94..1e00388 100644
--- a/src/daemon/main.c
+++ b/src/daemon/main.c
@@ -932,6 +932,12 @@ int main(int argc, char *argv[]) {
pa_log_debug("Running in VM: %s", pa_yes_no(pa_running_in_vm()));
+#ifdef HAVE_RUNNING_FROM_BUILD_TREE
+ pa_log_debug("Running from build tree: %s", pa_yes_no(pa_run_from_build_tree()));
+#else
+ pa_log_debug("Running from build tree: no");
+#endif
+
#ifdef __OPTIMIZE__
pa_log_debug("Optimized build: yes");
#else
diff --git a/src/modules/alsa/alsa-mixer.c b/src/modules/alsa/alsa-mixer.c
index a524d6d..670f646 100644
--- a/src/modules/alsa/alsa-mixer.c
+++ b/src/modules/alsa/alsa-mixer.c
@@ -2571,9 +2571,11 @@ static int path_verify(pa_alsa_path *p) {
}
static const char *get_default_paths_dir(void) {
+#ifdef HAVE_RUNNING_FROM_BUILD_TREE
if (pa_run_from_build_tree())
return PA_SRCDIR "/modules/alsa/mixer/paths/";
else
+#endif
return PA_ALSA_PATHS_DIR;
}
@@ -4455,7 +4457,9 @@ pa_alsa_profile_set* pa_alsa_profile_set_new(const char *fname, const pa_channel
fname = "default.conf";
fn = pa_maybe_prefix_path(fname,
+#ifdef HAVE_RUNNING_FROM_BUILD_TREE
pa_run_from_build_tree() ? PA_SRCDIR "/modules/alsa/mixer/profile-sets/" :
+#endif
PA_ALSA_PROFILE_SETS_DIR);
r = pa_config_parse(fn, NULL, items, NULL, false, ps);
diff --git a/src/modules/gconf/module-gconf.c b/src/modules/gconf/module-gconf.c
index c0f4dde..76a1f19 100644
--- a/src/modules/gconf/module-gconf.c
+++ b/src/modules/gconf/module-gconf.c
@@ -51,7 +51,7 @@ int pa__init(pa_module*m) {
u->buf_fill = 0;
if ((u->fd = pa_start_child_for_read(
-#if defined(__linux__) && !defined(__OPTIMIZE__)
+#if defined(__linux__) && defined(HAVE_RUNNING_FROM_BUILD_TREE)
pa_run_from_build_tree() ? PA_BUILDDIR "/gconf-helper" :
#endif
PA_GCONF_HELPER, NULL, &u->pid)) < 0)
diff --git a/src/modules/gsettings/module-gsettings.c b/src/modules/gsettings/module-gsettings.c
index 330eca1..209c857 100644
--- a/src/modules/gsettings/module-gsettings.c
+++ b/src/modules/gsettings/module-gsettings.c
@@ -51,7 +51,7 @@ int pa__init(pa_module*m) {
u->buf_fill = 0;
if ((u->fd = pa_start_child_for_read(
-#if defined(__linux__) && !defined(__OPTIMIZE__)
+#if defined(__linux__) && defined(HAVE_RUNNING_FROM_BUILD_TREE)
pa_run_from_build_tree() ? PA_BUILDDIR "/gsettings-helper" :
#endif
PA_GSETTINGS_HELPER, NULL, &u->pid)) < 0)
diff --git a/src/pulsecore/core-util.c b/src/pulsecore/core-util.c
index 64e9f21..f85dd20 100644
--- a/src/pulsecore/core-util.c
+++ b/src/pulsecore/core-util.c
@@ -3436,15 +3436,17 @@ void pa_reset_personality(void) {
}
bool pa_run_from_build_tree(void) {
- char *rp;
static bool b = false;
+#ifdef HAVE_RUNNING_FROM_BUILD_TREE
+ char *rp;
PA_ONCE_BEGIN {
if ((rp = pa_readlink("/proc/self/exe"))) {
b = pa_startswith(rp, PA_BUILDDIR);
pa_xfree(rp);
}
} PA_ONCE_END;
+#endif
return b;
}
--
2.7.4

View File

@@ -2,13 +2,11 @@ require pulseaudio.inc
SRC_URI = "http://freedesktop.org/software/pulseaudio/releases/${BP}.tar.xz \
file://0001-client-conf-Add-allow-autospawn-for-root.patch \
file://0001-introduce-a-special-build-flag-to-explicitly-disable.patch \
file://0001-alsa-Fix-inclusion-of-use-case.h.patch \
file://0002-do-not-display-CLFAGS-to-improve-reproducibility-bui.patch \
file://volatiles.04_pulse \
"
SRC_URI[md5sum] = "c42f1f1465e8df9859d023dc184734bf"
SRC_URI[sha256sum] = "809668ffc296043779c984f53461c2b3987a45b7a25eb2f0a1d11d9f23ba4055"
SRC_URI[md5sum] = "e41d606f90254ed45c90520faf83d95c"
SRC_URI[sha256sum] = "961b23ca1acfd28f2bc87414c27bb40e12436efcf2158d29721b1e89f3f28057"
do_compile_prepend() {
mkdir -p ${S}/libltdl