Allow CopyDepsToZip() to work on WritablePath

Makes the method more generally usable as it can work with any
WritablePath not just OutputPath. Also, makes it independent of whether
PathForModuleOut() returns ModuleOutPath or OutputPath.

Bug: 179124768
Test: m nothing
Change-Id: I08e61a24722198aa92fa2f8a2d096b1a8bf9c5c2
diff --git a/android/packaging.go b/android/packaging.go
index da745ff..601e0b3 100644
--- a/android/packaging.go
+++ b/android/packaging.go
@@ -61,7 +61,7 @@
 	// returns zip entries in it. This is expected to be called in GenerateAndroidBuildActions,
 	// followed by a build rule that unzips it and creates the final output (img, zip, tar.gz,
 	// etc.) from the extracted files
-	CopyDepsToZip(ctx ModuleContext, zipOut OutputPath) []string
+	CopyDepsToZip(ctx ModuleContext, zipOut WritablePath) []string
 }
 
 // PackagingBase provides basic functionality for packaging dependencies. A module is expected to
@@ -152,7 +152,7 @@
 }
 
 // See PackageModule.CopyDepsToZip
-func (p *PackagingBase) CopyDepsToZip(ctx ModuleContext, zipOut OutputPath) (entries []string) {
+func (p *PackagingBase) CopyDepsToZip(ctx ModuleContext, zipOut WritablePath) (entries []string) {
 	m := make(map[string]PackagingSpec)
 	ctx.WalkDeps(func(child Module, parent Module) bool {
 		if !IsInstallDepNeeded(ctx.OtherModuleDependencyTag(child)) {
@@ -168,7 +168,7 @@
 
 	builder := NewRuleBuilder(pctx, ctx)
 
-	dir := PathForModuleOut(ctx, ".zip").OutputPath
+	dir := PathForModuleOut(ctx, ".zip")
 	builder.Command().Text("rm").Flag("-rf").Text(dir.String())
 	builder.Command().Text("mkdir").Flag("-p").Text(dir.String())
 
diff --git a/android/packaging_test.go b/android/packaging_test.go
index 7269bfb..3d6fa43 100644
--- a/android/packaging_test.go
+++ b/android/packaging_test.go
@@ -73,7 +73,7 @@
 }
 
 func (m *packageTestModule) GenerateAndroidBuildActions(ctx ModuleContext) {
-	zipFile := PathForModuleOut(ctx, "myzip.zip").OutputPath
+	zipFile := PathForModuleOut(ctx, "myzip.zip")
 	m.entries = m.CopyDepsToZip(ctx, zipFile)
 }