Only store what's used in SharedLibraryInfo
There was a reference to the static library provider, but only the transitive static deps were used, so only store that part. Other members were stored but unused anywhere. Test: go test soong tests Test: m nothing Change-Id: I12a6b94806c052c3f0df3cab0a10f17042af1c38
This commit is contained in:
parent
5831f70dab
commit
ef6dfea679
8 changed files with 23 additions and 31 deletions
4
cc/cc.go
4
cc/cc.go
|
@ -2918,8 +2918,8 @@ func orderStaticModuleDeps(staticDeps []StaticLibraryInfo, sharedDeps []SharedLi
|
|||
transitiveStaticLibsBuilder.Transitive(staticDep.TransitiveStaticLibrariesForOrdering)
|
||||
}
|
||||
for _, sharedDep := range sharedDeps {
|
||||
if sharedDep.StaticAnalogue != nil {
|
||||
transitiveStaticLibsBuilder.Transitive(sharedDep.StaticAnalogue.TransitiveStaticLibrariesForOrdering)
|
||||
if sharedDep.TransitiveStaticLibrariesForOrdering != nil {
|
||||
transitiveStaticLibsBuilder.Transitive(sharedDep.TransitiveStaticLibrariesForOrdering)
|
||||
}
|
||||
}
|
||||
transitiveStaticLibs := transitiveStaticLibsBuilder.Build()
|
||||
|
|
|
@ -1352,19 +1352,17 @@ func (library *libraryDecorator) linkShared(ctx ModuleContext,
|
|||
library.coverageOutputFile = transformCoverageFilesToZip(ctx, objs, library.getLibName(ctx))
|
||||
library.linkSAbiDumpFiles(ctx, objs, fileName, unstrippedOutputFile)
|
||||
|
||||
var staticAnalogue *StaticLibraryInfo
|
||||
var transitiveStaticLibrariesForOrdering *android.DepSet
|
||||
if static := ctx.GetDirectDepsWithTag(staticVariantTag); len(static) > 0 {
|
||||
s := ctx.OtherModuleProvider(static[0], StaticLibraryInfoProvider).(StaticLibraryInfo)
|
||||
staticAnalogue = &s
|
||||
transitiveStaticLibrariesForOrdering = s.TransitiveStaticLibrariesForOrdering
|
||||
}
|
||||
|
||||
ctx.SetProvider(SharedLibraryInfoProvider, SharedLibraryInfo{
|
||||
TableOfContents: android.OptionalPathForPath(tocFile),
|
||||
SharedLibrary: unstrippedOutputFile,
|
||||
UnstrippedSharedLibrary: library.unstrippedOutputFile,
|
||||
CoverageSharedLibrary: library.coverageOutputFile,
|
||||
StaticAnalogue: staticAnalogue,
|
||||
Target: ctx.Target(),
|
||||
TableOfContents: android.OptionalPathForPath(tocFile),
|
||||
SharedLibrary: unstrippedOutputFile,
|
||||
TransitiveStaticLibrariesForOrdering: transitiveStaticLibrariesForOrdering,
|
||||
Target: ctx.Target(),
|
||||
})
|
||||
|
||||
stubs := ctx.GetDirectDepsWithTag(stubImplDepTag)
|
||||
|
|
|
@ -305,14 +305,13 @@ func HeaderDepTag() blueprint.DependencyTag {
|
|||
|
||||
// SharedLibraryInfo is a provider to propagate information about a shared C++ library.
|
||||
type SharedLibraryInfo struct {
|
||||
SharedLibrary android.Path
|
||||
UnstrippedSharedLibrary android.Path
|
||||
Target android.Target
|
||||
SharedLibrary android.Path
|
||||
Target android.Target
|
||||
|
||||
TableOfContents android.OptionalPath
|
||||
CoverageSharedLibrary android.OptionalPath
|
||||
TableOfContents android.OptionalPath
|
||||
|
||||
StaticAnalogue *StaticLibraryInfo
|
||||
// should be obtained from static analogue
|
||||
TransitiveStaticLibrariesForOrdering *android.DepSet
|
||||
}
|
||||
|
||||
var SharedLibraryInfoProvider = blueprint.NewProvider(SharedLibraryInfo{})
|
||||
|
|
|
@ -186,9 +186,8 @@ func (ndk *ndkPrebuiltStlLinker) link(ctx ModuleContext, flags Flags,
|
|||
})
|
||||
} else {
|
||||
ctx.SetProvider(SharedLibraryInfoProvider, SharedLibraryInfo{
|
||||
SharedLibrary: lib,
|
||||
UnstrippedSharedLibrary: lib,
|
||||
Target: ctx.Target(),
|
||||
SharedLibrary: lib,
|
||||
Target: ctx.Target(),
|
||||
})
|
||||
}
|
||||
|
||||
|
|
|
@ -183,9 +183,8 @@ func (p *prebuiltLibraryLinker) link(ctx ModuleContext,
|
|||
})
|
||||
|
||||
ctx.SetProvider(SharedLibraryInfoProvider, SharedLibraryInfo{
|
||||
SharedLibrary: outputFile,
|
||||
UnstrippedSharedLibrary: p.unstrippedOutputFile,
|
||||
Target: ctx.Target(),
|
||||
SharedLibrary: outputFile,
|
||||
Target: ctx.Target(),
|
||||
|
||||
TableOfContents: p.tocFile,
|
||||
})
|
||||
|
|
|
@ -642,9 +642,8 @@ func (p *snapshotLibraryDecorator) link(ctx ModuleContext, flags Flags, deps Pat
|
|||
transformSharedObjectToToc(ctx, in, tocFile, builderFlags)
|
||||
|
||||
ctx.SetProvider(SharedLibraryInfoProvider, SharedLibraryInfo{
|
||||
SharedLibrary: in,
|
||||
UnstrippedSharedLibrary: p.unstrippedOutputFile,
|
||||
Target: ctx.Target(),
|
||||
SharedLibrary: in,
|
||||
Target: ctx.Target(),
|
||||
|
||||
TableOfContents: p.tocFile,
|
||||
})
|
||||
|
|
|
@ -168,9 +168,8 @@ func (p *vndkPrebuiltLibraryDecorator) link(ctx ModuleContext,
|
|||
}
|
||||
|
||||
ctx.SetProvider(SharedLibraryInfoProvider, SharedLibraryInfo{
|
||||
SharedLibrary: in,
|
||||
UnstrippedSharedLibrary: p.unstrippedOutputFile,
|
||||
Target: ctx.Target(),
|
||||
SharedLibrary: in,
|
||||
Target: ctx.Target(),
|
||||
|
||||
TableOfContents: p.tocFile,
|
||||
})
|
||||
|
|
|
@ -503,9 +503,8 @@ func (library *libraryDecorator) compile(ctx ModuleContext, flags Flags, deps Pa
|
|||
|
||||
if library.shared() {
|
||||
ctx.SetProvider(cc.SharedLibraryInfoProvider, cc.SharedLibraryInfo{
|
||||
SharedLibrary: outputFile,
|
||||
UnstrippedSharedLibrary: outputFile,
|
||||
Target: ctx.Target(),
|
||||
SharedLibrary: outputFile,
|
||||
Target: ctx.Target(),
|
||||
})
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue