The json files used to generate the Android.bp files have more flags
than those specified in the BUILD.gn and *.gni configuration files. This
change ignores the ones added by the build toolchain and keeps only
those added by the webrtc authors.
Bug: 269761242
Test: run cuttlefish in x64, build for arm64 and riscv64
Change-Id: I55f2bdea229cf11c21b5780b2639abb6dd7c3268
by making the build file generator script (mostly) architecture independent.
Bug: 269761242
Test: build x64 and arm64 locally
Change-Id: I76ea4bc0ba5e8e5c152b93cb1ad7a385c796adae
-gdwarf-aranges breaks a later linking step on riscv64 with:
ld.lld: error: out/soong/.intermediates/external/webrtc/webrtc_audio_processing/android_vendor.UpsideDownCake_riscv64_static/webrtc_audio_processing.a(audio_processing_impl.o):(.rodata.str1.1): offset is outside the section
Bug: 269343483
Test: lunch aosp_riscv64-userdebug && m libaudiopreprocessing
Change-Id: Iaf96679c3e82229adf958668f9afbdf0d4768c6b
This option is likely not really applicable for Android target builds
which are stripped / have a separate symbols output so just filter it
out. The option breaks on RISC-V due to implicit -mrelax and lack of
toolchain support:
clang++: error: -gsplit-dwarf is unsupported with RISC-V linker relaxation (-mrelax)
Bug: 266468464
Change-Id: Ibdb7bc7e08576c1096148a7a6381554888dfa6b0
For x86, x86_64, arm and arm64
Bug: 261600888
Test: build and run cuttlefish x86, x86_64 and arm64
Change-Id: I3ac4dad1ac9ec83b0e626e64715df450e8809b82
ALSA and pulseaudio are not used by either of the clients of webrtc,
remove them from the sources to avoid having to have the ALSA and
pulseaudio headers.
Bug: 190084016
Test: m USE_HOST_MUSL=true webRTC libaudiopreprocessing
Change-Id: I1e74c64a71fa54db69e7d2e9d118dfd374501cb7
aec_dump.cc was included in multiple modules, this is now fixed
Also added few more modules that are used by webrtc_audio_processing
These are necessary if some module includes "webrtc_audio_processing"
in whole_static_libs.
Bug: 173247568
Test: Builds
Change-Id: I1ba293800ad4acce07351311fa9f8b15bd1f1d0c
webrtc_audio_processing module is built with its dependencies
included as whole_static_libs, so that a single library can be
included where it is used
Bug: 169202556
Test: Builds
Change-Id: Ic6dd1b4e3a9a351c0b22663197bed77d08ff518c
Also added visibility to restrict it to audio preprocessing
and cuttlefish modules
Bug: 169202556
Test: Builds
Change-Id: Idba6a42b8f8c1a30a0320913d17e269cd6ccca7b
Renamed abseil modules to make them webrtc specific.
Restricted visibility of abseil modules to webrtc packages.
Bug: 171836454
Test: Builds
Change-Id: Icf24c7e3093a77dd9a26e7ec78bd531eb1ad3dec
Previously, we used x86-specific source files (those for sse2)
regardless of the target because x86 was the only supported host target.
This becomes a problem as we add the support for the new ARM64 host
target - linux_bionic_arm64. Now, those source files are built only when
the target architecture is x86.
Bug: 159685774
Test: HOST_CROSS_OS=linux_bionic HOST_CROSS_ARCH=arm64 m \
out/soong/host/linux_bionic-arm64/bin/webRTC
Change-Id: Id13d66ccd5ae6f8596ce32d4ccb2735856d2159a
The following are not yet available in their respective libraries so
attempts to use it in webrtc result in a call to abort():
* libvpx's CONSTRAINED_FROM_ABOVE_DROP constant
* libyuv's I010 buffers
The original webrtc project expects to have third party libraries
checked out in third_party/ and base/third_party/. Added some headers
in those directories with a single line including the right header from
external/<library>. Updated .gitignore to keep track of said headers.
Bug: 153469641
Test: mm, also built cuttlefish using this library and ran it locally
Change-Id: I2d596942e34093dccc65d4b7b8249b6afc14d31f
Merged-In: I2d596942e34093dccc65d4b7b8249b6afc14d31f