aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Stjernholm <mast@google.com>2022-05-26 17:55:31 +0000
committerAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>2022-05-26 17:55:31 +0000
commit550b7de96aa98392d4cc43418dc7c6773515624b (patch)
tree8eb629a5d2491bd3ddff9b00bf6985ecef6cb2cf
parent1f9566dc097acc5be40d6cfb752a61039f40294e (diff)
parent9b328e55f82e52c3499996f2a3c6a185d421550a (diff)
downloadvogar-android13-qpr2-s2-release.tar.gz
Fix Vogar to use API stubs for dependencies from other APEX modules. am: cc72237faa am: 9b328e55f8android-13.0.0_r83android-13.0.0_r82android-13.0.0_r81android-13.0.0_r80android-13.0.0_r79android-13.0.0_r78android-13.0.0_r77android-13.0.0_r76android-13.0.0_r75android-13.0.0_r74android-13.0.0_r73android-13.0.0_r72android-13.0.0_r71android-13.0.0_r70android-13.0.0_r69android-13.0.0_r68android-13.0.0_r67android-13.0.0_r66android-13.0.0_r65android-13.0.0_r64android-13.0.0_r63android-13.0.0_r62android-13.0.0_r61android-13.0.0_r60android-13.0.0_r59android-13.0.0_r58android-13.0.0_r56android-13.0.0_r54android-13.0.0_r53android-13.0.0_r52android-13.0.0_r51android-13.0.0_r50android-13.0.0_r49android-13.0.0_r48android-13.0.0_r47android-13.0.0_r46android-13.0.0_r45android-13.0.0_r44android-13.0.0_r43android-13.0.0_r42android-13.0.0_r41android-13.0.0_r40android-13.0.0_r39android-13.0.0_r38android-13.0.0_r37android-13.0.0_r36android-13.0.0_r35android-13.0.0_r34android-13.0.0_r33android-13.0.0_r32android13-qpr3-s9-releaseandroid13-qpr3-s8-releaseandroid13-qpr3-s7-releaseandroid13-qpr3-s6-releaseandroid13-qpr3-s5-releaseandroid13-qpr3-s4-releaseandroid13-qpr3-s3-releaseandroid13-qpr3-s2-releaseandroid13-qpr3-s14-releaseandroid13-qpr3-s13-releaseandroid13-qpr3-s12-releaseandroid13-qpr3-s11-releaseandroid13-qpr3-s10-releaseandroid13-qpr3-s1-releaseandroid13-qpr3-releaseandroid13-qpr3-c-s8-releaseandroid13-qpr3-c-s7-releaseandroid13-qpr3-c-s6-releaseandroid13-qpr3-c-s5-releaseandroid13-qpr3-c-s4-releaseandroid13-qpr3-c-s3-releaseandroid13-qpr3-c-s2-releaseandroid13-qpr3-c-s12-releaseandroid13-qpr3-c-s11-releaseandroid13-qpr3-c-s10-releaseandroid13-qpr3-c-s1-releaseandroid13-qpr2-s9-releaseandroid13-qpr2-s8-releaseandroid13-qpr2-s7-releaseandroid13-qpr2-s6-releaseandroid13-qpr2-s5-releaseandroid13-qpr2-s3-releaseandroid13-qpr2-s2-releaseandroid13-qpr2-s12-releaseandroid13-qpr2-s11-releaseandroid13-qpr2-s10-releaseandroid13-qpr2-s1-releaseandroid13-qpr2-releaseandroid13-qpr2-b-s1-releaseandroid13-d4-s2-releaseandroid13-d4-s1-releaseandroid13-d4-release
Original change: https://googleplex-android-review.googlesource.com/c/platform/external/vogar/+/18604032 Change-Id: I83a7bc289cab653befd3e56b676eb433762a1be3 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
-rw-r--r--src/vogar/ModeId.java16
-rw-r--r--src/vogar/android/AndroidSdk.java19
2 files changed, 21 insertions, 14 deletions
diff --git a/src/vogar/ModeId.java b/src/vogar/ModeId.java
index 613722a..c918104 100644
--- a/src/vogar/ModeId.java
+++ b/src/vogar/ModeId.java
@@ -35,31 +35,35 @@ public enum ModeId {
/**
* $BOOTCLASSPATH for art+libcore only.
* (Intended for use with dalvikvm only.)
- * See TARGET_TEST_CORE_JARS in android/art/build/Android.common_path.mk
*/
private static final String[] DEVICE_JARS = new String[] {
+ // ART module BCP libraries. See CORE_IMG_JARS in art/build/Android.common_path.mk.
"core-oj",
"core-libart",
- "core-icu4j",
- "conscrypt",
"okhttp",
"bouncycastle",
"apache-xml",
+ // Stubs for dependencies from other APEX modules. If tests require it, this could use
+ // platform (xxx.module.platform.api.stubs) or even intra-core
+ // (xxx.module.intra.core.api.stubs) API stubs. However it's currently not necessary, so
+ // let's stick to public APIs for hygiene.
+ "i18n.module.public.api.stubs",
+ "conscrypt.module.public.api.stubs",
};
/**
* $BOOTCLASSPATH for art+libcore only (host version).
* (Intended for use with dalvikvm only.)
- * See HOST_TEST_CORE_JARS in android/art/build/Android.common_path.mk
+ * See HOST_TEST_CORE_JARS in art/build/Android.common_path.mk
*/
private static final String[] HOST_JARS = new String[] {
"core-oj-hostdex",
"core-libart-hostdex",
- "core-icu4j-hostdex",
- "conscrypt-hostdex",
"okhttp-hostdex",
"bouncycastle-hostdex",
"apache-xml-hostdex",
+ "core-icu4j-hostdex",
+ "conscrypt-hostdex",
};
/**
diff --git a/src/vogar/android/AndroidSdk.java b/src/vogar/android/AndroidSdk.java
index 62bbd52..15c936d 100644
--- a/src/vogar/android/AndroidSdk.java
+++ b/src/vogar/android/AndroidSdk.java
@@ -227,7 +227,9 @@ public class AndroidSdk {
private static void logMissingJars(Log log, List<String> missingJars) {
StringBuilder makeCommand = new StringBuilder().append("m ");
for (String jarName : missingJars) {
- log.warn("Missing compilation jar " + jarName + " from APEX " + apexForJar(jarName));
+ String apex = apexForJar(jarName);
+ log.warn("Missing compilation jar " + jarName +
+ (apex != null ? " from APEX " + apex : ""));
makeCommand.append(jarName).append(" ");
}
log.info("Suggested make command: " + makeCommand);
@@ -235,10 +237,8 @@ public class AndroidSdk {
/** Returns the name of the APEX a particular jar might be located in */
private static String apexForJar(String jar) {
- if ("conscrypt".equals(jar)) {
- return "com.android.conscrypt";
- } else if ("core-icu4j".equals(jar)) {
- return "com.android.i18n";
+ if (jar.endsWith(".api.stubs")) {
+ return null; // API stubs aren't in any APEX.
}
return "com.android.art.testing";
}
@@ -249,9 +249,12 @@ public class AndroidSdk {
* always non-null but possibly non-existent and so the caller should check.
*/
private static File findApexJar(String jar, String filePattern) {
- File file = new File(String.format(filePattern, jar + "." + apexForJar(jar)));
- if (file.exists()) {
- return file;
+ String apex = apexForJar(jar);
+ if (apex != null) {
+ File file = new File(String.format(filePattern, jar + "." + apex));
+ if (file.exists()) {
+ return file;
+ }
}
return new File(String.format(filePattern, jar));
}