Make sure that classpath fragment contents appear in make vars.
The source of truth for what jars are in BOOTCLASSPATH and SYSTEMSERVERCLASSPATH is make; adding a classpath fragment in soong with a new jar in the contents without having it declared in make is wrong (excluding test apexes). Bug: 191369843 Test: m nothing Change-Id: Ifd313776ee7ad206031244534ed3870126e4f835
This commit is contained in:
@@ -107,7 +107,16 @@ func (s *SystemServerClasspathModule) configuredJars(ctx android.ModuleContext)
|
||||
global := dexpreopt.GetGlobalConfig(ctx)
|
||||
|
||||
possibleUpdatableModules := gatherPossibleApexModuleNamesAndStems(ctx, s.properties.Contents, systemServerClasspathFragmentContentDepTag)
|
||||
return global.ApexSystemServerJars.Filter(possibleUpdatableModules)
|
||||
jars, unknown := global.ApexSystemServerJars.Filter(possibleUpdatableModules)
|
||||
// TODO(satayev): remove geotz ssc_fragment, since geotz is not part of SSCP anymore.
|
||||
_, unknown = android.RemoveFromList("geotz", unknown)
|
||||
|
||||
// For non test apexes, make sure that all contents are actually declared in make.
|
||||
if global.ApexSystemServerJars.Len() > 0 && len(unknown) > 0 {
|
||||
ctx.ModuleErrorf("%s in contents must also be declared in PRODUCT_UPDATABLE_SYSTEM_SERVER_JARS", unknown)
|
||||
}
|
||||
|
||||
return jars
|
||||
}
|
||||
|
||||
type systemServerClasspathFragmentContentDependencyTag struct {
|
||||
|
Reference in New Issue
Block a user