Revert "Revert "Never strip and store dex files uncompressed when they are preopted on system.""
This reverts commit 67e8ec1973700bbdbc4cd68b3493d56d270ca377.
Test: build && atest android.text.cts.EmojiTest#testEmojiGlyphWebView on Cuttlefish
Exempt-From-Owner-Approval: Got +2 from Colin, latest PS is a rebase across conflicts.
Change-Id: I99faf0f2ec698d70c107516bd43756b9ddcb90d0
diff --git a/java/dexpreopt.go b/java/dexpreopt.go
index cb6427b..a89731a 100644
--- a/java/dexpreopt.go
+++ b/java/dexpreopt.go
@@ -83,11 +83,7 @@
var dexpreoptGlobalConfigKey = android.NewOnceKey("DexpreoptGlobalConfig")
-func (d *dexpreopter) dexpreopt(ctx android.ModuleContext, dexJarFile android.ModuleOutPath) android.ModuleOutPath {
- if d.dexpreoptDisabled(ctx) {
- return dexJarFile
- }
-
+func getGlobalConfig(ctx android.ModuleContext) dexpreopt.GlobalConfig {
globalConfig := ctx.Config().Once(dexpreoptGlobalConfigKey, func() interface{} {
if f := ctx.Config().DexpreoptGlobalConfig(); f != "" {
ctx.AddNinjaFileDeps(f)
@@ -99,6 +95,19 @@
}
return dexpreopt.GlobalConfig{}
}).(dexpreopt.GlobalConfig)
+ return globalConfig
+}
+
+func odexOnSystemOther(ctx android.ModuleContext, installPath android.OutputPath) bool {
+ return dexpreopt.OdexOnSystemOtherByName(ctx.ModuleName(), android.InstallPathToOnDevicePath(ctx, installPath), getGlobalConfig(ctx))
+}
+
+func (d *dexpreopter) dexpreopt(ctx android.ModuleContext, dexJarFile android.ModuleOutPath) android.ModuleOutPath {
+ if d.dexpreoptDisabled(ctx) {
+ return dexJarFile
+ }
+
+ globalConfig := getGlobalConfig(ctx)
var archs []android.ArchType
for _, a := range ctx.MultiTargets() {