Merge "Fix the args used to dexpreopt system server jars in prebuilt apexes" into main
This commit is contained in:
20
java/java.go
20
java/java.go
@@ -653,7 +653,7 @@ func (j *Library) PermittedPackagesForUpdatableBootJars() []string {
|
||||
return j.properties.Permitted_packages
|
||||
}
|
||||
|
||||
func shouldUncompressDex(ctx android.ModuleContext, dexpreopter *dexpreopter) bool {
|
||||
func shouldUncompressDex(ctx android.ModuleContext, libName string, dexpreopter *dexpreopter) bool {
|
||||
// Store uncompressed (and aligned) any dex files from jars in APEXes.
|
||||
if apexInfo, _ := android.ModuleProvider(ctx, android.ApexInfoProvider); !apexInfo.IsForPlatform() {
|
||||
return true
|
||||
@@ -665,7 +665,7 @@ func shouldUncompressDex(ctx android.ModuleContext, dexpreopter *dexpreopter) bo
|
||||
}
|
||||
|
||||
// Store uncompressed dex files that are preopted on /system.
|
||||
if !dexpreopter.dexpreoptDisabled(ctx) && (ctx.Host() || !dexpreopter.odexOnSystemOther(ctx, dexpreopter.installPath)) {
|
||||
if !dexpreopter.dexpreoptDisabled(ctx, libName) && (ctx.Host() || !dexpreopter.odexOnSystemOther(ctx, libName, dexpreopter.installPath)) {
|
||||
return true
|
||||
}
|
||||
if ctx.Config().UncompressPrivAppDex() &&
|
||||
@@ -680,7 +680,7 @@ func shouldUncompressDex(ctx android.ModuleContext, dexpreopter *dexpreopter) bo
|
||||
func setUncompressDex(ctx android.ModuleContext, dexpreopter *dexpreopter, dexer *dexer) {
|
||||
if dexer.dexProperties.Uncompress_dex == nil {
|
||||
// If the value was not force-set by the user, use reasonable default based on the module.
|
||||
dexer.dexProperties.Uncompress_dex = proptools.BoolPtr(shouldUncompressDex(ctx, dexpreopter))
|
||||
dexer.dexProperties.Uncompress_dex = proptools.BoolPtr(shouldUncompressDex(ctx, android.RemoveOptionalPrebuiltPrefix(ctx.ModuleName()), dexpreopter))
|
||||
}
|
||||
}
|
||||
|
||||
@@ -712,7 +712,7 @@ func (j *Library) GenerateAndroidBuildActions(ctx android.ModuleContext) {
|
||||
j.checkHeadersOnly(ctx)
|
||||
if ctx.Device() {
|
||||
j.dexpreopter.installPath = j.dexpreopter.getInstallPath(
|
||||
ctx, android.PathForModuleInstall(ctx, "framework", j.Stem()+".jar"))
|
||||
ctx, j.Name(), android.PathForModuleInstall(ctx, "framework", j.Stem()+".jar"))
|
||||
j.dexpreopter.isSDKLibrary = j.deviceProperties.IsSDKLibrary
|
||||
setUncompressDex(ctx, &j.dexpreopter, &j.dexer)
|
||||
j.dexpreopter.uncompressedDex = *j.dexProperties.Uncompress_dex
|
||||
@@ -2274,7 +2274,7 @@ func (j *Import) GenerateAndroidBuildActions(ctx android.ModuleContext) {
|
||||
installPath := android.PathForModuleInPartitionInstall(ctx, "apex", ai.ApexVariationName, ApexRootRelativePathToJavaLib(j.BaseModuleName()))
|
||||
j.dexJarInstallFile = installPath
|
||||
|
||||
j.dexpreopter.installPath = j.dexpreopter.getInstallPath(ctx, installPath)
|
||||
j.dexpreopter.installPath = j.dexpreopter.getInstallPath(ctx, android.RemoveOptionalPrebuiltPrefix(ctx.ModuleName()), installPath)
|
||||
setUncompressDex(ctx, &j.dexpreopter, &j.dexer)
|
||||
j.dexpreopter.uncompressedDex = *j.dexProperties.Uncompress_dex
|
||||
|
||||
@@ -2282,8 +2282,6 @@ func (j *Import) GenerateAndroidBuildActions(ctx android.ModuleContext) {
|
||||
j.dexpreopter.inputProfilePathOnHost = profilePath
|
||||
}
|
||||
|
||||
j.dexpreopt(ctx, dexOutputPath)
|
||||
|
||||
// Initialize the hiddenapi structure.
|
||||
j.initHiddenAPI(ctx, dexJarFile, outputFile, j.dexProperties.Uncompress_dex)
|
||||
} else {
|
||||
@@ -2304,7 +2302,7 @@ func (j *Import) GenerateAndroidBuildActions(ctx android.ModuleContext) {
|
||||
// Dex compilation
|
||||
|
||||
j.dexpreopter.installPath = j.dexpreopter.getInstallPath(
|
||||
ctx, android.PathForModuleInstall(ctx, "framework", jarName))
|
||||
ctx, android.RemoveOptionalPrebuiltPrefix(ctx.ModuleName()), android.PathForModuleInstall(ctx, "framework", jarName))
|
||||
setUncompressDex(ctx, &j.dexpreopter, &j.dexer)
|
||||
j.dexpreopter.uncompressedDex = *j.dexProperties.Uncompress_dex
|
||||
|
||||
@@ -2592,8 +2590,8 @@ func (j *DexImport) GenerateAndroidBuildActions(ctx android.ModuleContext) {
|
||||
}
|
||||
|
||||
j.dexpreopter.installPath = j.dexpreopter.getInstallPath(
|
||||
ctx, android.PathForModuleInstall(ctx, "framework", j.Stem()+".jar"))
|
||||
j.dexpreopter.uncompressedDex = shouldUncompressDex(ctx, &j.dexpreopter)
|
||||
ctx, android.RemoveOptionalPrebuiltPrefix(ctx.ModuleName()), android.PathForModuleInstall(ctx, "framework", j.Stem()+".jar"))
|
||||
j.dexpreopter.uncompressedDex = shouldUncompressDex(ctx, android.RemoveOptionalPrebuiltPrefix(ctx.ModuleName()), &j.dexpreopter)
|
||||
|
||||
inputJar := ctx.ExpandSource(j.properties.Jars[0], "jars")
|
||||
dexOutputFile := android.PathForModuleOut(ctx, ctx.ModuleName()+".jar")
|
||||
@@ -2632,7 +2630,7 @@ func (j *DexImport) GenerateAndroidBuildActions(ctx android.ModuleContext) {
|
||||
|
||||
j.dexJarFile = makeDexJarPathFromPath(dexOutputFile)
|
||||
|
||||
j.dexpreopt(ctx, dexOutputFile)
|
||||
j.dexpreopt(ctx, android.RemoveOptionalPrebuiltPrefix(ctx.ModuleName()), dexOutputFile)
|
||||
|
||||
if apexInfo.IsForPlatform() {
|
||||
ctx.InstallFile(android.PathForModuleInstall(ctx, "framework"),
|
||||
|
Reference in New Issue
Block a user