diff options
Diffstat (limited to 'java/java.go')
| -rw-r--r-- | java/java.go | 27 |
1 files changed, 11 insertions, 16 deletions
diff --git a/java/java.go b/java/java.go index 2e53654cc..ceedd8971 100644 --- a/java/java.go +++ b/java/java.go @@ -76,7 +76,9 @@ func RegisterJavaBuildComponents(ctx android.RegistrationContext) { ctx.RegisterModuleType("java_host_for_device", HostForDeviceFactory) ctx.RegisterModuleType("dex_import", DexImportFactory) - ctx.FinalDepsMutators(dexpreopt.RegisterToolDepsMutator) + ctx.FinalDepsMutators(func(ctx android.RegisterMutatorsContext) { + ctx.BottomUp("dexpreopt_tool_deps", dexpreoptToolDepsMutator).Parallel() + }) ctx.RegisterSingletonType("logtags", LogtagsSingleton) ctx.RegisterSingletonType("kythe_java_extract", kytheExtractJavaFactory) @@ -371,7 +373,6 @@ type Module struct { android.DefaultableModuleBase android.ApexModuleBase android.SdkBase - dexpreopt.DexPreoptModule properties CompilerProperties protoProperties android.ProtoProperties @@ -1577,16 +1578,6 @@ func (j *Module) compile(ctx android.ModuleContext, aaptSrcJar android.Path) { } } else { outputFile = implementationAndResourcesJar - - // dexpreopt.GetGlobalSoongConfig needs to be called at least once even if - // no module actually is dexpreopted, to ensure there's a cached - // GlobalSoongConfig for the dexpreopt singletons, which will run - // regardless. - // TODO(b/147613152): Remove when the singletons no longer rely on the - // cached GlobalSoongConfig. - if !dexpreopt.GetGlobalConfig(ctx).DisablePreopt { - _ = dexpreopt.GetGlobalSoongConfig(ctx) - } } ctx.CheckbuildFile(outputFile) @@ -1794,6 +1785,10 @@ func (j *Module) JacocoReportClassesFile() android.Path { return j.jacocoReportClassesFile } +func (j *Module) IsInstallable() bool { + return Bool(j.properties.Installable) +} + // // Java libraries (.jar file) // @@ -1831,7 +1826,6 @@ func (j *Library) GenerateAndroidBuildActions(ctx android.ModuleContext) { j.checkSdkVersion(ctx) j.dexpreopter.installPath = android.PathForModuleInstall(ctx, "framework", j.Stem()+".jar") j.dexpreopter.isSDKLibrary = j.deviceProperties.IsSDKLibrary - j.dexpreopter.isInstallable = Bool(j.properties.Installable) j.dexpreopter.uncompressedDex = shouldUncompressDex(ctx, &j.dexpreopter) j.deviceProperties.UncompressDex = j.dexpreopter.uncompressedDex j.compile(ctx, nil) @@ -2353,7 +2347,6 @@ type Import struct { android.ApexModuleBase prebuilt android.Prebuilt android.SdkBase - dexpreopt.DexPreoptModule properties ImportProperties @@ -2564,7 +2557,6 @@ type DexImport struct { android.DefaultableModuleBase android.ApexModuleBase prebuilt android.Prebuilt - dexpreopt.DexPreoptModule properties DexImportProperties @@ -2590,13 +2582,16 @@ func (j *DexImport) Stem() string { return proptools.StringDefault(j.properties.Stem, j.ModuleBase.Name()) } +func (j *DexImport) IsInstallable() bool { + return true +} + func (j *DexImport) GenerateAndroidBuildActions(ctx android.ModuleContext) { if len(j.properties.Jars) != 1 { ctx.PropertyErrorf("jars", "exactly one jar must be provided") } j.dexpreopter.installPath = android.PathForModuleInstall(ctx, "framework", j.Stem()+".jar") - j.dexpreopter.isInstallable = true j.dexpreopter.uncompressedDex = shouldUncompressDex(ctx, &j.dexpreopter) inputJar := ctx.ExpandSource(j.properties.Jars[0], "jars") |