diff options
author | 2024-10-23 16:57:06 -0700 | |
---|---|---|
committer | 2024-10-24 10:55:33 -0700 | |
commit | a14fb6a73e2207c1084a0230fd97f08c14ef4818 (patch) | |
tree | 3300c5bf686fc67e71400ab8bac8c39b5d1c6c0b /java/base.go | |
parent | 11d0c38a2b295774f4c91f8f571323359add9835 (diff) |
Update DepSet references
Update all references to depset to use blueprint/depset, and to use
DepSet instead of *DepSet.
Bug: 375276086
Test: all soong tests pass
Flag: EXEMPT refactor
Change-Id: I59a7836d0975366ddc336225fb770ac7e6e0c8ea
Diffstat (limited to 'java/base.go')
-rw-r--r-- | java/base.go | 130 |
1 files changed, 54 insertions, 76 deletions
diff --git a/java/base.go b/java/base.go index f6764b6f3..c4fc21040 100644 --- a/java/base.go +++ b/java/base.go @@ -24,6 +24,7 @@ import ( "strings" "github.com/google/blueprint" + "github.com/google/blueprint/depset" "github.com/google/blueprint/pathtools" "github.com/google/blueprint/proptools" @@ -471,7 +472,7 @@ type Module struct { srcJarDeps android.Paths // the source files of this module and all its static dependencies - transitiveSrcFiles *android.DepSet[android.Path] + transitiveSrcFiles depset.DepSet[android.Path] // jar file containing implementation classes and resources including static library // dependencies @@ -1276,7 +1277,7 @@ func (j *Module) compile(ctx android.ModuleContext, extraSrcJars, extraClasspath android.SetProvider(ctx, JavaInfoProvider, &JavaInfo{ HeaderJars: android.PathsIfNonNil(j.headerJarFile), LocalHeaderJars: localHeaderJars, - TransitiveStaticLibsHeaderJars: android.NewDepSet(android.PREORDER, localHeaderJars, transitiveStaticLibsHeaderJars), + TransitiveStaticLibsHeaderJars: depset.New(depset.PREORDER, localHeaderJars, transitiveStaticLibsHeaderJars), TransitiveLibsHeaderJarsForR8: j.transitiveLibsHeaderJarsForR8, TransitiveStaticLibsHeaderJarsForR8: j.transitiveStaticLibsHeaderJarsForR8, AidlIncludeDirs: j.exportAidlIncludeDirs, @@ -1535,7 +1536,7 @@ func (j *Module) compile(ctx android.ModuleContext, extraSrcJars, extraClasspath localResourceJars = append(localResourceJars, servicesJar) } - completeStaticLibsResourceJars := android.NewDepSet(android.PREORDER, localResourceJars, deps.transitiveStaticLibsResourceJars) + completeStaticLibsResourceJars := depset.New(depset.PREORDER, localResourceJars, deps.transitiveStaticLibsResourceJars) var combinedResourceJar android.Path var resourceJars android.Paths @@ -1562,7 +1563,7 @@ func (j *Module) compile(ctx android.ModuleContext, extraSrcJars, extraClasspath // classes.jar. If there is only one input jar this step will be skipped. var outputFile android.Path - completeStaticLibsImplementationJars := android.NewDepSet(android.PREORDER, localImplementationJars, deps.transitiveStaticLibsImplementationJars) + completeStaticLibsImplementationJars := depset.New(depset.PREORDER, localImplementationJars, deps.transitiveStaticLibsImplementationJars) var jars android.Paths if ctx.Config().UseTransitiveJarsInClasspath() { @@ -1592,7 +1593,7 @@ func (j *Module) compile(ctx android.ModuleContext, extraSrcJars, extraClasspath Input: jars[0], Output: copiedJar, }) - completeStaticLibsImplementationJars = android.NewDepSet(android.PREORDER, android.Paths{copiedJar}, nil) + completeStaticLibsImplementationJars = depset.New(depset.PREORDER, android.Paths{copiedJar}, nil) outputFile = copiedJar } else { outputFile = jars[0] @@ -1608,7 +1609,7 @@ func (j *Module) compile(ctx android.ModuleContext, extraSrcJars, extraClasspath jarjarFile, jarjarred := j.jarjarIfNecessary(ctx, outputFile, jarName, "") if jarjarred { localImplementationJars = android.Paths{jarjarFile} - completeStaticLibsImplementationJars = android.NewDepSet(android.PREORDER, localImplementationJars, nil) + completeStaticLibsImplementationJars = depset.New(depset.PREORDER, localImplementationJars, nil) } outputFile = jarjarFile @@ -1618,7 +1619,7 @@ func (j *Module) compile(ctx android.ModuleContext, extraSrcJars, extraClasspath combinedResourceJar = resourceJarJarFile if jarjarred { localResourceJars = android.Paths{resourceJarJarFile} - completeStaticLibsResourceJars = android.NewDepSet(android.PREORDER, localResourceJars, nil) + completeStaticLibsResourceJars = depset.New(depset.PREORDER, localResourceJars, nil) } } @@ -1636,14 +1637,14 @@ func (j *Module) compile(ctx android.ModuleContext, extraSrcJars, extraClasspath TransformRavenizer(ctx, ravenizerOutput, ravenizerInput, ravenizerArgs) outputFile = ravenizerOutput localImplementationJars = android.Paths{ravenizerOutput} - completeStaticLibsImplementationJars = android.NewDepSet(android.PREORDER, localImplementationJars, nil) + completeStaticLibsImplementationJars = depset.New(depset.PREORDER, localImplementationJars, nil) if combinedResourceJar != nil { ravenizerInput = combinedResourceJar ravenizerOutput = android.PathForModuleOut(ctx, "ravenizer", "resources", jarName) TransformRavenizer(ctx, ravenizerOutput, ravenizerInput, ravenizerArgs) combinedResourceJar = ravenizerOutput localResourceJars = android.Paths{ravenizerOutput} - completeStaticLibsResourceJars = android.NewDepSet(android.PREORDER, localResourceJars, nil) + completeStaticLibsResourceJars = depset.New(depset.PREORDER, localResourceJars, nil) } } @@ -1658,7 +1659,7 @@ func (j *Module) compile(ctx android.ModuleContext, extraSrcJars, extraClasspath }) outputFile = apiMapperFile localImplementationJars = android.Paths{apiMapperFile} - completeStaticLibsImplementationJars = android.NewDepSet(android.PREORDER, localImplementationJars, nil) + completeStaticLibsImplementationJars = depset.New(depset.PREORDER, localImplementationJars, nil) } // Check package restrictions if necessary. @@ -1681,7 +1682,7 @@ func (j *Module) compile(ctx android.ModuleContext, extraSrcJars, extraClasspath }) outputFile = packageCheckOutputFile localImplementationJars = android.Paths{packageCheckOutputFile} - completeStaticLibsImplementationJars = android.NewDepSet(android.PREORDER, localImplementationJars, nil) + completeStaticLibsImplementationJars = depset.New(depset.PREORDER, localImplementationJars, nil) // Check packages and create a timestamp file when complete. CheckJarPackages(ctx, pkgckFile, outputFile, j.properties.Permitted_packages) @@ -1719,7 +1720,7 @@ func (j *Module) compile(ctx android.ModuleContext, extraSrcJars, extraClasspath if j.shouldInstrument(ctx) { instrumentedOutputFile := j.instrument(ctx, flags, outputFile, jarName, specs) - completeStaticLibsImplementationJarsToCombine = android.NewDepSet(android.PREORDER, android.Paths{instrumentedOutputFile}, nil) + completeStaticLibsImplementationJarsToCombine = depset.New(depset.PREORDER, android.Paths{instrumentedOutputFile}, nil) outputFile = instrumentedOutputFile } @@ -1898,7 +1899,7 @@ func (j *Module) compile(ctx android.ModuleContext, extraSrcJars, extraClasspath RepackagedHeaderJars: android.PathsIfNonNil(repackagedHeaderJarFile), LocalHeaderJars: localHeaderJars, - TransitiveStaticLibsHeaderJars: android.NewDepSet(android.PREORDER, localHeaderJars, transitiveStaticLibsHeaderJars), + TransitiveStaticLibsHeaderJars: depset.New(depset.PREORDER, localHeaderJars, transitiveStaticLibsHeaderJars), TransitiveStaticLibsImplementationJars: completeStaticLibsImplementationJars, TransitiveStaticLibsResourceJars: completeStaticLibsResourceJars, @@ -1927,17 +1928,15 @@ func (j *Module) useCompose(ctx android.BaseModuleContext) bool { return android.InList("androidx.compose.runtime_runtime", j.staticLibs(ctx)) } -func collectDepProguardSpecInfo(ctx android.ModuleContext) (transitiveProguardFlags, transitiveUnconditionalExportedFlags []*android.DepSet[android.Path]) { +func collectDepProguardSpecInfo(ctx android.ModuleContext) (transitiveProguardFlags, transitiveUnconditionalExportedFlags []depset.DepSet[android.Path]) { ctx.VisitDirectDeps(func(m android.Module) { depProguardInfo, _ := android.OtherModuleProvider(ctx, m, ProguardSpecInfoProvider) depTag := ctx.OtherModuleDependencyTag(m) - if depProguardInfo.UnconditionallyExportedProguardFlags != nil { - transitiveUnconditionalExportedFlags = append(transitiveUnconditionalExportedFlags, depProguardInfo.UnconditionallyExportedProguardFlags) - transitiveProguardFlags = append(transitiveProguardFlags, depProguardInfo.UnconditionallyExportedProguardFlags) - } + transitiveUnconditionalExportedFlags = append(transitiveUnconditionalExportedFlags, depProguardInfo.UnconditionallyExportedProguardFlags) + transitiveProguardFlags = append(transitiveProguardFlags, depProguardInfo.UnconditionallyExportedProguardFlags) - if depTag == staticLibTag && depProguardInfo.ProguardFlagsFiles != nil { + if depTag == staticLibTag { transitiveProguardFlags = append(transitiveProguardFlags, depProguardInfo.ProguardFlagsFiles) } }) @@ -1959,13 +1958,13 @@ func (j *Module) collectProguardSpecInfo(ctx android.ModuleContext) ProguardSpec return ProguardSpecInfo{ Export_proguard_flags_files: exportUnconditionally, - ProguardFlagsFiles: android.NewDepSet[android.Path]( - android.POSTORDER, + ProguardFlagsFiles: depset.New[android.Path]( + depset.POSTORDER, proguardFlagsForThisModule, transitiveProguardFlags, ), - UnconditionallyExportedProguardFlags: android.NewDepSet[android.Path]( - android.POSTORDER, + UnconditionallyExportedProguardFlags: depset.New[android.Path]( + depset.POSTORDER, directUnconditionalExportedFlags, transitiveUnconditionalExportedFlags, ), @@ -2057,7 +2056,7 @@ func (j *Module) compileJavaHeader(ctx android.ModuleContext, srcFiles, srcJars // one input jar this step will be skipped. var jars android.Paths if ctx.Config().UseTransitiveJarsInClasspath() { - depSet := android.NewDepSet(android.PREORDER, localHeaderJars, deps.transitiveStaticLibsHeaderJars) + depSet := depset.New(depset.PREORDER, localHeaderJars, deps.transitiveStaticLibsHeaderJars) jars = depSet.ToList() } else { jars = append(slices.Clone(localHeaderJars), deps.staticHeaderJars...) @@ -2087,9 +2086,9 @@ func (j *Module) instrument(ctx android.ModuleContext, flags javaBuilderFlags, type providesTransitiveHeaderJarsForR8 struct { // set of header jars for all transitive libs deps - transitiveLibsHeaderJarsForR8 *android.DepSet[android.Path] + transitiveLibsHeaderJarsForR8 depset.DepSet[android.Path] // set of header jars for all transitive static libs deps - transitiveStaticLibsHeaderJarsForR8 *android.DepSet[android.Path] + transitiveStaticLibsHeaderJarsForR8 depset.DepSet[android.Path] } // collectTransitiveHeaderJarsForR8 visits direct dependencies and collects all transitive libs and static_libs @@ -2099,8 +2098,8 @@ type providesTransitiveHeaderJarsForR8 struct { func (j *providesTransitiveHeaderJarsForR8) collectTransitiveHeaderJarsForR8(ctx android.ModuleContext) { directLibs := android.Paths{} directStaticLibs := android.Paths{} - transitiveLibs := []*android.DepSet[android.Path]{} - transitiveStaticLibs := []*android.DepSet[android.Path]{} + transitiveLibs := []depset.DepSet[android.Path]{} + transitiveStaticLibs := []depset.DepSet[android.Path]{} ctx.VisitDirectDeps(func(module android.Module) { // don't add deps of the prebuilt version of the same library if ctx.ModuleName() == android.RemoveOptionalPrebuiltPrefix(module.Name()) { @@ -2119,17 +2118,12 @@ func (j *providesTransitiveHeaderJarsForR8) collectTransitiveHeaderJarsForR8(ctx return } - if dep.TransitiveLibsHeaderJarsForR8 != nil { - transitiveLibs = append(transitiveLibs, dep.TransitiveLibsHeaderJarsForR8) - } - if dep.TransitiveStaticLibsHeaderJarsForR8 != nil { - transitiveStaticLibs = append(transitiveStaticLibs, dep.TransitiveStaticLibsHeaderJarsForR8) - } - + transitiveLibs = append(transitiveLibs, dep.TransitiveLibsHeaderJarsForR8) + transitiveStaticLibs = append(transitiveStaticLibs, dep.TransitiveStaticLibsHeaderJarsForR8) } }) - j.transitiveLibsHeaderJarsForR8 = android.NewDepSet(android.POSTORDER, directLibs, transitiveLibs) - j.transitiveStaticLibsHeaderJarsForR8 = android.NewDepSet(android.POSTORDER, directStaticLibs, transitiveStaticLibs) + j.transitiveLibsHeaderJarsForR8 = depset.New(depset.POSTORDER, directLibs, transitiveLibs) + j.transitiveStaticLibsHeaderJarsForR8 = depset.New(depset.POSTORDER, directStaticLibs, transitiveStaticLibs) } func (j *Module) HeaderJars() android.Paths { @@ -2229,19 +2223,17 @@ func (j *Module) JacocoReportClassesFile() android.Path { } func (j *Module) collectTransitiveSrcFiles(ctx android.ModuleContext, mine android.Paths) { - var fromDeps []*android.DepSet[android.Path] + var fromDeps []depset.DepSet[android.Path] ctx.VisitDirectDeps(func(module android.Module) { tag := ctx.OtherModuleDependencyTag(module) if tag == staticLibTag { if depInfo, ok := android.OtherModuleProvider(ctx, module, JavaInfoProvider); ok { - if depInfo.TransitiveSrcFiles != nil { - fromDeps = append(fromDeps, depInfo.TransitiveSrcFiles) - } + fromDeps = append(fromDeps, depInfo.TransitiveSrcFiles) } } }) - j.transitiveSrcFiles = android.NewDepSet(android.POSTORDER, mine, fromDeps) + j.transitiveSrcFiles = depset.New(depset.POSTORDER, mine, fromDeps) } func (j *Module) IsInstallable() bool { @@ -2375,12 +2367,12 @@ func (j *Module) collectDeps(ctx android.ModuleContext) deps { j.collectTransitiveHeaderJarsForR8(ctx) - var transitiveBootClasspathHeaderJars []*android.DepSet[android.Path] - var transitiveClasspathHeaderJars []*android.DepSet[android.Path] - var transitiveJava9ClasspathHeaderJars []*android.DepSet[android.Path] - var transitiveStaticJarsHeaderLibs []*android.DepSet[android.Path] - var transitiveStaticJarsImplementationLibs []*android.DepSet[android.Path] - var transitiveStaticJarsResourceLibs []*android.DepSet[android.Path] + var transitiveBootClasspathHeaderJars []depset.DepSet[android.Path] + var transitiveClasspathHeaderJars []depset.DepSet[android.Path] + var transitiveJava9ClasspathHeaderJars []depset.DepSet[android.Path] + var transitiveStaticJarsHeaderLibs []depset.DepSet[android.Path] + var transitiveStaticJarsImplementationLibs []depset.DepSet[android.Path] + var transitiveStaticJarsResourceLibs []depset.DepSet[android.Path] ctx.VisitDirectDeps(func(module android.Module) { otherName := ctx.OtherModuleName(module) @@ -2414,9 +2406,7 @@ func (j *Module) collectDeps(ctx android.ModuleContext) deps { switch tag { case bootClasspathTag: deps.bootClasspath = append(deps.bootClasspath, dep.HeaderJars...) - if dep.TransitiveStaticLibsHeaderJars != nil { - transitiveBootClasspathHeaderJars = append(transitiveBootClasspathHeaderJars, dep.TransitiveStaticLibsHeaderJars) - } + transitiveBootClasspathHeaderJars = append(transitiveBootClasspathHeaderJars, dep.TransitiveStaticLibsHeaderJars) case sdkLibTag, libTag, instrumentationForTag: if _, ok := module.(*Plugin); ok { ctx.ModuleErrorf("a java_plugin (%s) cannot be used as a libs dependency", otherName) @@ -2431,14 +2421,10 @@ func (j *Module) collectDeps(ctx android.ModuleContext) deps { addPlugins(&deps, dep.ExportedPlugins, dep.ExportedPluginClasses...) deps.disableTurbine = deps.disableTurbine || dep.ExportedPluginDisableTurbine - if dep.TransitiveStaticLibsHeaderJars != nil { - transitiveClasspathHeaderJars = append(transitiveClasspathHeaderJars, dep.TransitiveStaticLibsHeaderJars) - } + transitiveClasspathHeaderJars = append(transitiveClasspathHeaderJars, dep.TransitiveStaticLibsHeaderJars) case java9LibTag: deps.java9Classpath = append(deps.java9Classpath, dep.HeaderJars...) - if dep.TransitiveStaticLibsHeaderJars != nil { - transitiveJava9ClasspathHeaderJars = append(transitiveJava9ClasspathHeaderJars, dep.TransitiveStaticLibsHeaderJars) - } + transitiveJava9ClasspathHeaderJars = append(transitiveJava9ClasspathHeaderJars, dep.TransitiveStaticLibsHeaderJars) case staticLibTag: if _, ok := module.(*Plugin); ok { ctx.ModuleErrorf("a java_plugin (%s) cannot be used as a static_libs dependency", otherName) @@ -2455,16 +2441,10 @@ func (j *Module) collectDeps(ctx android.ModuleContext) deps { deps.disableTurbine = deps.disableTurbine || dep.ExportedPluginDisableTurbine deps.aconfigProtoFiles = append(deps.aconfigProtoFiles, dep.AconfigIntermediateCacheOutputPaths...) - if dep.TransitiveStaticLibsHeaderJars != nil { - transitiveClasspathHeaderJars = append(transitiveClasspathHeaderJars, dep.TransitiveStaticLibsHeaderJars) - transitiveStaticJarsHeaderLibs = append(transitiveStaticJarsHeaderLibs, dep.TransitiveStaticLibsHeaderJars) - } - if dep.TransitiveStaticLibsImplementationJars != nil { - transitiveStaticJarsImplementationLibs = append(transitiveStaticJarsImplementationLibs, dep.TransitiveStaticLibsImplementationJars) - } - if dep.TransitiveStaticLibsResourceJars != nil { - transitiveStaticJarsResourceLibs = append(transitiveStaticJarsResourceLibs, dep.TransitiveStaticLibsResourceJars) - } + transitiveClasspathHeaderJars = append(transitiveClasspathHeaderJars, dep.TransitiveStaticLibsHeaderJars) + transitiveStaticJarsHeaderLibs = append(transitiveStaticJarsHeaderLibs, dep.TransitiveStaticLibsHeaderJars) + transitiveStaticJarsImplementationLibs = append(transitiveStaticJarsImplementationLibs, dep.TransitiveStaticLibsImplementationJars) + transitiveStaticJarsResourceLibs = append(transitiveStaticJarsResourceLibs, dep.TransitiveStaticLibsResourceJars) case pluginTag: if plugin, ok := module.(*Plugin); ok { if plugin.pluginProperties.Processor_class != nil { @@ -2514,14 +2494,14 @@ func (j *Module) collectDeps(ctx android.ModuleContext) deps { deps.classpath = append(deps.classpath, dep.Srcs()...) deps.dexClasspath = append(deps.classpath, dep.Srcs()...) transitiveClasspathHeaderJars = append(transitiveClasspathHeaderJars, - android.NewDepSet(android.PREORDER, dep.Srcs(), nil)) + depset.New(depset.PREORDER, dep.Srcs(), nil)) case staticLibTag: checkProducesJars(ctx, dep) deps.classpath = append(deps.classpath, dep.Srcs()...) deps.staticJars = append(deps.staticJars, dep.Srcs()...) deps.staticHeaderJars = append(deps.staticHeaderJars, dep.Srcs()...) - depHeaderJars := android.NewDepSet(android.PREORDER, dep.Srcs(), nil) + depHeaderJars := depset.New(depset.PREORDER, dep.Srcs(), nil) transitiveClasspathHeaderJars = append(transitiveClasspathHeaderJars, depHeaderJars) transitiveStaticJarsHeaderLibs = append(transitiveStaticJarsHeaderLibs, depHeaderJars) transitiveStaticJarsImplementationLibs = append(transitiveStaticJarsImplementationLibs, depHeaderJars) @@ -2538,10 +2518,8 @@ func (j *Module) collectDeps(ctx android.ModuleContext) deps { // then add its libs to the bootclasspath. if sm, ok := android.OtherModuleProvider(ctx, module, SystemModulesProvider); ok { deps.bootClasspath = append(deps.bootClasspath, sm.HeaderJars...) - if sm.TransitiveStaticLibsHeaderJars != nil { - transitiveBootClasspathHeaderJars = append(transitiveBootClasspathHeaderJars, - sm.TransitiveStaticLibsHeaderJars) - } + transitiveBootClasspathHeaderJars = append(transitiveBootClasspathHeaderJars, + sm.TransitiveStaticLibsHeaderJars) } else { ctx.PropertyErrorf("boot classpath dependency %q does not provide SystemModulesProvider", ctx.OtherModuleName(module)) @@ -2577,11 +2555,11 @@ func (j *Module) collectDeps(ctx android.ModuleContext) deps { deps.transitiveStaticLibsResourceJars = transitiveStaticJarsResourceLibs if ctx.Config().UseTransitiveJarsInClasspath() { - depSet := android.NewDepSet(android.PREORDER, nil, transitiveClasspathHeaderJars) + depSet := depset.New(depset.PREORDER, nil, transitiveClasspathHeaderJars) deps.classpath = depSet.ToList() - depSet = android.NewDepSet(android.PREORDER, nil, transitiveBootClasspathHeaderJars) + depSet = depset.New(depset.PREORDER, nil, transitiveBootClasspathHeaderJars) deps.bootClasspath = depSet.ToList() - depSet = android.NewDepSet(android.PREORDER, nil, transitiveJava9ClasspathHeaderJars) + depSet = depset.New(depset.PREORDER, nil, transitiveJava9ClasspathHeaderJars) deps.java9Classpath = depSet.ToList() } |