Skip to content

Commit 338f254

Browse files
committed
[WIP] Tests which use NDK native tools must target API 19 at least
1 parent 7aa816b commit 338f254

File tree

1 file changed

+6
-0
lines changed

1 file changed

+6
-0
lines changed

src/Xamarin.Android.Build.Tasks/Tasks/GetAotArguments.cs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -137,13 +137,17 @@ int GetNdkApiLevel (NdkTools ndk, AndroidTargetArch arch)
137137
int level;
138138
if (manifest?.MinSdkVersion != null) {
139139
level = manifest.MinSdkVersion.Value;
140+
Log.LogDebugMessage ($"NDK API level read from manifest");
140141
} else if (int.TryParse (MinimumSupportedApiLevel, out level)) {
142+
Log.LogDebugMessage ("NDK API level taken from MinimumSupportedApiLevel");
141143
// level already set
142144
} else if (int.TryParse (AndroidApiLevel, out level)) {
145+
Log.LogDebugMessage ("NDK API level taken from AndroidApiLevel");
143146
// level already set
144147
} else {
145148
// Probably not ideal!
146149
level = MonoAndroidHelper.SupportedVersions.MaxStableVersion.ApiLevel;
150+
Log.LogDebugMessage ("NDK API level taken from MonoAndroidHelper.SupportedVersions.MaxStableVersion.ApiLevel");
147151
}
148152

149153
// Some Android API levels do not exist on the NDK level. Workaround this my mapping them to the
@@ -157,6 +161,7 @@ int GetNdkApiLevel (NdkTools ndk, AndroidTargetArch arch)
157161

158162
// API levels below level 21 do not provide support for 64-bit architectures.
159163
if (ndk.IsNdk64BitArch (arch) && level < 21) {
164+
Log.LogDebugMessage ("NDK API level raised to 21, required for 64-bit support");
160165
level = 21;
161166
}
162167

@@ -172,6 +177,7 @@ int GetNdkApiLevel (NdkTools ndk, AndroidTargetArch arch)
172177
}
173178
}
174179

180+
Log.LogDebugMessage ($"Using NDK API level {level}");
175181
return level;
176182
}
177183

0 commit comments

Comments
 (0)