summaryrefslogtreecommitdiff
path: root/src/run.bash
diff options
context:
space:
mode:
authorShenghou Ma <minux.ma@gmail.com>2014-04-29 14:43:10 -0400
committerShenghou Ma <minux.ma@gmail.com>2014-04-29 14:43:10 -0400
commitae9fba6a702795c7324e0a2d493493960647ac1f (patch)
tree75838ae93870df2148ac2c531c3076f6f856af4f /src/run.bash
parentf63c6b8de183b51cb4bfd0f7481e60360df62f2e (diff)
downloadgo-ae9fba6a702795c7324e0a2d493493960647ac1f.tar.gz
run.bash: skip -static cgo test if -static linking isn't possible.
Some system doesn't have libc.a available. While we're at here, also export GOROOT in run.bash, so that one doesn't need to set GOROOT to run run.bash. LGTM=iant R=iant CC=golang-codereviews https://codereview.appspot.com/99870043
Diffstat (limited to 'src/run.bash')
-rwxr-xr-xsrc/run.bash7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/run.bash b/src/run.bash
index 0f3e4e0f3..876b5d757 100755
--- a/src/run.bash
+++ b/src/run.bash
@@ -6,6 +6,7 @@
set -e
eval $(go env)
+export GOROOT # the api test requires GOROOT to be set.
unset CDPATH # in case user has it set
unset GOPATH # we disallow local import for non-local packages, if $GOROOT happens
@@ -140,7 +141,11 @@ dragonfly-386 | dragonfly-amd64 | freebsd-386 | freebsd-amd64 | freebsd-arm | li
# static linking on FreeBSD/ARM with clang. (cgo depends on
# -fPIC fundamentally.)
*)
- go test -ldflags '-linkmode=external -extldflags "-static -pthread"' ../testtls || exit 1
+ if ! $CC -xc -o /dev/null -static - 2>/dev/null <<<'int main() {}' ; then
+ echo "No support for static linking found (lacks libc.a?), skip cgo static linking test."
+ else
+ go test -ldflags '-linkmode=external -extldflags "-static -pthread"' ../testtls || exit 1
+ fi
;;
esac
;;