GNOME Bugzilla – Bug 789098
Add Android Oreo Support
Last modified: 2018-05-04 13:32:36 UTC
Created attachment 361740 [details] [review] Add Android Oreo to Cerbero Add support for Android Oreo (API-26) Initial patch to the enums.py file, with other Oreo-specific patches to follow.
Created attachment 361741 [details] [review] Fix Glib Recipe in Cerbero for Android Oreo The glib build has a problem with the HAVE_HASMNTOPT setting, which Oreo defines but does not support. The glib build mis-detects this and fails. This patch disables its use.
Comment on attachment 361741 [details] [review] Fix Glib Recipe in Cerbero for Android Oreo This should also be solveable by setting the corresponding ac_cv_* variable, as in prepare() is already done for others. Why is it detected to be available but actually is not available?
(In reply to Sebastian Dröge (slomo) from comment #2) > Comment on attachment 361741 [details] [review] [review] > Fix Glib Recipe in Cerbero for Android Oreo > > This should also be solveable by setting the corresponding ac_cv_* variable, > as in prepare() is already done for others. > > Why is it detected to be available but actually is not available? With a recent version of the NDK, possibly r15b, there was an entry in .../usr/include/mntent.h for API-26 (Oreo) that had "hasmntent" being included unconditionally. This caused a preprocessor conditional to include code which caused compile problems in glib. Specifically, build/sources/android_arm64/glib-2.50.3/gio/gunixmounts.c:511 has an error with the missing declarations of "hasmntent" and "MNTOPT_RO", so the mntent.h in the NDK is probably incompatible or incomplete. Rather than make corrections and extensions to the NDK header files to solve the real problem, I simply forced HAVE_HASMNTENT to be disabled after the glib configure had detected it in the NDK. The "hasmntent" declaration is introduced in Oreo, conditionally included only in API-26, so I limited the recipe fix to only Oreo. Anyone who tries to compile glib for Oreo will find this problem. I will make note of the use of av_cv cache variables for future reference. Thank you for the advice. You may reject this patch if you wish. I am not sure when I will have time to update it to use av_cv.
This should all be covered now