Teach godepfile to generate deps file for test targets
Test targets should include the TestGoFiles and XTestGoFiles fields from
the package description in their deps.
Change-Id: I6ecb9b730f72e489f2bc31d658939d7835a50748
diff --git a/go/src/godepfile/godepfile.go b/go/src/godepfile/godepfile.go
index b90550d..4997bbf 100644
--- a/go/src/godepfile/godepfile.go
+++ b/go/src/godepfile/godepfile.go
@@ -32,11 +32,13 @@
var (
ctx = build.Default
output string
+ test bool
)
func init() {
flag.Var((*stringsFlag)(&ctx.BuildTags), "tags", "build tags")
flag.StringVar(&output, "o", "", "name of the resulting executable")
+ flag.BoolVar(&test, "test", false, "whether this is a test target")
flag.Usage = func() {
fmt.Fprintf(os.Stderr, "usage: godepfile [packages]\n")
@@ -96,6 +98,11 @@
files = appendAndPrefix(files, srcdir, pkg.SwigFiles)
files = appendAndPrefix(files, srcdir, pkg.SwigCXXFiles)
+ if test {
+ files = appendAndPrefix(files, srcdir, pkg.TestGoFiles)
+ files = appendAndPrefix(files, srcdir, pkg.XTestGoFiles)
+ }
+
mu.Lock()
for _, file := range files {
deps[file] = true