Move run-test compilation to soong.
Run-test compile many java files (sometimes in very specific ways).
Compile them just once in soong, instead of every time we run a test.
This makes local host tests 4x faster (21min -> 6min).
I expect similar or better improvement on LUCI.
It does not affect eng-prod tests now, but the generated output
should be reusable to make more run-tests supported in eng-prod.
Bug: 147814778
Test: test.py -r --host --target --jvm
Change-Id: If689784d2a8d901d132ed0d674a2e2be36f1cd05
diff --git a/test/Android.bp b/test/Android.bp
index f67de2a..06e55f9 100644
--- a/test/Android.bp
+++ b/test/Android.bp
@@ -1312,6 +1312,30 @@
],
}
+// Install run-test data in the output directory.
+prebuilt_etc_host {
+ name: "art-run-test-host-data",
+ src: ":art-run-test-host-data-merged",
+ sub_dir: "art",
+ filename: "art-run-test-host-data.zip",
+}
+
+// Install run-test data in the output directory.
+prebuilt_etc_host {
+ name: "art-run-test-jvm-data",
+ src: ":art-run-test-jvm-data-merged",
+ sub_dir: "art",
+ filename: "art-run-test-jvm-data.zip",
+}
+
+// Install run-test data in the output directory.
+prebuilt_etc_host {
+ name: "art-run-test-target-data",
+ src: ":art-run-test-target-data-merged",
+ sub_dir: "art",
+ filename: "art-run-test-target-data.zip",
+}
+
filegroup {
name: "art-gtest-jars",
srcs: [
@@ -1787,3 +1811,25 @@
srcs: ["Dex2oatVdexPublicSdkDex/*.smali"],
out: ["art-gtest-jars-Dex2oatVdexPublicSdkDex.dex"],
}
+
+genrule_defaults {
+ name: "art-run-test-data-defaults",
+ tool_files: [
+ "run-test-build.py",
+ "knownfailures.json",
+ "etc/default-build",
+ "etc/default-run",
+ "etc/default-check",
+ ":art-run-test-bootclasspath",
+ ],
+ tools: [
+ "d8",
+ "hiddenapi",
+ "jasmin",
+ "smali",
+ ],
+}
+
+build = [
+ "Android.run-test.bp",
+]