diff options
author | 2024-12-03 19:54:05 +0000 | |
---|---|---|
committer | 2024-12-03 19:55:25 +0000 | |
commit | 63bdf6337384ea49838482d4cf879ac9a56f2862 (patch) | |
tree | b8f1e2b2adad4e829ab0fa66b4dbff6f6c4b37de /java/base.go | |
parent | 44c5548d05722cd1733796c3db7215968bd183a3 (diff) |
Change checkJavaStableSdkVersion to use ModuleProxy.
Bug: 377723687
Test: Unit tests and compare the ninja and mk files generated.
Change-Id: I221f4ea7479d512d49cfb40a8cb06bba62ec2c7a
Diffstat (limited to 'java/base.go')
-rw-r--r-- | java/base.go | 29 |
1 files changed, 17 insertions, 12 deletions
diff --git a/java/base.go b/java/base.go index 3bf2e23d8..c0ac4ab99 100644 --- a/java/base.go +++ b/java/base.go @@ -612,21 +612,24 @@ func (j *Module) IsStubsModule() bool { return proptools.Bool(j.properties.Is_stubs_module) } -func (j *Module) CheckStableSdkVersion(ctx android.BaseModuleContext) error { - sdkVersion := j.SdkVersion(ctx) - if sdkVersion.Stable() { - return nil - } - if sdkVersion.Kind == android.SdkCorePlatform { - if useLegacyCorePlatformApi(ctx, j.BaseModuleName()) { - return fmt.Errorf("non stable SDK %v - uses legacy core platform", sdkVersion) - } else { - // Treat stable core platform as stable. +func CheckStableSdkVersion(ctx android.BaseModuleContext, module android.ModuleProxy) error { + if info, ok := android.OtherModuleProvider(ctx, module, JavaInfoProvider); ok { + if info.SdkVersion.Stable() { return nil } - } else { - return fmt.Errorf("non stable SDK %v", sdkVersion) + if info.SdkVersion.Kind == android.SdkCorePlatform { + if useLegacyCorePlatformApi(ctx, android.OtherModuleProviderOrDefault(ctx, module, android.CommonModuleInfoKey).BaseModuleName) { + return fmt.Errorf("non stable SDK %v - uses legacy core platform", info.SdkVersion) + } else { + // Treat stable core platform as stable. + return nil + } + } else { + return fmt.Errorf("non stable SDK %v", info.SdkVersion) + } } + + return nil } // checkSdkVersions enforces restrictions around SDK dependencies. @@ -1300,6 +1303,7 @@ func (j *Module) compile(ctx android.ModuleContext, extraSrcJars, extraClasspath ExportedPluginDisableTurbine: j.exportedDisableTurbine, StubsLinkType: j.stubsLinkType, AconfigIntermediateCacheOutputPaths: deps.aconfigProtoFiles, + SdkVersion: j.SdkVersion(ctx), }) j.outputFile = j.headerJarFile @@ -1929,6 +1933,7 @@ func (j *Module) compile(ctx android.ModuleContext, extraSrcJars, extraClasspath JacocoReportClassesFile: j.jacocoReportClassesFile, StubsLinkType: j.stubsLinkType, AconfigIntermediateCacheOutputPaths: j.aconfigCacheFiles, + SdkVersion: j.SdkVersion(ctx), }) // Save the output file with no relative path so that it doesn't end up in a subdirectory when used as a resource |