summaryrefslogtreecommitdiff
path: root/poky/meta/recipes-multimedia/pulseaudio
diff options
context:
space:
mode:
authorAndrew Geissler <geissonator@yahoo.com>2021-02-13 00:55:30 +0300
committerBrad Bishop <bradleyb@fuzziesquirrel.com>2021-02-25 23:15:06 +0300
commit706d5aacd7ab7b37c00df1a1b210e4ced06119e1 (patch)
treeed0bec373424d01accfb2e9c895c177a3e2d7abe /poky/meta/recipes-multimedia/pulseaudio
parentac970dd705934286df062e0f1501f776dc2ef01d (diff)
downloadopenbmc-706d5aacd7ab7b37c00df1a1b210e4ced06119e1.tar.xz
Reset poky to before our libpam hacks
Things got a bit out of synch with openbmc-config due to the libpam issues and the migration from the meta-* layers. Revert the two previous commits and then put the latest poky in with the libpam revert and get openbmc-config right again. Revert "Revert "libpam: update 1.3.1 -> 1.5.1"" This reverts commit 87ddd3eab4df68e624b5350ccaab28b3b97547c0. Revert "poky: subtree update:796be0593a..10c69538c0" This reverts commit c723b72979bfac6362509cf1fe086900f6641f28. Change-Id: I3a1f405193aee6a21fe0cd24be9927c143a23d9a Signed-off-by: Andrew Geissler <geissonator@yahoo.com>
Diffstat (limited to 'poky/meta/recipes-multimedia/pulseaudio')
-rw-r--r--poky/meta/recipes-multimedia/pulseaudio/pulseaudio.inc71
-rw-r--r--poky/meta/recipes-multimedia/pulseaudio/pulseaudio/0001-build-sys-Add-an-option-for-enabling-disabling-Valgr.patch67
-rw-r--r--poky/meta/recipes-multimedia/pulseaudio/pulseaudio/0001-meson-Check-for-__get_cpuid.patch82
-rw-r--r--poky/meta/recipes-multimedia/pulseaudio/pulseaudio_14.0.bb2
4 files changed, 41 insertions, 181 deletions
diff --git a/poky/meta/recipes-multimedia/pulseaudio/pulseaudio.inc b/poky/meta/recipes-multimedia/pulseaudio/pulseaudio.inc
index e40b8c1c4..3a26cb59d 100644
--- a/poky/meta/recipes-multimedia/pulseaudio/pulseaudio.inc
+++ b/poky/meta/recipes-multimedia/pulseaudio/pulseaudio.inc
@@ -56,47 +56,47 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=0e5cd938de1a7a53ea5adac38cc10c39 \
file://src/pulsecore/filter/biquad.h;beginline=1;endline=4;md5=6d46d1365206528a20137355924233c1 \
"
-# libtool is needed for libltdl, used in module loading.
DEPENDS = "libatomic-ops libsndfile1 libtool"
# optional
DEPENDS += "udev alsa-lib glib-2.0"
DEPENDS += "speexdsp libxml-parser-perl-native libcap"
-inherit bash-completion meson pkgconfig useradd gettext perlnative systemd manpages gsettings
+inherit autotools bash-completion pkgconfig useradd gettext perlnative systemd manpages gsettings
# *.desktop rules wont be generated during configure and build will fail
# if using --disable-nls
USE_NLS = "yes"
-EXTRA_OEMESON = "\
- -Dhal-compat=false \
- -Dorc=disabled \
- -Daccess_group=audio \
- -Dopenssl=disabled \
- -Ddatabase=simple \
- -Dzshcompletiondir=no \
- -Dudevrulesdir=`pkg-config --variable=udevdir udev`/rules.d \
- -Dvalgrind=disabled \
- -Dtests=false \
- -Drunning-from-build-tree=false \
+EXTRA_OECONF = "\
+ --disable-hal-compat \
+ --disable-orc \
+ --enable-tcpwrap=no \
+ --with-access-group=audio \
+ --disable-openssl \
+ --with-database=simple \
+ --without-zsh-completion-dir \
+ --with-udev-rules-dir=`pkg-config --variable=udevdir udev`/rules.d \
+ ac_cv_header_valgrind_memcheck_h=no \
+ --disable-tests \
+ --disable-running-from-build-tree \
"
# soxr (the SoX Resampler library) doesn't seem to be currently packaged in
# oe-core nor meta-oe, so let's not add a PACKAGECONFIG entry for it for now.
-EXTRA_OEMESON += "-Dsoxr=disabled"
+EXTRA_OECONF += "--without-soxr"
# The FFTW dependency (for module-equalizer-sink) was removed in commit
# ddbd713293 without explaining why it was not made a PACKAGECONFIG item
# instead. Oh well, let's keep it disabled until someone expresses some
# interest in having it enabled.
-EXTRA_OEMESON += "-Dfftw=disabled"
+EXTRA_OECONF += "--without-fftw"
# The "adrian" echo canceller implementation has a non-standard license
# (src/modules/echo-cancel/adrian-license.txt). It's a permissive license, so
# the licensing terms are probably not problematic, but it would be an extra
# hassle to add the license to OE-Core's set of licenses. The canceller isn't
# very good anyway, better alternatives exist (such as the webrtc canceller).
-EXTRA_OEMESON += "-Dadrian-aec=false"
+EXTRA_OECONF += "--disable-adrian-aec"
PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', 'bluez5', '', d)} \
${@bb.utils.contains('DISTRO_FEATURES', 'zeroconf', 'avahi', '', d)} \
@@ -105,25 +105,35 @@ PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', 'bluez5'
dbus gsettings \
"
-PACKAGECONFIG[dbus] = "-Ddbus=enabled,-Ddbus=disabled,dbus"
-PACKAGECONFIG[bluez5] = "-Dbluez5=true,-Dbluez5=false,bluez5 sbc"
-PACKAGECONFIG[gsettings] = "-Dgsettings=enabled,-Dgsettings=disabled,glib-2.0-native glib-2.0"
-PACKAGECONFIG[ofono] = "-Dbluez5-ofono-headset=true,-Dbluez5-ofono-headset=false,ofono"
-PACKAGECONFIG[gtk] = "-Dgtk=enabled,-Dgtk=disabled,gtk+3"
-PACKAGECONFIG[systemd] = "-Dsystemd=enabled -Dsystemduserunitdir=${systemd_user_unitdir},-Dsystemd=disabled,systemd"
-PACKAGECONFIG[x11] = "-Dx11=enabled,-Dx11=disabled,virtual/libx11 libxtst libice libsm libxcb"
-PACKAGECONFIG[avahi] = "-Davahi=enabled,-Davahi=disabled,avahi"
-PACKAGECONFIG[jack] = "-Djack=enabled,-Djack=disabled,jack"
+PACKAGECONFIG[dbus] = "--enable-dbus,--disable-dbus,dbus"
+PACKAGECONFIG[bluez5] = "--enable-bluez5,--disable-bluez5,bluez5 sbc"
+PACKAGECONFIG[gconf] = "--enable-gconf,--disable-gconf,gconf"
+PACKAGECONFIG[gsettings] = "--enable-gsettings,--disable-gsettings,glib-2.0-native glib-2.0"
+PACKAGECONFIG[ofono] = "--enable-bluez5-ofono-headset,--disable-bluez5-ofono-headset,ofono"
+PACKAGECONFIG[gtk] = "--enable-gtk3,--disable-gtk3,gtk+3"
+PACKAGECONFIG[systemd] = "--enable-systemd-daemon --enable-systemd-login --enable-systemd-journal --with-systemduserunitdir=${systemd_user_unitdir},--disable-systemd-daemon --disable-systemd-login --disable-systemd-journal,systemd"
+PACKAGECONFIG[x11] = "--enable-x11,--disable-x11,virtual/libx11 libxtst libice libsm libxcb"
+PACKAGECONFIG[avahi] = "--enable-avahi,--disable-avahi,avahi"
+PACKAGECONFIG[jack] = "--enable-jack,--disable-jack,jack"
# Since many embedded systems don't have non-root users, it's useful to be
# able to use pulseaudio autospawn for root as well.
PACKAGECONFIG[autospawn-for-root] = ",,,"
-PACKAGECONFIG[lirc] = "-Dlirc=enabled,-Dlirc=disabled,lirc"
-PACKAGECONFIG[webrtc] = "-Dwebrtc-aec=enabled,-Dwebrtc-aec=disabled,webrtc-audio-processing"
-PACKAGECONFIG[ipv6] = "-Dipv6=true,-Dipv6=false,"
-PACKAGECONFIG[manpages] = "-Dman=true,-Dman=false,"
+PACKAGECONFIG[lirc] = "--enable-lirc,--disable-lirc,lirc"
+PACKAGECONFIG[webrtc] = "--enable-webrtc-aec,--disable-webrtc-aec,webrtc-audio-processing"
+PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6,"
+PACKAGECONFIG[manpages] = "--enable-manpages, --disable-manpages, "
+
+EXTRA_OECONF_append_arm = "${@bb.utils.contains("TUNE_FEATURES", "neon", "", " --enable-neon-opt=no", d)}"
+EXTRA_OECONF_append_armeb = "${@bb.utils.contains("TUNE_FEATURES", "neon", "", " --enable-neon-opt=no", d)}"
+
export TARGET_PFPU = "${TARGET_FPU}"
+# TODO: Use more fine granular version
+#OE_LT_RPATH_ALLOW=":${libdir}/pulse-0.9:"
+OE_LT_RPATH_ALLOW = "any"
+OE_LT_RPATH_ALLOW[export]="1"
+
set_cfg_value () {
sed -i -e "s/\(; *\)\?$2 =.*/$2 = $3/" "$1"
if ! grep -q "^$2 = $3\$" "$1"; then
@@ -133,7 +143,7 @@ set_cfg_value () {
do_compile_append () {
if ${@bb.utils.contains('PACKAGECONFIG', 'autospawn-for-root', 'true', 'false', d)}; then
- set_cfg_value src/pulse/client.conf allow-autospawn-for-root yes
+ set_cfg_value src/client.conf allow-autospawn-for-root yes
fi
}
@@ -259,6 +269,7 @@ RDEPENDS_pulseaudio-module-console-kit =+ "${@bb.utils.contains('DISTRO_FEATURES
RDEPENDS_pulseaudio-misc += "pulseaudio-module-cli-protocol-unix"
FILES_${PN}-module-alsa-card += "${datadir}/pulseaudio/alsa-mixer"
+FILES_${PN}-module-gconf += "${libexecdir}/pulse/gconf-helper"
GSETTINGS_PACKAGE = "${@bb.utils.contains('PACKAGECONFIG', 'gsettings', '${PN}-module-gsettings', '', d)}"
FILES_${PN}-module-gsettings += "${libexecdir}/pulse/gsettings-helper ${datadir}/GConf/gsettings ${datadir}/glib-2.0/schemas"
diff --git a/poky/meta/recipes-multimedia/pulseaudio/pulseaudio/0001-build-sys-Add-an-option-for-enabling-disabling-Valgr.patch b/poky/meta/recipes-multimedia/pulseaudio/pulseaudio/0001-build-sys-Add-an-option-for-enabling-disabling-Valgr.patch
deleted file mode 100644
index d60a9a211..000000000
--- a/poky/meta/recipes-multimedia/pulseaudio/pulseaudio/0001-build-sys-Add-an-option-for-enabling-disabling-Valgr.patch
+++ /dev/null
@@ -1,67 +0,0 @@
-From 6d202833a5ae241eeb648631cf95090c452198f9 Mon Sep 17 00:00:00 2001
-From: Tanu Kaskinen <tanuk@iki.fi>
-Date: Fri, 14 Feb 2020 07:29:33 +0200
-Subject: [PATCH] build-sys: Add an option for enabling/disabling Valgrind
-
-In OpenEmbedded the PulseAudio recipe currently disables Valgrind
-support by passing "ac_cv_header_valgrind_memcheck_h=no" to the
-configure script (this was added to make it deterministic whether
-Valgrdind support gets enabled or not). I'm converting the PulseAudio
-recipe to use Meson, and I needed an option to disable Valgrind.
-
-Upstream-Status: Backport
-
-Signed-off-by: Tanu Kaskinen <tanuk@iki.fi>
----
- meson.build | 6 +++++-
- meson_options.txt | 3 +++
- 2 files changed, 8 insertions(+), 1 deletion(-)
-
-diff --git a/meson.build b/meson.build
-index 658eeee57..258962724 100644
---- a/meson.build
-+++ b/meson.build
-@@ -220,7 +220,6 @@ check_headers = [
- 'sys/un.h',
- 'sys/wait.h',
- 'syslog.h',
-- 'valgrind/memcheck.h',
- 'xlocale.h',
- ]
-
-@@ -231,6 +230,10 @@ foreach h : check_headers
- endif
- endforeach
-
-+if cc.has_header('valgrind/memcheck.h', required: get_option('valgrind'))
-+ cdata.set('HAVE_VALGRIND_MEMCHECK_H', 1)
-+endif
-+
- # FIXME: move this to the above set
- if cc.has_header('pthread.h')
- cdata.set('HAVE_PTHREAD', 1)
-@@ -841,6 +844,7 @@ summary = [
- 'Enable SoXR (resampler): @0@'.format(soxr_dep.found()),
- 'Enable WebRTC echo canceller: @0@'.format(webrtc_dep.found()),
- 'Enable Gcov coverage: @0@'.format(get_option('gcov')),
-+ 'Enable Valgrind: @0@'.format(cdata.has('HAVE_VALGRIND_MEMCHECK_H')),
- 'Enable man pages: @0@'.format(get_option('man')),
- 'Enable unit tests: @0@'.format(get_option('tests')),
- '',
-diff --git a/meson_options.txt b/meson_options.txt
-index 824f24e08..115cc84af 100644
---- a/meson_options.txt
-+++ b/meson_options.txt
-@@ -138,6 +138,9 @@ option('systemd',
- option('udev',
- type : 'feature', value : 'auto',
- description : 'Optional udev support')
-+option('valgrind',
-+ type : 'feature', value : 'auto',
-+ description : 'Optional Valgrind support')
- option('x11',
- type : 'feature', value : 'auto',
- description : 'Optional X11 support')
---
-2.20.1
-
diff --git a/poky/meta/recipes-multimedia/pulseaudio/pulseaudio/0001-meson-Check-for-__get_cpuid.patch b/poky/meta/recipes-multimedia/pulseaudio/pulseaudio/0001-meson-Check-for-__get_cpuid.patch
deleted file mode 100644
index c9d8abcbf..000000000
--- a/poky/meta/recipes-multimedia/pulseaudio/pulseaudio/0001-meson-Check-for-__get_cpuid.patch
+++ /dev/null
@@ -1,82 +0,0 @@
-From 9d0dc8aedd08d77797f90fa6075a59613f18bf0d Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Sun, 20 Dec 2020 07:56:07 -0800
-Subject: [PATCH] meson: Check for __get_cpuid
-
-checking for presence of cpuid.h header alone is not sufficient in some case to use
-cpuid related functions. e.g. when using clang which is built for
-multiple targets will have cpuid.h header as part of compiler headers in
-distribution but one maybe compiling pulseaudion for non-x86 target. The
-current check in meson succeeds and then compile fails later because
-cpuid.h is x86-specific header. Therefore checking for symbol that is
-needed makes this robust, so even if header exist it will try to ensure
-the given symbol can be used
-
-Fixes
-src/pulsecore/core-util.c:113:
-| /mnt/b/yoe/master/build/tmp/work/riscv64-yoe-linux/pulseaudio/14.0-r0/recipe-sysroot-native/usr/lib/clang/11.0.1/include/cpuid.h:11:2: error: this header is for x86 only
-| #error this header is for x86 only
-| ^
-
-Upstream-Status: Pending
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-Cc: Tanu Kaskinen <tanuk@iki.fi>
----
- meson.build | 5 ++++-
- src/pulsecore/core-util.c | 2 +-
- src/pulsecore/cpu-x86.c | 2 +-
- 3 files changed, 6 insertions(+), 3 deletions(-)
-
-diff --git a/meson.build b/meson.build
-index 2589627..5f5127e 100644
---- a/meson.build
-+++ b/meson.build
-@@ -185,7 +185,6 @@ endif
- check_headers = [
- 'arpa/inet.h',
- 'byteswap.h',
-- 'cpuid.h',
- 'dlfcn.h',
- 'execinfo.h',
- 'grp.h',
-@@ -243,6 +242,10 @@ if cc.has_header_symbol('pthread.h', 'PTHREAD_PRIO_INHERIT')
- cdata.set('HAVE_PTHREAD_PRIO_INHERIT', 1)
- endif
-
-+if cc.has_header_symbol('cpuid.h', '__get_cpuid')
-+ cdata.set('HAVE_GET_CPUID', 1)
-+endif
-+
- # Functions
-
- check_functions = [
-diff --git a/src/pulsecore/core-util.c b/src/pulsecore/core-util.c
-index 601b1d1..6f34e7c 100644
---- a/src/pulsecore/core-util.c
-+++ b/src/pulsecore/core-util.c
-@@ -109,7 +109,7 @@
- #include <sys/personality.h>
- #endif
-
--#ifdef HAVE_CPUID_H
-+#ifdef HAVE_GET_CPUID
- #include <cpuid.h>
- #endif
-
-diff --git a/src/pulsecore/cpu-x86.c b/src/pulsecore/cpu-x86.c
-index 4e59e14..86595d4 100644
---- a/src/pulsecore/cpu-x86.c
-+++ b/src/pulsecore/cpu-x86.c
-@@ -24,7 +24,7 @@
-
- #include <stdint.h>
-
--#ifdef HAVE_CPUID_H
-+#ifdef HAVE_GET_CPUID
- #include <cpuid.h>
- #endif
-
---
-2.29.2
-
diff --git a/poky/meta/recipes-multimedia/pulseaudio/pulseaudio_14.0.bb b/poky/meta/recipes-multimedia/pulseaudio/pulseaudio_14.0.bb
index fccca1ba4..ac0c82e37 100644
--- a/poky/meta/recipes-multimedia/pulseaudio/pulseaudio_14.0.bb
+++ b/poky/meta/recipes-multimedia/pulseaudio/pulseaudio_14.0.bb
@@ -3,8 +3,6 @@ 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://0002-do-not-display-CLFAGS-to-improve-reproducibility-bui.patch \
- file://0001-build-sys-Add-an-option-for-enabling-disabling-Valgr.patch \
- file://0001-meson-Check-for-__get_cpuid.patch \
file://volatiles.04_pulse \
"
SRC_URI[md5sum] = "84a7776e63dd55c40db8fbd7c7e2e18e"