From: Hyang-Ah Hana Kim Date: Fri, 6 Nov 2015 22:28:58 +0000 (-0500) Subject: cmd: allow buildmode=c-shared for android/386 X-Git-Tag: go1.6beta1~355 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=bda885511d804a8a588df97080c2ea8207d637e3;p=gostls13.git cmd: allow buildmode=c-shared for android/386 Update golang/go#9327. Change-Id: Iab7dad31cf6b9f9347c3f34faebb67ecb38b17fc Reviewed-on: https://go-review.googlesource.com/16701 Run-TryBot: Hyang-Ah Hana Kim TryBot-Result: Gobot Gobot Reviewed-by: David Crawshaw --- diff --git a/src/cmd/dist/test.go b/src/cmd/dist/test.go index e0bd3cdcc2..2e15247d6e 100644 --- a/src/cmd/dist/test.go +++ b/src/cmd/dist/test.go @@ -616,7 +616,9 @@ func (t *tester) supportedBuildmode(mode string) bool { return false case "c-shared": switch pair { - case "linux-386", "linux-amd64", "darwin-amd64", "android-arm", "linux-arm", "linux-arm64": + case "linux-386", "linux-amd64", "linux-arm", "linux-arm64", + "darwin-amd64", + "android-arm", "android-386": return true } return false diff --git a/src/cmd/go/build.go b/src/cmd/go/build.go index 11ad561c46..57ca28dd08 100644 --- a/src/cmd/go/build.go +++ b/src/cmd/go/build.go @@ -351,7 +351,7 @@ func buildModeInit() { } else { switch platform { case "linux/amd64", "linux/arm", "linux/arm64", "linux/386", - "android/amd64", "android/arm": + "android/amd64", "android/arm", "android/386": codegenArg = "-shared" case "darwin/amd64": default: diff --git a/src/cmd/link/internal/ld/lib.go b/src/cmd/link/internal/ld/lib.go index 40c784851a..acbb2ac883 100644 --- a/src/cmd/link/internal/ld/lib.go +++ b/src/cmd/link/internal/ld/lib.go @@ -325,7 +325,14 @@ func (mode *BuildMode) Set(s string) error { } *mode = BuildmodeCShared case "shared": - if goos != "linux" || (goarch != "386" && goarch != "amd64" && goarch != "arm" && goarch != "arm64" && goarch != "ppc64le") { + switch goos { + case "linux": + switch goarch { + case "386", "amd64", "arm", "arm64", "ppc64le": + default: + return badmode() + } + default: return badmode() } *mode = BuildmodeShared