Move generateUpdatableBcpPackagesRule to platform_bootclasspath
Changes generateUpdatableBcpPackagesRule to use ModuleContext instead
of SingletonContext and moves the call from dexpreoptBootJar's
GenerateSingletonBuildActions method to platform_bootclasspath's
GenerateAndroidBuildActions.
Bug: 177892522
Test: lunch art_module_arm64
m out/soong/module_arm64/dex_bootjars/updatable-bcp-packages.txt
- make sure it is not affected by this change
Change-Id: I9741ae1eb9573cafe12dd7a17dc1d8449b224dc8
diff --git a/java/dexpreopt_bootjars.go b/java/dexpreopt_bootjars.go
index 8a6f3d1..be14be4 100644
--- a/java/dexpreopt_bootjars.go
+++ b/java/dexpreopt_bootjars.go
@@ -431,9 +431,6 @@
defaultImageConfig := defaultBootImageConfig(ctx)
profile := bootImageProfileRule(ctx, defaultImageConfig)
- // Generate the updatable bootclasspath packages rule.
- updatableBcpPackagesRule(ctx, defaultImageConfig)
-
// Create the default boot image.
d.defaultBootImage = buildBootImage(ctx, defaultImageConfig, profile)
@@ -887,32 +884,9 @@
return profile
}
-func updatableBcpPackagesRule(ctx android.SingletonContext, image *bootImageConfig) android.WritablePath {
- if ctx.Config().UnbundledBuild() {
- return nil
- }
-
- global := dexpreopt.GetGlobalConfig(ctx)
- var modules []android.Module
- updatableModules := global.UpdatableBootJars.CopyOfJars()
- ctx.VisitAllModules(func(module android.Module) {
- if !isActiveModule(module) {
- return
- }
- name := ctx.ModuleName(module)
- if i := android.IndexList(name, updatableModules); i != -1 {
- modules = append(modules, module)
- // Do not match the same library repeatedly.
- updatableModules = append(updatableModules[:i], updatableModules[i+1:]...)
- }
- })
-
- return generateUpdatableBcpPackagesRule(ctx, image, modules)
-}
-
// generateUpdatableBcpPackagesRule generates the rule to create the updatable-bcp-packages.txt file
// and returns a path to the generated file.
-func generateUpdatableBcpPackagesRule(ctx android.SingletonContext, image *bootImageConfig, updatableModules []android.Module) android.WritablePath {
+func generateUpdatableBcpPackagesRule(ctx android.ModuleContext, image *bootImageConfig, updatableModules []android.Module) android.WritablePath {
// Collect `permitted_packages` for updatable boot jars.
var updatablePackages []string
for _, module := range updatableModules {
@@ -921,7 +895,7 @@
if len(pp) > 0 {
updatablePackages = append(updatablePackages, pp...)
} else {
- ctx.Errorf("Missing permitted_packages for %s", ctx.ModuleName(module))
+ ctx.ModuleErrorf("Missing permitted_packages")
}
}
}