Bug 270689
| Summary: | [WPE] [LibWebRTC] Fix build for ARM 32-bit | ||
|---|---|---|---|
| Product: | WebKit | Reporter: | Diego Pino <dpino> |
| Component: | New Bugs | Assignee: | Diego Pino <dpino> |
| Status: | RESOLVED FIXED | ||
| Severity: | Normal | CC: | webkit-bug-importer |
| Priority: | P2 | Keywords: | InRadar |
| Version: | WebKit Nightly Build | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
Diego Pino
When building WPE with build flag `--cmakeargs=-DUSE_GSTREAMER_WEBRTC=FALSE` (enables LibWebRTC) on ARM 32-bit, I got the following build error:
```
In file included from /home/dpino/WPEWebKit/Source/ThirdParty/libwebrtc/Source/third_party/pffft/src/pffft.c:155:
/home/dpino/WPEWebKit/Source/ThirdParty/libwebrtc/Source/third_party/pffft/src/pffft.c: In function ‘passf2_ps’:
/usr/lib/gcc/arm-linux-gnueabihf/11/include/arm_neon.h:1957:1: error: inlining failed in call to ‘always_inline’ ‘vsubq_f32’: target specific option mismatch
1957 | vsubq_f32 (float32x4_t a, float32x4_t b)
```
This build error also happens in other files such as:
Source/webrtc/modules/audio_processing/aec3/adaptive_fir_filter.cc
Source/webrtc/modules/audio_processing/aec3/adaptive_fir_filter_erl.cc
Source/webrtc/modules/audio_processing/aec3/comfort_noise_generator.cc
Source/webrtc/modules/audio_processing/aec3/matched_filter.cc
Source/webrtc/modules/audio_processing/aec3/suppression_filter.cc
Source/webrtc/modules/audio_processing/aec3/suppression_gain.cc
These files need to be explicitly set with build flags "-mfpu=neon -mfloat-abi=hard". See:
- Source/ThirdParty/libwebrtc/Source/webrtc/modules/audio_processing/aec3/BUILD.gn
- Source/ThirdParty/libwebrtc/Source/third_party/pffft/README.txt
| Attachments | ||
|---|---|---|
| Add attachment proposed patch, testcase, etc. |
Diego Pino
Pull request: https://github.com/webkit/webkit/pull/25620
EWS
Committed 275915@main (565848432d81): <https://commits.webkit.org/275915@main>
Reviewed commits have been landed. Closing PR #25620 and removing active labels.
Radar WebKit Bug Importer
<rdar://problem/124399531>