aboutsummaryrefslogtreecommitdiffstats
path: root/cc/cc.go
diff options
context:
space:
mode:
authorColin Cross <ccross@android.com>2016-12-13 17:06:13 -0800
committerColin Cross <ccross@android.com>2016-12-13 17:32:29 -0800
commit37047f1c7e6062b1f51fefcb1539225dddf742d0 (patch)
tree1e9148d41f16e11b03c272f3c80217c81f56ff59 /cc/cc.go
parent5950f3827c37b073377c84fa407982bc2f47856c (diff)
downloadbuild_soong-37047f1c7e6062b1f51fefcb1539225dddf742d0.tar.gz
build_soong-37047f1c7e6062b1f51fefcb1539225dddf742d0.tar.bz2
build_soong-37047f1c7e6062b1f51fefcb1539225dddf742d0.zip
Pass DepsContext to dependency methods
Pass a DepsContext that embeds android.BottomUpMutatorContext instead of android.BaseContext so that dependency methods can directly add dependencies. Test: m -j Change-Id: Id4c157975d3d6f03efd99785d217bef486a76139
Diffstat (limited to 'cc/cc.go')
-rw-r--r--cc/cc.go22
1 files changed, 16 insertions, 6 deletions
diff --git a/cc/cc.go b/cc/cc.go
index 3fc694fe..74d3d3da 100644
--- a/cc/cc.go
+++ b/cc/cc.go
@@ -171,16 +171,21 @@ type BaseModuleContext interface {
ModuleContextIntf
}
+type DepsContext interface {
+ android.BottomUpMutatorContext
+ ModuleContextIntf
+}
+
type feature interface {
begin(ctx BaseModuleContext)
- deps(ctx BaseModuleContext, deps Deps) Deps
+ deps(ctx DepsContext, deps Deps) Deps
flags(ctx ModuleContext, flags Flags) Flags
props() []interface{}
}
type compiler interface {
compilerInit(ctx BaseModuleContext)
- compilerDeps(ctx BaseModuleContext, deps Deps) Deps
+ compilerDeps(ctx DepsContext, deps Deps) Deps
compilerFlags(ctx ModuleContext, flags Flags) Flags
compilerProps() []interface{}
@@ -191,7 +196,7 @@ type compiler interface {
type linker interface {
linkerInit(ctx BaseModuleContext)
- linkerDeps(ctx BaseModuleContext, deps Deps) Deps
+ linkerDeps(ctx DepsContext, deps Deps) Deps
linkerFlags(ctx ModuleContext, flags Flags) Flags
linkerProps() []interface{}
@@ -307,6 +312,11 @@ type baseModuleContext struct {
moduleContextImpl
}
+type depsContext struct {
+ android.BottomUpMutatorContext
+ moduleContextImpl
+}
+
type moduleContext struct {
android.ModuleContext
moduleContextImpl
@@ -534,7 +544,7 @@ func (c *Module) begin(ctx BaseModuleContext) {
}
}
-func (c *Module) deps(ctx BaseModuleContext) Deps {
+func (c *Module) deps(ctx DepsContext) Deps {
deps := Deps{}
if c.compiler != nil {
@@ -604,8 +614,8 @@ func (c *Module) DepsMutator(actx android.BottomUpMutatorContext) {
return
}
- ctx := &baseModuleContext{
- BaseContext: actx,
+ ctx := &depsContext{
+ BottomUpMutatorContext: actx,
moduleContextImpl: moduleContextImpl{
mod: c,
},