Make defaults TopDownMutator parallel am: 76f2f97c51

am: bb3d66c1fa

Change-Id: I4933e3348cbdfb7bd720139ee972d0c269d4d509
This commit is contained in:
Colin Cross
2016-08-12 02:52:04 +00:00
committed by android-build-merger
3 changed files with 18 additions and 16 deletions

View File

@@ -26,7 +26,7 @@ import (
func init() { func init() {
RegisterBottomUpMutator("defaults_deps", defaultsDepsMutator).Parallel() RegisterBottomUpMutator("defaults_deps", defaultsDepsMutator).Parallel()
RegisterTopDownMutator("defaults", defaultsMutator) RegisterTopDownMutator("defaults", defaultsMutator).Parallel()
RegisterBottomUpMutator("arch", ArchMutator).Parallel() RegisterBottomUpMutator("arch", ArchMutator).Parallel()
} }

View File

@@ -44,7 +44,7 @@ type androidBottomUpMutatorContext struct {
androidBaseContextImpl androidBaseContextImpl
} }
func RegisterBottomUpMutator(name string, mutator AndroidBottomUpMutator) soong.BottomUpMutatorHandle { func RegisterBottomUpMutator(name string, mutator AndroidBottomUpMutator) soong.MutatorHandle {
return soong.RegisterBottomUpMutator(name, func(ctx blueprint.BottomUpMutatorContext) { return soong.RegisterBottomUpMutator(name, func(ctx blueprint.BottomUpMutatorContext) {
if a, ok := ctx.Module().(Module); ok { if a, ok := ctx.Module().(Module); ok {
actx := &androidBottomUpMutatorContext{ actx := &androidBottomUpMutatorContext{
@@ -56,8 +56,8 @@ func RegisterBottomUpMutator(name string, mutator AndroidBottomUpMutator) soong.
}) })
} }
func RegisterTopDownMutator(name string, mutator AndroidTopDownMutator) { func RegisterTopDownMutator(name string, mutator AndroidTopDownMutator) soong.MutatorHandle {
soong.RegisterTopDownMutator(name, func(ctx blueprint.TopDownMutatorContext) { return soong.RegisterTopDownMutator(name, func(ctx blueprint.TopDownMutatorContext) {
if a, ok := ctx.Module().(Module); ok { if a, ok := ctx.Module().(Module); ok {
actx := &androidTopDownMutatorContext{ actx := &androidTopDownMutatorContext{
TopDownMutatorContext: ctx, TopDownMutatorContext: ctx,

View File

@@ -47,21 +47,23 @@ func RegisterSingletonType(name string, factory blueprint.SingletonFactory) {
singletons = append(singletons, singleton{name, factory}) singletons = append(singletons, singleton{name, factory})
} }
func RegisterBottomUpMutator(name string, m blueprint.BottomUpMutator) BottomUpMutatorHandle { func RegisterBottomUpMutator(name string, m blueprint.BottomUpMutator) MutatorHandle {
mutator := &mutator{name: name, bottomUpMutator: m} mutator := &mutator{name: name, bottomUpMutator: m}
mutators = append(mutators, mutator) mutators = append(mutators, mutator)
return mutator return mutator
} }
func RegisterTopDownMutator(name string, m blueprint.TopDownMutator) { func RegisterTopDownMutator(name string, m blueprint.TopDownMutator) MutatorHandle {
mutators = append(mutators, &mutator{name: name, topDownMutator: m}) mutator := &mutator{name: name, topDownMutator: m}
mutators = append(mutators, mutator)
return mutator
} }
type BottomUpMutatorHandle interface { type MutatorHandle interface {
Parallel() BottomUpMutatorHandle Parallel() MutatorHandle
} }
func (mutator *mutator) Parallel() BottomUpMutatorHandle { func (mutator *mutator) Parallel() MutatorHandle {
mutator.parallel = true mutator.parallel = true
return mutator return mutator
} }
@@ -78,14 +80,14 @@ func NewContext() *blueprint.Context {
} }
for _, t := range mutators { for _, t := range mutators {
var handle blueprint.MutatorHandle
if t.bottomUpMutator != nil { if t.bottomUpMutator != nil {
handle := ctx.RegisterBottomUpMutator(t.name, t.bottomUpMutator) handle = ctx.RegisterBottomUpMutator(t.name, t.bottomUpMutator)
if t.parallel { } else if t.topDownMutator != nil {
handle.Parallel() handle = ctx.RegisterTopDownMutator(t.name, t.topDownMutator)
}
} }
if t.topDownMutator != nil { if t.parallel {
ctx.RegisterTopDownMutator(t.name, t.topDownMutator) handle.Parallel()
} }
} }