Compile standalone system server jars.
This CL updates odrefresh to take an additional environment variable
`STANDALONE_SYSTEMSERVER_JARS` and compile standalone system server jars
accordingly.
Bug: 203198541
Test: atest odsign_e2e_tests
Test: atest art_standalone_odrefresh_tests
Test: atest art_standalone_artd_tests
Test: manual -
1. Patch aosp/1874113, aosp/1876173, aosp/1875774 and aosp/1875775.
2. Build a new system image and flash it to a device.
3. adb logcat odrefresh:D odsign:D "*:S"
4. See standalone system server jars being compiled and signed.
Change-Id: Ic824c7380cf9530437bc2a95b9ff816a63b22013
diff --git a/artd/libdexopt_test.cc b/artd/libdexopt_test.cc
index 7536dcd..e73c5d6 100644
--- a/artd/libdexopt_test.cc
+++ b/artd/libdexopt_test.cc
@@ -270,7 +270,7 @@
Contains("--compiler-filter=verify")));
}
- // Test classloader context
+ // Test empty classloader context
{
auto args = default_system_server_args_;
args.classloaderFds = {};
@@ -281,6 +281,15 @@
Not(Contains(HasSubstr("--class-loader-context-fds"))),
Contains("--class-loader-context=PCL[]")));
}
+
+ // Test classloader context as parent
+ {
+ auto args = default_system_server_args_;
+ args.classloaderContextAsParent = true;
+ std::vector<std::string> cmdline = Dex2oatArgsFromSystemServerArgs(args);
+
+ EXPECT_THAT(cmdline, Contains("--class-loader-context=PCL[];PCL[/cl/abc.jar:/cl/def.jar]"));
+ }
}
TEST_F(LibDexoptTest, AddDex2oatArgsFromSystemServerArgs_InvalidArguments) {