diff options
| author | 2021-08-24 13:29:58 +0000 | |
|---|---|---|
| committer | 2021-08-24 13:29:58 +0000 | |
| commit | 28e5eda261e736feffb42a5cfe46a6f5f4a171e2 (patch) | |
| tree | 827b0c31ef43cfb47e1fa740a4e9469d973e1d3e /java | |
| parent | f32f2d6b6d03269380748541cc5edcb15824ffd0 (diff) | |
| parent | d34eb0c4a6e176ca129f66f0449bd0ba19fdff5e (diff) | |
Merge "Make sure that classpath fragment contents appear in make vars."
Diffstat (limited to 'java')
| -rw-r--r-- | java/bootclasspath_fragment.go | 8 | ||||
| -rw-r--r-- | java/systemserver_classpath_fragment.go | 11 |
2 files changed, 17 insertions, 2 deletions
diff --git a/java/bootclasspath_fragment.go b/java/bootclasspath_fragment.go index bb542c49c..757731632 100644 --- a/java/bootclasspath_fragment.go +++ b/java/bootclasspath_fragment.go @@ -538,7 +538,7 @@ func (b *BootclasspathFragmentModule) configuredJars(ctx android.ModuleContext) global := dexpreopt.GetGlobalConfig(ctx) possibleUpdatableModules := gatherPossibleApexModuleNamesAndStems(ctx, b.properties.Contents, bootclasspathFragmentContentDepTag) - jars := global.ApexBootJars.Filter(possibleUpdatableModules) + jars, unknown := global.ApexBootJars.Filter(possibleUpdatableModules) // TODO(satayev): for apex_test we want to include all contents unconditionally to classpaths // config. However, any test specific jars would not be present in ApexBootJars. Instead, @@ -546,6 +546,12 @@ func (b *BootclasspathFragmentModule) configuredJars(ctx android.ModuleContext) // This is an exception to support end-to-end test for SdkExtensions, until such support exists. if android.InList("test_framework-sdkextensions", possibleUpdatableModules) { jars = jars.Append("com.android.sdkext", "test_framework-sdkextensions") + } else if global.ApexBootJars.Len() != 0 && !android.IsModuleInVersionedSdk(ctx.Module()) { + unknown = android.RemoveListFromList(unknown, b.properties.Coverage.Contents) + _, unknown = android.RemoveFromList("core-icu4j", unknown) + if len(unknown) > 0 { + ctx.ModuleErrorf("%s in contents must also be declared in PRODUCT_APEX_BOOT_JARS", unknown) + } } return jars } diff --git a/java/systemserver_classpath_fragment.go b/java/systemserver_classpath_fragment.go index 6c2a5b58b..5311f62c1 100644 --- a/java/systemserver_classpath_fragment.go +++ b/java/systemserver_classpath_fragment.go @@ -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 { |