Revert^2 "Remove compilation actions from java sdk library"
This change modifies the build actions of java_sdk_library module type so that it does not perform any compilation actions (i.e. does not create the top level java_sdk_library jar file). Instead, it delegates the build actions the top level jar file was performing to the dynamically created ".impl"-suffixed java library module. The build actions that are delegated to the impl library module include hiddenapi processing, dexing, and dexpreopt. This change relands https://r.android.com/3035972. Implementation changes from the original change: - "all_apex_contributions" is added as a dependecy to the implementation library modules where the parent sdk_library module has a prebuilt equivalent. This allows the source apex variant to be hidden from make when the prebuilt is active. Test: patch in internal main, lunch barbet-ap2a-userdebug && m nothing Test: m nothing --no-skip-soong-tests Bug: 332785297 Change-Id: I017938e5567aef82e428e7ceb557d9c9090e0257
This commit is contained in:
@@ -1682,7 +1682,11 @@ func (j *Module) compile(ctx android.ModuleContext, extraSrcJars, extraClasspath
|
||||
j.dexJarFile = makeDexJarPathFromPath(dexOutputFile)
|
||||
|
||||
// Dexpreopting
|
||||
j.dexpreopt(ctx, android.RemoveOptionalPrebuiltPrefix(ctx.ModuleName()), dexOutputFile)
|
||||
libName := android.RemoveOptionalPrebuiltPrefix(ctx.ModuleName())
|
||||
if j.SdkLibraryName() != nil && strings.HasSuffix(ctx.ModuleName(), ".impl") {
|
||||
libName = strings.TrimSuffix(libName, ".impl")
|
||||
}
|
||||
j.dexpreopt(ctx, libName, dexOutputFile)
|
||||
|
||||
outputFile = dexOutputFile
|
||||
} else {
|
||||
|
Reference in New Issue
Block a user