summaryrefslogtreecommitdiff
path: root/java/sdk_library.go
diff options
context:
space:
mode:
author Spandan Das <spandandas@google.com> 2024-08-12 16:40:30 +0000
committer Gerrit Code Review <noreply-gerritcodereview@google.com> 2024-08-12 16:40:30 +0000
commit9dfccb91a5dfc1bf3637a52165081a54c81c159d (patch)
treea783c01e307a82a9e9eb8b91cb83c83403541ff7 /java/sdk_library.go
parentd0338d3565cf1efcf27d7932e4ed62faa09a6076 (diff)
parentb4cd5df5736b0561471d0861a2d8a6b0d1cdf118 (diff)
Merge changes Ib4581079,Ia3887bae into main
* changes: Make IdeInfo aware of jarjar-ing Add .internal modules to IDEInfo.deps of top-level java_sdk_library
Diffstat (limited to 'java/sdk_library.go')
-rw-r--r--java/sdk_library.go16
1 files changed, 16 insertions, 0 deletions
diff --git a/java/sdk_library.go b/java/sdk_library.go
index a8cc1b81f..4f95a997d 100644
--- a/java/sdk_library.go
+++ b/java/sdk_library.go
@@ -3602,3 +3602,19 @@ func (s *sdkLibrarySdkMemberProperties) AddToPropertySet(ctx android.SdkMemberCo
propertySet.AddProperty("doctag_files", dests)
}
}
+
+// TODO(b/358613520): This can be removed when modules are no longer allowed to depend on the top-level library.
+func (s *SdkLibrary) IDEInfo(dpInfo *android.IdeInfo) {
+ s.Library.IDEInfo(dpInfo)
+ if s.implLibraryModule != nil {
+ dpInfo.Deps = append(dpInfo.Deps, s.implLibraryModule.Name())
+ } else {
+ // This java_sdk_library does not have an implementation (it sets `api_only` to true).
+ // Examples of this are `art.module.intra.core.api` (IntraCore api surface).
+ // Return the "public" stubs for these.
+ stubPaths := s.findClosestScopePath(apiScopePublic)
+ if len(stubPaths.stubsHeaderPath) > 0 {
+ dpInfo.Jars = append(dpInfo.Jars, stubPaths.stubsHeaderPath[0].String())
+ }
+ }
+}