Building android_device will build all the partitions
Test: CI and unit tests.
Bug: 388341885
Change-Id: Ieb8f8b611b4770d589f095a1d0cc3db314edd103
diff --git a/filesystem/android_device.go b/filesystem/android_device.go
index 19e93ae..758c79e 100644
--- a/filesystem/android_device.go
+++ b/filesystem/android_device.go
@@ -86,6 +86,25 @@
func (a *androidDevice) GenerateAndroidBuildActions(ctx android.ModuleContext) {
a.buildTargetFilesZip(ctx)
+ var deps []android.Path
+ ctx.VisitDirectDepsWithTag(filesystemDepTag, func(m android.Module) {
+ imageOutput, ok := android.OtherModuleProvider(ctx, m, android.OutputFilesProvider)
+ if !ok {
+ ctx.ModuleErrorf("Partition module %s doesn't set OutputfilesProvider", m.Name())
+ }
+ if len(imageOutput.DefaultOutputFiles) != 1 {
+ ctx.ModuleErrorf("Partition module %s should provide exact 1 output file", m.Name())
+ }
+ deps = append(deps, imageOutput.DefaultOutputFiles[0])
+ })
+ out := android.PathForModuleOut(ctx, "out")
+ ctx.Build(pctx, android.BuildParams{
+ Rule: android.Touch,
+ Output: out,
+ Implicits: deps,
+ })
+ ctx.SetOutputFiles(android.Paths{out}, "")
+ ctx.CheckbuildFile(out)
}
func (a *androidDevice) buildTargetFilesZip(ctx android.ModuleContext) {