summaryrefslogtreecommitdiffstats
path: root/meta/recipes-multimedia/pulseaudio
diff options
context:
space:
mode:
authorCatalin Enache <catalin.enache@windriver.com>2020-03-26 17:26:29 +0200
committerRichard Purdie <richard.purdie@linuxfoundation.org>2020-03-29 20:04:10 +0100
commitf7bde5f06a3ff810faf40a2ba8cac85b83351b06 (patch)
treebfdd1c797c4b60a85287ec932d7bdb360797aeec /meta/recipes-multimedia/pulseaudio
parentabee806f114fff3565d8796db0eab86f64bb937b (diff)
downloadpoky-f7bde5f06a3ff810faf40a2ba8cac85b83351b06.tar.gz
pulseaudio: fix for ARM thumb + frame pointers compilation error
When compiling for Thumb or Thumb2, frame pointers _must_ be disabled since the Thumb frame pointer in r7 clashes with pulseaudio's use of inline asm to make syscalls (where r7 is used for the syscall NR). In most cases, frame pointers will be disabled automatically due to the optimisation level, but appending an explicit -fomit-frame-pointer to CFLAGS handles cases where optimisation is set to -O0 or frame pointers have been enabled by -fno-omit-frame-pointer earlier in CFLAGS, etc. References: https://www.openwall.com/lists/musl/2017/10/09/2 (From OE-Core rev: b199a9dbc3440d7c4fad8d8baeea931a6b7381c1) Signed-off-by: Catalin Enache <catalin.enache@windriver.com> Signed-off-by: Stefan Ghinea <stefan.ghinea@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-multimedia/pulseaudio')
-rw-r--r--meta/recipes-multimedia/pulseaudio/pulseaudio.inc8
1 files changed, 8 insertions, 0 deletions
diff --git a/meta/recipes-multimedia/pulseaudio/pulseaudio.inc b/meta/recipes-multimedia/pulseaudio/pulseaudio.inc
index 4e32b27087..c7f3e67022 100644
--- a/meta/recipes-multimedia/pulseaudio/pulseaudio.inc
+++ b/meta/recipes-multimedia/pulseaudio/pulseaudio.inc
@@ -63,6 +63,14 @@ DEPENDS += "speexdsp libxml-parser-perl-native libcap"
63 63
64inherit autotools bash-completion pkgconfig useradd gettext perlnative systemd manpages gsettings 64inherit autotools bash-completion pkgconfig useradd gettext perlnative systemd manpages gsettings
65 65
66# When compiling for Thumb or Thumb2, frame pointers _must_ be disabled since the
67# Thumb frame pointer in r7 clashes with pulseaudio's use of inline asm to make syscalls
68# (where r7 is used for the syscall NR). In most cases, frame pointers will be
69# disabled automatically due to the optimisation level, but append an explicit
70# -fomit-frame-pointer to handle cases where optimisation is set to -O0 or frame
71# pointers have been enabled by -fno-omit-frame-pointer earlier in CFLAGS, etc.
72CFLAGS_append_arm = " ${@bb.utils.contains('TUNE_CCARGS', '-mthumb', '-fomit-frame-pointer', '', d)}"
73
66# *.desktop rules wont be generated during configure and build will fail 74# *.desktop rules wont be generated during configure and build will fail
67# if using --disable-nls 75# if using --disable-nls
68USE_NLS = "yes" 76USE_NLS = "yes"