webrtc-audio-processing: fix build on ARM Cortex-M
authorThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Sat, 6 Aug 2016 10:02:44 +0000 (12:02 +0200)
committerThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Tue, 9 Aug 2016 13:48:30 +0000 (15:48 +0200)
commit3695759b91c548453107bfa9524149dba69f170f
treeed3bec3e8e006a370a1af6aef83c75814d099332
parentfe7babeeb0a2be4a29bfbae275e0dd8fe972c711
webrtc-audio-processing: fix build on ARM Cortex-M

The webrtc-audio-processing configure script assumes that if the
host_cpu part of the tuple is "arm", then ARM instructions are
available. This is obviously incorrect for ARM Cortex-M platforms, which
only support the Thumb-2 instruction set.

In order to address this, we add a patch,
0001-configure.ac-fix-architecture-detection.patch, which changes how
webrtc-audio-processing detects the architecture: instead of relying on
the host_cpu part of the tuple, it relies on the built-in definitions of
the compiler.

Not only it fixes the Cortex-M detection, but it also enables ARMv7
optimizations on ARMv7-A: until now they were only enabled when the
host_cpu part of the tuple was armv7, which is never the case in
Buildroot.

However, once this issue is fixed for Cortex-M, the build nonetheless
fails later due to the usage of NPTL-only functions. So we change the
thread dependency to a NPTL dependency.

Fixes:

  http://autobuild.buildroot.net/results/4933082cd7cc5781404c77ccef5c2b9333c5f714/

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
package/webrtc-audio-processing/0001-configure.ac-fix-architecture-detection.patch [new file with mode: 0644]
package/webrtc-audio-processing/Config.in
package/webrtc-audio-processing/webrtc-audio-processing.mk