Skip to content
Snippets Groups Projects
Commit 8d55ccf7 authored by Tor Norbye's avatar Tor Norbye
Browse files

Break build if --android-jar-patterns don't point to valid API levels

Bug: 122452571
Test: make sdk before aosp/I25f6203725391dc5404cb8b6049479c9c3da1699 is
applied

Change-Id: Ie499130c037885618bac851a665b4dee6cc0cefe
parent eeec5f82
No related branches found
No related tags found
No related merge requests found
......@@ -148,7 +148,7 @@ const val ARG_STUB_IMPORT_PACKAGES = "--stub-import-packages"
const val ARG_DELETE_EMPTY_BASELINES = "--delete-empty-baselines"
class Options(
args: Array<String>,
private val args: Array<String>,
/** Writer to direct output to */
var stdout: PrintWriter = PrintWriter(OutputStreamWriter(System.out)),
/** Writer to direct error messages to */
......@@ -1321,13 +1321,13 @@ class Options(
}
if (generateApiLevelXml != null) {
if (androidJarPatterns == null) {
androidJarPatterns = mutableListOf(
"prebuilts/tools/common/api-versions/android-%/android.jar",
"prebuilts/sdk/%/public/android.jar"
)
val patterns = androidJarPatterns ?: run {
mutableListOf<String>()
}
apiLevelJars = findAndroidJars(androidJarPatterns!!, currentApiLevel, currentCodeName, currentJar)
// Fallbacks
patterns.add("prebuilts/tools/common/api-versions/android-%/android.jar")
patterns.add("prebuilts/sdk/%/public/android.jar")
apiLevelJars = findAndroidJars(patterns, currentApiLevel, currentCodeName, currentJar)
}
// outputKotlinStyleNulls implies format=v3
......@@ -1475,6 +1475,19 @@ class Options(
if (verbose) {
stdout.println("Last API level found: ${apiLevel - 1}")
}
if (apiLevel < 28) {
// Clearly something is wrong with the patterns; this should result in a build error
val argList = mutableListOf<String>()
args.forEachIndexed { index, arg ->
if (arg == ARG_ANDROID_JAR_PATTERN) {
argList.add(args[index + 1])
}
}
throw DriverException(stderr = "Could not find android.jar for API level $apiLevel; the " +
"$ARG_ANDROID_JAR_PATTERN set might be invalid: ${argList.joinToString()}")
}
break
}
if (verbose) {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment