Remove bp2build deps mutator
Refactor bp2build to retrieve modules directly by name, instead of via DirectDeps. This functions properly as bp2build has no need for variant information of the blueprint graph. Test: USE_BAZEL_ANALYSIS=1 m fmtlib Change-Id: Ief4b67bc56f24929871af772f3a742f07085bf8c
This commit is contained in:
@@ -223,6 +223,8 @@ type BaseModuleContext interface {
|
||||
// the first DependencyTag.
|
||||
GetDirectDep(name string) (blueprint.Module, blueprint.DependencyTag)
|
||||
|
||||
ModuleFromName(name string) (blueprint.Module, bool)
|
||||
|
||||
// VisitDirectDepsBlueprint calls visit for each direct dependency. If there are multiple
|
||||
// direct dependencies on the same module visit will be called multiple times on that module
|
||||
// and OtherModuleDependencyTag will return a different tag for each.
|
||||
@@ -2032,8 +2034,13 @@ type baseModuleContext struct {
|
||||
tagPath []blueprint.DependencyTag
|
||||
|
||||
strictVisitDeps bool // If true, enforce that all dependencies are enabled
|
||||
|
||||
bazelConversionMode bool
|
||||
}
|
||||
|
||||
func (b *baseModuleContext) BazelConversionMode() bool {
|
||||
return b.bazelConversionMode
|
||||
}
|
||||
func (b *baseModuleContext) OtherModuleName(m blueprint.Module) string {
|
||||
return b.bp.OtherModuleName(m)
|
||||
}
|
||||
@@ -2373,6 +2380,18 @@ func (b *baseModuleContext) GetDirectDep(name string) (blueprint.Module, bluepri
|
||||
return b.getDirectDepFirstTag(name)
|
||||
}
|
||||
|
||||
func (b *baseModuleContext) ModuleFromName(name string) (blueprint.Module, bool) {
|
||||
if !b.BazelConversionMode() {
|
||||
panic("cannot call ModuleFromName if not in bazel conversion mode")
|
||||
}
|
||||
if len(name) > 1 && (name[0] == ':' || (name[0] == '/' && name[1] == '/')) {
|
||||
moduleName, _ := SrcIsModuleWithTag(name)
|
||||
return b.bp.ModuleFromName(moduleName)
|
||||
} else {
|
||||
return b.bp.ModuleFromName(name)
|
||||
}
|
||||
}
|
||||
|
||||
func (b *baseModuleContext) VisitDirectDepsBlueprint(visit func(blueprint.Module)) {
|
||||
b.bp.VisitDirectDeps(visit)
|
||||
}
|
||||
|
Reference in New Issue
Block a user