Details
-
Task
-
Resolution: Done
-
P2: Important
-
None
-
None
-
a66281bec7dca8a0c733ecc4c61bc0415c0a3dfa
Description
Android NDK r14 will introduce "unified headers" (see https://github.com/android-ndk/ndk/wiki/Changelog-r14-beta2, https://android.googlesource.com/platform/ndk/+/master/docs/UnifiedHeaders.md).
Basically, there are no more separate headers for each Android API version, instead have only one set of headers for all API levels with embedded macros for conditionally enabling features based on the API level.
tl;dr: we need to update the Android NDK include path for NDK r >= 14 and possibly pass _ANDROID_API_=$API to defines when building with GCC.
Unified Headers will be default in NDK r15, and the old ones will be removed entirely in NDK r16.
ndk-build, CMake, and Gradle all have options to use the deprecated headers; qbs probably should also, even though it won't matter much in the long term.