From 6f3f2d0ab825ee1ab77d62766828b6c191f92622 Mon Sep 17 00:00:00 2001 From: Shenghou Ma Date: Tue, 29 Apr 2014 14:43:10 -0400 Subject: [PATCH] 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://golang.org/cl/99870043 --- src/run.bash | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/run.bash b/src/run.bash index 0f3e4e0f36..876b5d757d 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 ;; -- 2.50.0