Fix -host and -target phonies building both variants
The -install, -checkbuild, -outputs get deduped across all variants,
so when the -host / -target phonies depended on them they were
depending on all variants when they should've only depended on the
host/target variants. Instead of depending on those phonies, depend
on their dependencies for the current variant directly.
Fixes: 400503755
Test: atest CtsCompilationTestCases:android.compilation.cts.CompilationTest
Test: Ran all 4 of these commands, before they all had a successful path, now half of them show there's no path cross-variants:
aninja -t path junit-params-test-host out/host/linux-x86/framework/junit-params-test.jar
aninja -t path junit-params-test-host out/target/product/vsoc_x86_64/testcases/junit-params-test/x86_64/junit-params-test.jar
aninja -t path junit-params-test-target out/host/linux-x86/framework/junit-params-test.jar
aninja -t path junit-params-test-target out/target/product/vsoc_x86_64/testcases/junit-params-test/x86_64/junit-params-test.jar
Change-Id: Iffec01948d7287f7e000ff17a4f65f883f46a87c
diff --git a/android/module.go b/android/module.go
index 7786f13..14190f3 100644
--- a/android/module.go
+++ b/android/module.go
@@ -1669,9 +1669,10 @@
if len(ctx.installFiles) > 0 {
name := namespacePrefix + ctx.ModuleName() + "-install"
- ctx.Phony(name, ctx.installFiles.Paths()...)
+ installFiles := ctx.installFiles.Paths()
+ ctx.Phony(name, installFiles...)
info.InstallTarget = PathForPhony(ctx, name)
- deps = append(deps, info.InstallTarget)
+ deps = append(deps, installFiles...)
}
// A module's -checkbuild phony targets should
@@ -1681,13 +1682,13 @@
if (!ctx.Config().KatiEnabled() || !shouldSkipAndroidMkProcessing(ctx, m)) && !ctx.uncheckedModule && ctx.checkbuildTarget != nil {
name := namespacePrefix + ctx.ModuleName() + "-checkbuild"
ctx.Phony(name, ctx.checkbuildTarget)
- deps = append(deps, PathForPhony(ctx, name))
+ deps = append(deps, ctx.checkbuildTarget)
}
if outputFiles, err := outputFilesForModule(ctx, ctx.Module(), ""); err == nil && len(outputFiles) > 0 {
name := namespacePrefix + ctx.ModuleName() + "-outputs"
ctx.Phony(name, outputFiles...)
- deps = append(deps, PathForPhony(ctx, name))
+ deps = append(deps, outputFiles...)
}
if len(deps) > 0 {