Revert "Partial Revert "Populate individual classpath_fragments'..."
Revert submission 14717811-revert-populate-platform-bootclasspath
Reason for revert: retry with a fix
Reverted Changes:
Ib58cd0211:Revert "Add bootclasspath_fragments to platform-bo...
I13b622d6c:Partial Revert "Populate individual classpath_frag...
Bug: 180105615
Test: atest sdkextensions_e2e_tests
Change-Id: I7b6b6b980a4c6430a70394e85222f3b35c4efd5f
diff --git a/java/bootclasspath_fragment.go b/java/bootclasspath_fragment.go
index 6738b09..188d362 100644
--- a/java/bootclasspath_fragment.go
+++ b/java/bootclasspath_fragment.go
@@ -490,8 +490,16 @@
}
func (b *BootclasspathFragmentModule) ClasspathFragmentToConfiguredJarList(ctx android.ModuleContext) android.ConfiguredJarList {
- // TODO(satayev): populate with actual content
- return android.EmptyConfiguredJarList()
+ if "art" == proptools.String(b.properties.Image_name) {
+ return b.getImageConfig(ctx).modules
+ }
+
+ global := dexpreopt.GetGlobalConfig(ctx)
+
+ // Only create configs for updatable boot jars. Non-updatable boot jars must be part of the
+ // platform_bootclasspath's classpath proto config to guarantee that they come before any
+ // updatable jars at runtime.
+ return global.UpdatableBootJars.Filter(b.properties.Contents)
}
func (b *BootclasspathFragmentModule) getImageConfig(ctx android.EarlyModuleContext) *bootImageConfig {