aboutsummaryrefslogtreecommitdiff
path: root/java/classpath_fragment.go
diff options
context:
space:
mode:
authormosimchah <mosimchah@gmail.com>2025-12-02 09:27:38 -0500
committermosimchah <mosimchah@gmail.com>2025-12-02 09:27:38 -0500
commitc7bade461dc55726f62997d13a48582f7c4b4655 (patch)
treeea0588da76060a2038f54f67efd046ca77634b10 /java/classpath_fragment.go
parent0f5414d19317805e8bbbe7c4db5f0fd78769bad5 (diff)
parent89d78cff8b00d3b20a90074635c3fe5a2ee49474 (diff)
Merge branch 'lineage-23.1' of https://github.com/LineageOS/android_build_soong into HEADw16.1
* 'lineage-23.1' of https://github.com/LineageOS/android_build_soong: (528 commits) Revert "install_symlink: Make symlink target configurable" Reapply "Clear as much of cc.Module as possible after GenerateBuildActions" Revert "rust: config: Fix missing CPU variant LD flags in Rust" Rename build-flag in outdir Revert^4 "cipd: Default CIPD proxy server to on, add opt-out" Convert check-vintf-all to phony with actions Create a partial implementation of check-vintf-all for soong-only Configure RBE rust pool based on build variant Revert^3 "Add sdk version check to arr" Add jdk.internal.invoke to the allowlist Make droid always depend on symbols zip Import Device and Odm skus Don't install gob_gen in Soong Remove bazel reference from run_integration_tests.sh Fix bootstrap_test.sh Don't panic in aconfig libraries when AllowMissingDependencies is set Avoid returning nil paths from PathForModuleSrc Revert "Flag controled clang version" Rework module target dependencies on required deps Revert^2 "Add sdk version check to arr" ... Change-Id: I6e9a63fa14fda917a42e426e5dcebbad7f67e1de
Diffstat (limited to 'java/classpath_fragment.go')
-rw-r--r--java/classpath_fragment.go28
1 files changed, 14 insertions, 14 deletions
diff --git a/java/classpath_fragment.go b/java/classpath_fragment.go
index 88a8fb80a..6b9dc194a 100644
--- a/java/classpath_fragment.go
+++ b/java/classpath_fragment.go
@@ -104,17 +104,14 @@ type classpathJar struct {
func gatherPossibleApexModuleNamesAndStems(ctx android.ModuleContext, contents []string, tag blueprint.DependencyTag) []string {
set := map[string]struct{}{}
for _, name := range contents {
- dep := ctx.GetDirectDepWithTag(name, tag)
- if dep == nil && ctx.Config().AllowMissingDependencies() {
+ dep := ctx.GetDirectDepProxyWithTag(name, tag)
+ if dep.IsNil() && ctx.Config().AllowMissingDependencies() {
// Ignore apex boot jars from dexpreopt if it does not exist, and missing deps are allowed.
continue
}
- set[ModuleStemForDeapexing(dep)] = struct{}{}
- if m, ok := dep.(ModuleWithStem); ok {
- set[m.Stem()] = struct{}{}
- } else {
- ctx.PropertyErrorf("contents", "%v is not a ModuleWithStem", name)
- }
+ info := android.OtherModuleProviderOrDefault(ctx, dep, JavaInfoProvider)
+ set[ModuleStemForDeapexing(ctx, dep)] = struct{}{}
+ set[info.Stem] = struct{}{}
}
return android.SortedKeys(set)
}
@@ -129,12 +126,15 @@ func configuredJarListToClasspathJars(ctx android.ModuleContext, configuredJars
classpath: classpathType,
path: paths[i],
}
- ctx.VisitDirectDepsIf(func(m android.Module) bool {
- return m.Name() == configuredJars.Jar(i)
- }, func(m android.Module) {
- if s, ok := m.(*SdkLibrary); ok {
- minSdkVersion := s.MinSdkVersion(ctx)
- maxSdkVersion := s.MaxSdkVersion(ctx)
+ ctx.VisitDirectDepsProxy(func(m android.ModuleProxy) {
+ if m.Name() != configuredJars.Jar(i) {
+ return
+ }
+ if _, ok := android.OtherModuleProvider(ctx, m, SdkLibraryInfoProvider); ok {
+ info := android.OtherModuleProviderOrDefault(ctx, m, JavaInfoProvider)
+ commonInfo := android.OtherModulePointerProviderOrDefault(ctx, m, android.CommonModuleInfoProvider)
+ minSdkVersion := *commonInfo.MinSdkVersion.ApiLevel
+ maxSdkVersion := info.MaxSdkVersion
// TODO(208456999): instead of mapping "current" to latest, min_sdk_version should never be set to "current"
if minSdkVersion.Specified() {
if minSdkVersion.IsCurrent() {