Fix the flaky build breakage for droiddoc target.

ExpandSourcesSubDir was calling SourceFileProducer.Srcs(), and then
doing:
moduleSrcs = append(moduleSrcs[:j], moduleSrcs[j+1:]...)
This modifies the backing store of the slice, which may affect the
original data stored in the SourceFileProducer.  Make all Srcs
implementations return slice that points to a copy of the backing
array.

Test: m out/target/common/obj/PACKAGING/checkpublicapi-current-timestamp
Bug: b/76179848 b/76397326
Change-Id: I2432ce196984814daafc5aa9a2746e81de74494c
diff --git a/genrule/genrule.go b/genrule/genrule.go
index 0cd110c..42be88f 100644
--- a/genrule/genrule.go
+++ b/genrule/genrule.go
@@ -125,7 +125,7 @@
 }
 
 func (g *Module) Srcs() android.Paths {
-	return g.outputFiles
+	return append(android.Paths{}, g.outputFiles...)
 }
 
 func (g *Module) GeneratedHeaderDirs() android.Paths {