From 26d0b00536c3d2808f195a095858a3f25354177d Mon Sep 17 00:00:00 2001 From: Hyang-Ah Hana Kim Date: Fri, 16 Oct 2015 14:19:13 -0400 Subject: [PATCH] cmd/go: enable android/amd64 build. For golang/go#10743 Change-Id: Iec047821147a0e28edebf875fefe25993785702b Reviewed-on: https://go-review.googlesource.com/15994 Reviewed-by: David Crawshaw --- misc/cgo/testcshared/test.bash | 2 +- src/cmd/go/build.go | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/misc/cgo/testcshared/test.bash b/misc/cgo/testcshared/test.bash index 9b50522046..1b9f919d00 100755 --- a/misc/cgo/testcshared/test.bash +++ b/misc/cgo/testcshared/test.bash @@ -81,7 +81,7 @@ GOPATH=$(pwd) go install -buildmode=c-shared $suffix libgo GOPATH=$(pwd) go build -buildmode=c-shared $suffix -o libgo.$libext src/libgo/libgo.go binpush libgo.$libext -if [ "$goos" == "linux" ]; then +if [ "$goos" == "linux" ] || [ "$goos" == "android" ] ; then if readelf -d libgo.$libext | grep TEXTREL >/dev/null; then echo "libgo.$libext has TEXTREL set" exit 1 diff --git a/src/cmd/go/build.go b/src/cmd/go/build.go index 08d84adf62..285627288a 100644 --- a/src/cmd/go/build.go +++ b/src/cmd/go/build.go @@ -350,7 +350,8 @@ func buildModeInit() { codegenArg = "-fPIC" } else { switch platform { - case "linux/amd64", "linux/arm", "android/arm": + case "linux/amd64", "linux/arm", + "android/amd64", "android/arm": codegenArg = "-shared" case "darwin/amd64": default: @@ -3075,7 +3076,7 @@ func (b *builder) cgo(p *Package, cgoExe, obj string, pcCFLAGS, pcLDFLAGS, cgofi linkobj = append(linkobj, p.SysoFiles...) dynobj := obj + "_cgo_.o" - pie := goarch == "arm" && (goos == "linux" || goos == "android") + pie := (goarch == "arm" && goos == "linux") || goos == "android" if pie { // we need to use -pie for Linux/ARM to get accurate imported sym cgoLDFLAGS = append(cgoLDFLAGS, "-pie") } -- 2.48.1