Merge "Add jni_uses_sdk_apis"

This commit is contained in:
Colin Cross 2020-05-07 18:09:47 +00:00 committed by Gerrit Code Review
commit 7500f46b95
1 changed files with 7 additions and 2 deletions

View File

@ -80,10 +80,14 @@ type appProperties struct {
// list of native libraries that will be provided in or alongside the resulting jar
Jni_libs []string `android:"arch_variant"`
// if true, allow JNI libraries that link against platform APIs even if this module sets
// if true, use JNI libraries that link against platform APIs even if this module sets
// sdk_version.
Jni_uses_platform_apis *bool
// if true, use JNI libraries that link against SDK APIs even if this module does not set
// sdk_version.
Jni_uses_sdk_apis *bool
// STL library to use for JNI libraries.
Stl *string `android:"arch_variant"`
@ -234,7 +238,8 @@ func (a *AndroidApp) DepsMutator(ctx android.BottomUpMutatorContext) {
// If the app builds against an Android SDK use the SDK variant of JNI dependencies
// unless jni_uses_platform_apis is set.
if a.sdkVersion().specified() && a.sdkVersion().kind != sdkCorePlatform &&
!Bool(a.appProperties.Jni_uses_platform_apis) {
!Bool(a.appProperties.Jni_uses_platform_apis) ||
Bool(a.appProperties.Jni_uses_sdk_apis) {
variation = append(variation, blueprint.Variation{Mutator: "sdk", Variation: "sdk"})
}
ctx.AddFarVariationDependencies(variation, tag, a.appProperties.Jni_libs...)