My project uses hard float ABI, i.e. armeabi-v7a-hard, but unfortunately FMOD uses the soft one (armeabi-v7a).
In fmod_common.h F_STDCALL ensures that all FMOD’s functions will be called using soft float, but there is an exception for Clang.
Is it possible to include soft float attribute for Clang as well?
Or maybe there are known workarounds for this issue?
Maybe it should be based on the version of Clang; according to info present in NDK’s header it should work from Clang 3.4 onwards:
NOTE: Disable for clang for now unless _NDK_MATH_NO_SOFTFP=1, because
clang before 3.4 doesn’t allow change of calling convension for
builtin and produces error message reads
We will look at making the FMOD header compatible with hard float and modern versions of Clang for a future release.
For now the recommended work around is to remove the “&& !defined(_clang_)” section from fmod_common.h if you know you are using a compatible version of Clang.