Hi RP,

The pulseaudio upstream doesn't support the option to disable neon with meson 
per the the latest release note 
https://www.freedesktop.org/wiki/Software/PulseAudio/Notes/14.0/ and also 
thanks Tanu to report the issue to upstream as 
https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/issues/1088 .

Will update the solution if there is any update.

Thanks,
<https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/issues/1088>


________________________________
From: Tanu Kaskinen <[email protected]>
Sent: Wednesday, January 6, 2021 03:04
To: Richard Purdie <[email protected]>; Yu, Mingli 
<[email protected]>; [email protected] 
<[email protected]>; [email protected] 
<[email protected]>
Subject: Re: [OE-core] [PATCH v2] pulseaudio: define -mfloat-abi=softfp for CC 
on armv5

On Tue, 2021-01-05 at 12:37 +0000, Richard Purdie wrote:
> On Tue, 2021-01-05 at 11:37 +0800, Yu, Mingli wrote:
> From: Mingli Yu <[email protected]>
>
> After pulseaudio upgrades from 13.0 to 14.0, it also switches from
> autotools
> to meson. In autotools, there is --disable-neon-opt option for
> disabling NEON
> optimizations, but there is no counterpart in meson.
>
> And the meson build system adds -mfpu=neon at the end of the compiler
> command
> line which overrids any earlier -mfpu options and result below build
> failure
> on armv5:
>
> > /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;
>
> Define -mfloat-abi=softfp for CC on armv5 to fix the above issue.
>
> Signed-off-by: Mingli Yu <[email protected]>
> ---
>  meta/recipes-multimedia/pulseaudio/pulseaudio.inc | 5 +++++
>  1 file changed, 5 insertions(+)
>
> diff --git a/meta/recipes-multimedia/pulseaudio/pulseaudio.inc
> b/meta/recipes-multimedia/pulseaudio/pulseaudio.inc
> index e40b8c1c40..761e4f74dc 100644
> --- a/meta/recipes-multimedia/pulseaudio/pulseaudio.inc
> +++ b/meta/recipes-multimedia/pulseaudio/pulseaudio.inc
> @@ -123,6 +123,11 @@ PACKAGECONFIG[ipv6] = "-Dipv6=true,-Dipv6=false,"
>  PACKAGECONFIG[manpages] = "-Dman=true,-Dman=false,"
>
>  export TARGET_PFPU = "${TARGET_FPU}"
> +# workaround build failure on qemuarmv5 as the neon optimizations is
> +# enabled by default and no option to disable neon with meson build
> +# system
> +CC_append_armv5 = " -mfloat-abi=softfp"
> +export CC
>
>  set_cfg_value () {
>         sed -i -e "s/\(; *\)\?$2 =.*/$2 = $3/" "$1"
>
> I really don't want to add things like this to the recipe, I think it
> will interfere with other parts of the compilation. In many ways I'd
> prefer an option added to meson. Do we know what upstream are thinking
> in relation to this?

I think Meson should be fixed, but it may be necessary to add a build
option to PulseAudio to disable the neon code while waiting for Meson
to get fixed.

I now filed a bug for Meson:
https://github.com/mesonbuild/meson/issues/8156

and another for PulseAudio:
https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/issues/1088

so at least the relevant projects know about the issue now. I may work
on fixing these myself if nobody else does, but I don't expect that to
happen quickly.

--
Tanu

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#146418): 
https://lists.openembedded.org/g/openembedded-core/message/146418
Mute This Topic: https://lists.openembedded.org/mt/79443916/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to