diff options
Diffstat (limited to 'phony/phony.go')
| -rw-r--r-- | phony/phony.go | 25 |
1 files changed, 21 insertions, 4 deletions
diff --git a/phony/phony.go b/phony/phony.go index ed6a2fef1..305a434f4 100644 --- a/phony/phony.go +++ b/phony/phony.go @@ -28,7 +28,9 @@ func init() { type phony struct { android.ModuleBase - requiredModuleNames []string + requiredModuleNames []string + hostRequiredModuleNames []string + targetRequiredModuleNames []string } func PhonyFactory() android.Module { @@ -40,8 +42,12 @@ func PhonyFactory() android.Module { func (p *phony) GenerateAndroidBuildActions(ctx android.ModuleContext) { p.requiredModuleNames = ctx.RequiredModuleNames() - if len(p.requiredModuleNames) == 0 { - ctx.PropertyErrorf("required", "phony must not have empty required dependencies in order to be useful(and therefore permitted).") + p.hostRequiredModuleNames = ctx.HostRequiredModuleNames() + p.targetRequiredModuleNames = ctx.TargetRequiredModuleNames() + if len(p.requiredModuleNames) == 0 && + len(p.hostRequiredModuleNames) == 0 && len(p.targetRequiredModuleNames) == 0 { + ctx.PropertyErrorf("required", "phony must not have empty required dependencies "+ + "in order to be useful(and therefore permitted).") } } @@ -54,7 +60,18 @@ func (p *phony) AndroidMk() android.AndroidMkData { if p.Host() { fmt.Fprintln(w, "LOCAL_IS_HOST_MODULE := true") } - fmt.Fprintln(w, "LOCAL_REQUIRED_MODULES := "+strings.Join(p.requiredModuleNames, " ")) + if len(p.requiredModuleNames) > 0 { + fmt.Fprintln(w, "LOCAL_REQUIRED_MODULES :=", + strings.Join(p.requiredModuleNames, " ")) + } + if len(p.hostRequiredModuleNames) > 0 { + fmt.Fprintln(w, "LOCAL_HOST_REQUIRED_MODULES :=", + strings.Join(p.hostRequiredModuleNames, " ")) + } + if len(p.targetRequiredModuleNames) > 0 { + fmt.Fprintln(w, "LOCAL_TARGET_REQUIRED_MODULES :=", + strings.Join(p.targetRequiredModuleNames, " ")) + } fmt.Fprintln(w, "include $(BUILD_PHONY_PACKAGE)") }, } |