cmd/go: link cgo into tests on darwin/arm
We currently have only one supported darwin/arm device, a locked iOS
machine. It requires cgo binaries.
Change-Id: If36a152e6a743e4a58ea3470e62cccb742630a5d
Reviewed-on: https://go-review.googlesource.com/5443
Reviewed-by: Russ Cox <rsc@golang.org>
diff --git a/src/cmd/go/test.go b/src/cmd/go/test.go
index a8110f3..c44a219 100644
--- a/src/cmd/go/test.go
+++ b/src/cmd/go/test.go
@@ -772,6 +772,10 @@
recompileForTest(pmain, p, ptest, testDir)
}
+ if buildContext.GOOS == "darwin" && buildContext.GOARCH == "arm" {
+ t.NeedCgo = true
+ }
+
for _, cp := range pmain.imports {
if len(cp.coverVars) > 0 {
t.Cover = append(t.Cover, coverInfo{cp, cp.coverVars})
@@ -1207,6 +1211,7 @@
NeedTest bool
ImportXtest bool
NeedXtest bool
+ NeedCgo bool
Cover []coverInfo
}
@@ -1310,6 +1315,10 @@
{{range $i, $p := .Cover}}
_cover{{$i}} {{$p.Package.ImportPath | printf "%q"}}
{{end}}
+
+{{if .NeedCgo}}
+ _ "runtime/cgo"
+{{end}}
)
var tests = []testing.InternalTest{