]> Cypherpunks repositories - gostls13.git/commitdiff
cmd/go: don't fail on invalid GOOS/GOARCH pair when using gccgo
authorBrad Fitzpatrick <bradfitz@golang.org>
Tue, 12 Jul 2016 17:19:16 +0000 (11:19 -0600)
committerBrad Fitzpatrick <bradfitz@golang.org>
Tue, 12 Jul 2016 19:18:08 +0000 (19:18 +0000)
Fixes #12272

Change-Id: I0306ce0ef4a87df2158df3b7d4d8d93a1cb6dabc
Reviewed-on: https://go-review.googlesource.com/24864
Reviewed-by: Ian Lance Taylor <iant@golang.org>
Run-TryBot: Ian Lance Taylor <iant@golang.org>

src/cmd/go/build.go

index 11a4eab0933c5d0823e985e795a865f690e06033..3c0b994ef24041935e97485b3a9169f553ed7dee 100644 (file)
@@ -673,11 +673,6 @@ func init() {
        goarch = buildContext.GOARCH
        goos = buildContext.GOOS
 
-       if _, ok := osArchSupportsCgo[goos+"/"+goarch]; !ok {
-               fmt.Fprintf(os.Stderr, "cmd/go: unsupported GOOS/GOARCH pair %s/%s\n", goos, goarch)
-               os.Exit(2)
-       }
-
        if goos == "windows" {
                exeSuffix = ".exe"
        }
@@ -1226,6 +1221,11 @@ func allArchiveActions(root *action) []*action {
 
 // do runs the action graph rooted at root.
 func (b *builder) do(root *action) {
+       if _, ok := osArchSupportsCgo[goos+"/"+goarch]; !ok && buildContext.Compiler == "gc" {
+               fmt.Fprintf(os.Stderr, "cmd/go: unsupported GOOS/GOARCH pair %s/%s\n", goos, goarch)
+               os.Exit(2)
+       }
+
        // Build list of all actions, assigning depth-first post-order priority.
        // The original implementation here was a true queue
        // (using a channel) but it had the effect of getting