summaryrefslogtreecommitdiff
path: root/phony
diff options
context:
space:
mode:
author Inseob Kim <inseob@google.com> 2025-02-12 20:58:05 -0800
committer Gerrit Code Review <noreply-gerritcodereview@google.com> 2025-02-12 20:58:05 -0800
commit323344b4bfbd909d8de91d445864ddb54136b4fa (patch)
treea31f6d7458ce40a5882d9de31fa80d4e9cd7d354 /phony
parentbc6d85c930607a87d4ed0f88c22b584c88c0ca01 (diff)
Revert^4 "Allow phony modules to depend on outputs"
This reverts commit bc6d85c930607a87d4ed0f88c22b584c88c0ca01. Reason for revert: fixed breakage by ag/31734561 Change-Id: Iec228be57f737e56fe7317ed2a9b5b44fef86a4d
Diffstat (limited to 'phony')
-rw-r--r--phony/phony.go14
1 files changed, 14 insertions, 0 deletions
diff --git a/phony/phony.go b/phony/phony.go
index 807b95b32..4f61c4583 100644
--- a/phony/phony.go
+++ b/phony/phony.go
@@ -38,9 +38,11 @@ var PrepareForTestWithPhony = android.FixtureRegisterWithContext(registerPhonyMo
type phony struct {
android.ModuleBase
+
requiredModuleNames []string
hostRequiredModuleNames []string
targetRequiredModuleNames []string
+ outputDeps android.Paths
}
func PhonyFactory() android.Module {
@@ -54,6 +56,14 @@ func (p *phony) GenerateAndroidBuildActions(ctx android.ModuleContext) {
p.requiredModuleNames = ctx.RequiredModuleNames(ctx)
p.hostRequiredModuleNames = ctx.HostRequiredModuleNames()
p.targetRequiredModuleNames = ctx.TargetRequiredModuleNames()
+
+ ctx.VisitDirectDepsWithTag(android.RequiredDepTag, func(dep android.Module) {
+ if o, ok := android.OtherModuleProvider(ctx, dep, android.OutputFilesProvider); ok {
+ p.outputDeps = append(p.outputDeps, o.DefaultOutputFiles...)
+ }
+ })
+
+ ctx.Phony(p.Name(), p.outputDeps...)
}
func (p *phony) AndroidMk() android.AndroidMkData {
@@ -77,6 +87,10 @@ func (p *phony) AndroidMk() android.AndroidMkData {
fmt.Fprintln(w, "LOCAL_TARGET_REQUIRED_MODULES :=",
strings.Join(p.targetRequiredModuleNames, " "))
}
+ if len(p.outputDeps) > 0 {
+ fmt.Fprintln(w, "LOCAL_ADDITIONAL_DEPENDENCIES :=",
+ strings.Join(p.outputDeps.Strings(), " "))
+ }
// AconfigUpdateAndroidMkData may have added elements to Extra. Process them here.
for _, extra := range data.Extra {
extra(w, nil)