summaryrefslogtreecommitdiffstats
path: root/meta/recipes-multimedia/pulseaudio/pulseaudio
AgeCommit message (Collapse)Author
2021-07-02pulseaudio: check if NEON code can be compiled on armMingli Yu
Backport a patch to check if NEON code can be compiled on arm to fix below issue: | /prj/tmp-glibc/work/armv5e-wrs-linux-gnueabi/pulseaudio/14.0-r0/recipe-sysroot-native/usr/lib/arm-wrs-linux-gnueabi/gcc/arm-wrs-linux-gnueabi/10.2.0/include/arm_neon.h:31:2: error: #error "NEON intrinsics not available with the soft-float ABI. Please use -mfloat-abi=softfp or -mfloat-abi=hard" | 31 | #error "NEON intrinsics not available with the soft-float ABI. Please use -mfloat-abi=softfp or -mfloat-abi=hard" | ^~~~~ | ../pulseaudio-14.0/src/pulsecore/mix_neon.c: In function 'pa_mix_ch2_s16ne_neon': | ../pulseaudio-14.0/src/pulsecore/mix_neon.c:38:9: error: unknown type name 'int32x4_t'; did you mean 'int32_t'? | 38 | int32x4_t sum0, sum1; (From OE-Core rev: 79dedfbae5edceecca2b0abfacb3c61abcab7cfa) Signed-off-by: Mingli Yu <mingli.yu@windriver.com> Tested-by: Andrea Adami <andrea.adami@gmail.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-05-09pulseaudio: unbreak build with latest mesonAlexander Kanavin
(From OE-Core rev: 3ac3c5dad3e9a434b421c654b3d375c2fee044a9) Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-23pulseaudio: upgrade 14.0 -> 14.2Wang Mingyu
refresh 0002-do-not-display-CLFAGS-to-improve-reproducibility-bui.patch (From OE-Core rev: 1a6cb10fb1beb598fe40894ca32f432273db4504) Signed-off-by: Wang Mingyu <wangmy@cn.fujitsu.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-12-21pulseaudio: Fix build with clang for non-x86 targetKhem Raj
(From OE-Core rev: 01d21bd4c48aa3f899c012a2c3fd72c689e75944) Signed-off-by: Khem Raj <raj.khem@gmail.com> Cc: Tanu Kaskinen <tanuk@iki.fi> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-12-20pulseaudio: switch build system from Autotools to MesonTanu Kaskinen
Upstream is moving from Autotools to Meson, Autotools support will be dropped in 15.0. I dropped some configure options: * --enable-tcpwrap=no doesn't (currently) have a counterpart in Meson, TCP Wrappers support is always disabled. * --disable-esound doesn't have a counterpart in Meson, EsounD support is always disabled. * --disable-gconf doesn't have a counterpart in Meson, GConf support is always disabled. I backported a patch that implements support for the -Dvalgrind=disabled option. I checked with buildhistory what the differences are before and after this patch (with qemuarm with neon removed from TUNE_FEATURES, all PACKAGECONFIGs enabled): * Obvious differences in DEPENDS: Autotools stuff removed and Meson stuff added. There wasn't anything strange here. * Packages have superfluous RDEPENDS removed from them. With Autotools something caused for example X11 libraries to be added to RDEPENDS of packages that don't have anything to do with X11. * The pulseaudio-src package had MMX and SSE related files removed and Neon related files added. I don't know why the ARM build previously had MMX and SSE files included, the addition of Neon files is explained by the fact that with Meson the Neon optimizations can't be disabled if the compiler supports Neon (see below). * libfoo.so symlinks changed to point to libfoo.so.X rather than directly to libfoo.so.X.Y.Z. To my understading that's fine, since libfoo.so.X is a symlink that points to libfoo.so.X.Y.Z. * There were various file size changes, which I didn't investigate. Previously the recipe disabled ARM Neon optimizations when "neon" was not in TUNE_FEATURES. That was originally added in commit 4e7b91b5a2613b957b08aefbee1aac28fdd19598 at a time when PulseAudio's build system didn't check the availability of the arm_neon.h header, causing compilation errors when the header wasn't available. That issue was fixed a long time ago, so there was little need for the TUNE_FEATURES check, although it was still possible to make the build fail if non-neon -mfpu was passed in CFLAGS, so the TUNE_FEATURES check still had some theoretical benefit (theoretical, because generally OE passes -mfpu in CC instead of CFLAGS, so OE's -mfpu option appears very early in the compiler command line, which doesn't trip up PulseAudio's current Autotools build system). With Meson there's no option for disabling Neon optimizations if the compiler supports Neon. If -mfpu is set in CC or CFLAGS, it's ignored, because the build system adds -mfpu=neon at the end of the compiler command line, overriding any earlier -mfpu options. This shouldn't be a problem, because PulseAudio detects at runtime whether the CPU supports Neon instructions. (From OE-Core rev: 80bbea06e706fde3600950ea9ddfc38a1a76b8bb) Signed-off-by: Tanu Kaskinen <tanuk@iki.fi> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-11-29pulseaudio: upgrade 13.0 -> 14.0zangrc
0001-remap-arm-Adjust-inline-asm-constraints.patch 0001-remap_neon-use-register-r12-instead-of-r7.patch Removed since these are included in 14.0. (From OE-Core rev: 5ae2156d971ddd18f13a4377b4f9cc99bd4173fe) Signed-off-by: Zang Ruochen <zangrc.fnst@cn.fujitsu.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-07-19pulseaudio: improve the Thumb frame pointer fixTanu Kaskinen
By changing the register that PulseAudio uses in its asm code makes it unnecessary to care whether frame pointers are enabled or not. This fix was suggested by Andre McCurdy. (From OE-Core rev: f0a9be4c196c99661cdd18f80bf25281beb04216) Signed-off-by: Tanu Kaskinen <tanuk@iki.fi> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-03-06pulseaudio: Fix inline assembly syntax for armKhem Raj
Ensures that gcc can use right operand constraints (From OE-Core rev: 03e6d0f787cbd62156a163bfbcaed68bfcd379e8) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-11-27pulseaudio: 12.2 -> 13.0Tanu Kaskinen
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>
2019-07-26pulseaudio: Backport upstream fix new alsa compatibility.Piotr Tworek
Recent alsa upgrade stripped /usr/include/alsa directory from include path reported by pkgconfig. Due to this pulseaudio 12.2 configure script can find alsa's use-case.h header which in turn results in HAVE_ALSA_UCM being undefined. This turn results in pa_alsa_ucm_device_update_available symbol missing even though libalsa-util.so needs it. Once could argue pulseaudio should not allow undefined symmbols in its shared modules. Unfortunately it does and due to this current OE builds of pulseaudio crash when the server tries to dlopen any module using libalsa-util.so. Fix this by backporting ustream alsa header include fix. (From OE-Core rev: 58319f6285de41f7b99f5fd97c42d836fb5544f3) Signed-off-by: Piotr Tworek <tworaz@tworaz.net> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-01-11pulseaudio: improve reproducibilityHongxu Jia
There are two fixes, one is sent to upstream, and another is oe specific. [YOCTO #12638] (From OE-Core rev: 81e3d7bdafc9a8af8d0618a852fc67e938f5d18e) Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-29pulseaudio: 11.1 -> 12.2Tanu Kaskinen
Release notes for 12.0: https://www.freedesktop.org/wiki/Software/PulseAudio/Notes/12.0/ 12.1 contains a few regression fixes: https://lists.freedesktop.org/archives/pulseaudio-discuss/2018-July/030259.html 12.2 is just a fixup for the configure script brokenness in the 12.1 tarball. qpaeq changed license from AGPL to LGPL, so now there's no AGPL licensed code any more. This removes the excuse to not enable fftw support (i.e. module-equalizer-sink and qpaeq). I'll enable fftw in a separate patch. There's a new gsettings module that should be enabled, but I'll do that in a separate patch. It's not particularly important, because the module is only used by the paprefs GUI application that doesn't seem to be packaged for OE at the moment. Removed upstreamed patches: 0001-padsp-Make-it-compile-on-musl.patch 0001-memfd-wrappers-only-define-memfd_create-if-not-alrea.patch License-Update: qpaeq changed license from AGPL to LGPL: https://gitlab.freedesktop.org/pulseaudio/pulseaudio/commit/61217528a1cb5043ca3fa1051a73ad3268cfb3d8 (From OE-Core rev: 9bc3a8ec4a007fe75dc8f44faf6357517b1fb020) Signed-off-by: Tanu Kaskinen <tanuk@iki.fi> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-01-30pulseaudio: improve glibc 2.27 patchRoss Burton
This patch looks like it will be merged upstream. (From OE-Core rev: 59c5fb3c80eb1699caad8dc2175ab1eed67bf66e) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-01-30pulseaudio: Fix build with glibc 2.27Khem Raj
memfd_create is now available in glibc (From OE-Core rev: 8f893588ff42db711763d0a8977b733df8389774) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-12-10pulseaudio: 10.0 -> 11.1Tanu Kaskinen
11.0 release notes: https://www.freedesktop.org/wiki/Software/PulseAudio/Notes/11.0/ Additional changes in 11.1: * Fix a crash in filter modules related to flat volumes and volume sharing * Fix a crash when the bluetooth adapter reports weird MTU size * Disable bluetooth MTU autodetection by default * Add mixer handling back for hardware that doesn't have any alsa-lib configuration * Prioritize USB devices over built-in sound cards (11.0 was supposed to have this feature, but the implementation turned out to be incomplete) Dropped backported patch: pulseaudio-discuss-iochannel-don-t-use-variable-length-array-in-union.patch (From OE-Core rev: c6d7d89d9a6bbe2de62fa1a91b833bf1c03693ac) Signed-off-by: Tanu Kaskinen <tanuk@iki.fi> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-09-11pulseaudio: Backport a patch to replace use of VLAISKhem Raj
Fix build with clang (From OE-Core rev: ff980856d1b6ec392d684bfe758c8304933c18bd) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-02-15pulseaudio: 9.0 -> 10.0Tanu Kaskinen
Relase notes: https://www.freedesktop.org/wiki/Software/PulseAudio/Notes/10.0/ The checksum of the LICENSE file changed due to some clarifications. There were no changes to the actual licensing terms. The LICENSE variable was not accurate, so I made changes to it. Specifically: * there's no GPL code in PulseAudio so I dropped GPL from the list * the LGPL code allows using later versions of the license rather than limiting to just 2.1 * there are some MIT and BSD licensed bits I added more files to LIC_FILES_CHKSUM to have better coverage of all the differently licensed code. Dropped json-c and gdbm from DEPENDS. The new release doesn't use json-c any more. gdbm isn't used when --with-database=simple is passed to configure, so it should have been removed from DEPENDS a long time ago. The new release dropped the Xen module, so the --without-xen configure option isn't needed any more. Added a comment for why --without-fftw is used. Disabled the adrian echo canceller, because it has an unusual license, and disabling the code was simpler than adding a new license to OE-Core. Dropped upstreamed patches. (From OE-Core rev: 4ddaf28fd36294fd940f26d55973da20eeeeb0d8) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-26pulseaudio: 8.0 -> 9.0Tanu Kaskinen
Release notes: https://www.freedesktop.org/wiki/Software/PulseAudio/Notes/9.0/ Rebased 0001-client-conf-Add-allow-autospawn-for-root.patch. Removed 0001-Revert-module-switch-on-port-available-Route-to-pref.patch, because the issues that were caused by the reverted commit have been fixed. The patch set that fixes the initial selection of HDMI profiles (YOCTO#8448) is replaced with updated patches cherry-picked from upstream. (From OE-Core rev: 319595e8264af32c54ba6324e220eb4ec43b7565) Signed-off-by: Tanu Kaskinen <tanuk@iki.fi> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-18pulseaudio: 6.0 -> 8.0Tanu Kaskinen
Release notes for 7.0: https://wiki.freedesktop.org/www/Software/PulseAudio/Notes/7.0/ Release notes for 8.0: https://wiki.freedesktop.org/www/Software/PulseAudio/Notes/8.0/ 7.0 added support for soxr resamplers, but neither oe-core nor meta-oe have libsoxr packaged. The default resampler is still speexdsp based, so most people wouldn't be using the soxr resamplers anyway. If someone cares enough to package soxr, then we can enable the feature. Bash completions moved in 7.0 from /etc to the standard location under /usr/share/bash-completion. We now use the bash-completion class to package the completion files. The private library libpulsecore moved from /usr/lib to /usr/lib/pulseaudio. The new routing features advertised in the 8.0 release notes are reverted for now, because they caused regressions. I'll remove the revert once a proper fix is available. Removed two patches, because they are included in the new release. Rebased three patches. Updated Upstream-Status tags to reflect the current situation. (From OE-Core rev: 10351d2e7ab27d0f0311c491b70d0f0056a8f76b) Signed-off-by: Tanu Kaskinen <tanuk@iki.fi> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-01pulseaudio: Fix HDMI profile selectionJussi Kukkonen
On systems with two cards, the correct output profile does not get selected automatically even in the simple case where there is one available profile. This scenario is typical at least with HDMI audio (which is on a separate card). Fixes [YOCTO #8448] (From OE-Core rev: 4bd76b8b292a81ce12d316557ffc9c6a79a7b5c1) Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-11pulseaudio: fix version when building inside a dirty git checkoutRoss Burton
If the build directory is a subdirectory of a git clone, and that git clone is dirty, PulseAudio will build thinking it's version is 6.0-dirty. Fix git-version-gen so it doesn't do the git checks for tarball builds. (From OE-Core rev: 0dbe539403fc0da3c3d0b1a6636bc7c9d0e19484) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-24pulseaudio: conf-parser: add support for .d directoriesTanu Kaskinen
Sato images should set allow-autospawn-for-root=true in /etc/pulse/client.conf, but in non-Sato images that option should be disabled by default. I first tried to have two packages that ship different versions of the client.conf file, but it turned out to be tricky to ensure that the package manager always chooses the package that provides the default version when the Sato package is not explicitly requested. This patch allows the Sato specific configuration to be installed in /etc/pulse/client.conf.d without replacing the default version of client.conf, which makes packaging much simpler. (From OE-Core rev: 17b20dfe8a1a90fd831dd225e80deb6a1d21b08a) Signed-off-by: Tanu Kaskinen <tanu.kaskinen@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-24pulseaudio: client-conf: Add allow-autospawn-for-rootTanu Kaskinen
This is related to enabling PulseAudio in Sato images. Sato doesn't have regular users; the graphical session is run as root. PulseAudio disables autospawning for root, but in Sato that's not the desired behaviour. This patch allows autospawning to be enabled for root in systems where that makes sense. (From OE-Core rev: 7bd867031556303d1601dff5174ecbec636b4aff) Signed-off-by: Tanu Kaskinen <tanu.kaskinen@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-13pulseaudio: Fix build with muslKhem Raj
It reimplements some of standard C library functions but then it assumed glibc so we need to break that assumption into conditional defines Change-Id: I92109c2e4c48ab4c3565f64e68d9cbb165823b45 (From OE-Core rev: 87a55935a6d5f038c5a8a4c7f2357dd972d2fa92) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-02-23pulseaudio: upgrade to 6.0Cristian Iorga
Changes: - BlueZ 5 native HSP (headset) support; - BlueZ 5 HFP (hands-free) profile support via oFono; - systemd socket activation support; - Better support for multichannel and 2.1 profiles; - Remap optimisations; - Many minor improvements, bug fixes, and i18n updates. - Switched to ${BP} variable. - Patch 0001-configure.ac-Check-only-for-libsystemd-not-libsystem.patch removed, no longer necessary. - Patch CVE-2014-3970.patch included upstrem, removed. - Slightly changed copyright notice, only a clarification. libsamplerate based resamplers are now deprecated, because they offer no particular advantage over speex. Dependency to libsamplerate0 dropped. [ RB: disable systemd until systemd.bbclass can handle user units ] (From OE-Core rev: c4de42aadd4c8a4a8f16c25e7dcdefef79daf030) Signed-off-by: Cristian Iorga <cristian.iorga@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-07-29pulseaudio: fix CVE-2014-3970Shan Hai
The pa_rtp_recv function in modules/rtp/rtp.c in the module-rtp-recv module in PulseAudio 5.0 and earlier allows remote attackers to cause a denial of service (assertion failure and abort) via an empty UDP packet. Fix it by picking a patch from pulseaudio upstream code. (From OE-Core rev: f9d7407e54f1fa3d3a316a5bbb8b80665e6f03fd) Signed-off-by: Shan Hai <shan.hai@windriver.com> Signed-off-by: Jackie Huang <jackie.huang@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-19pulseaudio: Make it compatible with systemd-209Martin Jansa
(From OE-Core rev: 662ff5986370e59cf8638aab66f095f284a7238d) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-07-29pulseaudio: upgrade to v4.0Cristian Iorga
pulseaudio_fix_for_x32.patch removed; included in upstream. general recipe clean-up (multiple src URI removed, inheritance grouping, dependency grouping). parallel make is now active (was disabled in version 0.9). (From OE-Core rev: c6a503f05505cd5d842ae1c1b558be04e233072c) Signed-off-by: Cristian Iorga <cristian.iorga@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-05pulseaudio: fix typo in the patch name, pulseaudo -> pulseaudioDenys Dmytriyenko
No PR bump is needed. (From OE-Core rev: f7a1fdfd82be60b92f4aa4a53fdae3192d1cec8b) Signed-off-by: Denys Dmytriyenko <denys@ti.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-01-03misc patches: fix patch headersNitin A Kamble
These patches were marked by "UpstreamStatus:" line, fix it to use "Upstream-Status:" instead. (From OE-Core rev: b33b373c9a33fe0ff51104c96d1e5b105efc63ed) Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-12-12pulseaudio: fix compilation with x32 toolchainNitin A Kamble
This commit makes assembly syntax compatible with x32 toolchain to avoid these x32 gcc errors: | pulsecore/svolume_mmx.c: Assembler messages: | pulsecore/svolume_mmx.c:107: Error: `(%esi,%rdi,4)' is not a valid base/index expression | pulsecore/svolume_mmx.c:135: Error: `(%esi,%rdi,4)' is not a valid base/index expression | pulsecore/svolume_mmx.c:161: Error: `(%esi,%rdi,4)' is not a valid base/index expression | pulsecore/svolume_mmx.c:162: Error: `8(%esi,%rdi,4)' is not a valid base/index expression | pulsecore/svolume_mmx.c:180: Error: `(%esi,%rdi,4)' is not a valid base/index expression | pulsecore/svolume_mmx.c:210: Error: `(%esi,%rdi,4)' is not a valid base/index expression | pulsecore/svolume_mmx.c:244: Error: `(%esi,%rdi,4)' is not a valid base/index expression | pulsecore/svolume_mmx.c:245: Error: `8(%esi,%rdi,4)' is not a valid base/index expression | make[3]: *** [libpulsecore_1.1_la-svolume_mmx.lo] Error 1 Orignally these assembly lines are written for x86_64 ABI, now they are also compatible with X32 ABI. (From OE-Core rev: ccf01c858218ae67d609ced3a05d9a93a6ffc5d4) Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-11-29pulseaudio: update to 1.1, delete 0.9.xKoen Kooi
(From OE-Core rev: d48a99dc8d92e65dc7618d61187138830d85a850) Signed-off-by: Koen Kooi <koen@dominion.thruhere.net> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>