diff options
| author | 2024-09-18 23:10:55 +0000 | |
|---|---|---|
| committer | 2024-09-19 21:44:40 +0000 | |
| commit | 0d28fd30e5abe91b652020629a9396b721f915ea (patch) | |
| tree | d05efaa4a6c95eabb3d06a6ccfa9d727ffad6655 | |
| parent | 125efc6c3055d05e3114736cde1e57e9e3f4bad8 (diff) | |
Restrict java_sdk_library in libs of java_import and droidstubs modules
These are all remaining usages of "magic", which are being removed with
this change. The follow up change will remove the "magic".
Test: m nothing --no-skip-soong-tests
Bug: 366069293
Change-Id: I4762682cb8696b435b9f0fb0f4c55ba2fa865f05
| -rw-r--r-- | java/droiddoc.go | 7 | ||||
| -rw-r--r-- | java/java.go | 10 |
2 files changed, 10 insertions, 7 deletions
diff --git a/java/droiddoc.go b/java/droiddoc.go index 2929bb8d9..a7e92d9ef 100644 --- a/java/droiddoc.go +++ b/java/droiddoc.go @@ -373,8 +373,11 @@ func (j *Javadoc) collectDeps(ctx android.ModuleContext) deps { panic(fmt.Errorf("unknown dependency %q for %q", otherName, ctx.ModuleName())) } case libTag, sdkLibTag: - if dep, ok := module.(SdkLibraryDependency); ok { - deps.classpath = append(deps.classpath, dep.SdkHeaderJars(ctx, j.SdkVersion(ctx))...) + if _, ok := module.(SdkLibraryDependency); ok { + sdkInfo, _ := android.OtherModuleProvider(ctx, module, SdkLibraryInfoProvider) + generatingLibsString := android.PrettyConcat( + getGeneratingLibs(ctx, j.SdkVersion(ctx), module.Name(), sdkInfo), true, "or") + ctx.ModuleErrorf("cannot depend directly on java_sdk_library %q; try depending on %s instead", module.Name(), generatingLibsString) } else if dep, ok := android.OtherModuleProvider(ctx, module, JavaInfoProvider); ok { deps.classpath = append(deps.classpath, dep.HeaderJars...) deps.aidlIncludeDirs = append(deps.aidlIncludeDirs, dep.AidlIncludeDirs...) diff --git a/java/java.go b/java/java.go index d63bbe6e1..b6d617377 100644 --- a/java/java.go +++ b/java/java.go @@ -2700,13 +2700,13 @@ func (j *Import) GenerateAndroidBuildActions(ctx android.ModuleContext) { transitiveBootClasspathHeaderJars = append(transitiveBootClasspathHeaderJars, dep.TransitiveStaticLibsHeaderJars) } } - } else if dep, ok := module.(SdkLibraryDependency); ok { + } else if _, ok := module.(SdkLibraryDependency); ok { switch tag { case libTag, sdkLibTag: - depHeaderJars := dep.SdkHeaderJars(ctx, j.SdkVersion(ctx)) - flags.classpath = append(flags.classpath, depHeaderJars...) - transitiveClasspathHeaderJars = append(transitiveClasspathHeaderJars, - android.NewDepSet(android.PREORDER, depHeaderJars, nil)) + sdkInfo, _ := android.OtherModuleProvider(ctx, module, SdkLibraryInfoProvider) + generatingLibsString := android.PrettyConcat( + getGeneratingLibs(ctx, j.SdkVersion(ctx), module.Name(), sdkInfo), true, "or") + ctx.ModuleErrorf("cannot depend directly on java_sdk_library %q; try depending on %s instead", module.Name(), generatingLibsString) } } |