summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorShenghou Ma <minux.ma@gmail.com>2012-03-16 12:05:09 -0400
committerShenghou Ma <minux.ma@gmail.com>2012-03-16 12:05:09 -0400
commitffa8d341d0eb966056fe42345838c16c8bd892ba (patch)
treeecb2ba77597ba921f98f8d23f34fedd3b1aa8295 /src
parentbf85735000d1671dda7b3b806717011f501da2dd (diff)
downloadgo-ffa8d341d0eb966056fe42345838c16c8bd892ba.tar.gz
cmd/go: add -fno-common by default on Darwin
Fixes part of issue 3253. We still need to support scattered relocations though. R=golang-dev, bsiegert, rsc, iant CC=golang-dev http://codereview.appspot.com/5822050 Committer: Russ Cox <rsc@golang.org>
Diffstat (limited to 'src')
-rw-r--r--src/cmd/go/build.go8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/cmd/go/build.go b/src/cmd/go/build.go
index 3246b02f3..67b682ecb 100644
--- a/src/cmd/go/build.go
+++ b/src/cmd/go/build.go
@@ -1403,6 +1403,14 @@ func (b *builder) gccCmd(objdir string) []string {
a = append(a, "-pthread")
}
}
+
+ // On OS X, some of the compilers behave as if -fno-common
+ // is always set, and the Mach-O linker in 6l/8l assumes this.
+ // See http://golang.org/issue/3253.
+ if goos == "darwin" {
+ a = append(a, "-fno-common")
+ }
+
return a
}