diff options
Diffstat (limited to 'apex/deapexer.go')
| -rw-r--r-- | apex/deapexer.go | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/apex/deapexer.go b/apex/deapexer.go index fed9cd1f0..a6731080c 100644 --- a/apex/deapexer.go +++ b/apex/deapexer.go @@ -53,6 +53,10 @@ type DeapexerProperties struct { // all architectures, e.g. java. CommonModules []string + // List of modules that use an embedded .prof to guide optimization of the equivalent dexpreopt artifact + // This is a subset of CommonModules + DexpreoptProfileGuidedModules []string + // List of files exported from the .apex file by this module // // Each entry is a path from the apex root, e.g. javalib/core-libart.jar. @@ -98,6 +102,7 @@ func privateDeapexerFactory() android.Module { func (p *Deapexer) DepsMutator(ctx android.BottomUpMutatorContext) { // Add dependencies from the java modules to which this exports files from the `.apex` file onto // this module so that they can access the `DeapexerInfo` object that this provides. + // TODO: b/308174306 - Once all the mainline modules have been flagged, drop this dependency edge for _, lib := range p.properties.CommonModules { dep := prebuiltApexExportedModuleName(ctx, lib) ctx.AddReverseDependency(ctx.Module(), android.DeapexerTag, dep) @@ -126,8 +131,9 @@ func (p *Deapexer) GenerateAndroidBuildActions(ctx android.ModuleContext) { // apex relative path to extracted file path available for other modules. if len(exports) > 0 { // Make the information available for other modules. - di := android.NewDeapexerInfo(apexModuleName(ctx.ModuleName()), exports) - ctx.SetProvider(android.DeapexerProvider, di) + di := android.NewDeapexerInfo(apexModuleName(ctx.ModuleName()), exports, p.properties.CommonModules) + di.AddDexpreoptProfileGuidedExportedModuleNames(p.properties.DexpreoptProfileGuidedModules...) + android.SetProvider(ctx, android.DeapexerProvider, di) // Create a sorted list of the files that this exports. exportedPaths = android.SortedUniquePaths(exportedPaths) @@ -140,7 +146,6 @@ func (p *Deapexer) GenerateAndroidBuildActions(ctx android.ModuleContext) { Tool(android.PathForSource(ctx, "build/soong/scripts/unpack-prebuilt-apex.sh")). BuiltTool("deapexer"). BuiltTool("debugfs"). - BuiltTool("blkid"). BuiltTool("fsck.erofs"). Input(p.inputApex). Text(deapexerOutput.String()) |