]> Cypherpunks repositories - gostls13.git/commitdiff
run.bash: set GOPATH to $GOROOT/nil before running tests
authorSean Christopherson <sean.j.christopherson@intel.com>
Wed, 22 Feb 2017 14:56:26 +0000 (06:56 -0800)
committerIan Lance Taylor <iant@golang.org>
Fri, 24 Feb 2017 18:18:30 +0000 (18:18 +0000)
Set $GOPATH to a semantically valid, non-empty string that cannot
conflict with $GOROOT to avoid false test failures that occur when
$GOROOT resides under $GOPATH.  Unsetting GOPATH is no longer viable
as Go now defines a default $GOPATH that may conflict with $GOROOT.

Fixes #19237

Change-Id: I376a2ad3b18e9c4098211b988dde7e76bc4725d2
Reviewed-on: https://go-review.googlesource.com/37396
Reviewed-by: Ian Lance Taylor <iant@golang.org>
Run-TryBot: Ian Lance Taylor <iant@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>

src/run.bash

index 293b775efa5e77bac473df02ea5c3dd4eb08f9a2..c0029c51f4570c723ed5095ef5edac46f8d0b316 100755 (executable)
@@ -8,9 +8,17 @@ set -e
 eval $(go env)
 export GOROOT   # the api test requires GOROOT to be set.
 
+# We disallow local import for non-local packages, if $GOROOT happens
+# to be under $GOPATH, then some tests below will fail.  $GOPATH needs
+# to be set to a non-empty string, else Go will set a default value
+# that may also conflict with $GOROOT.  The $GOPATH value doesn't need
+# to point to an actual directory, it just needs to pass the semantic
+# checks performed by Go.  Use $GOROOT to define $GOPATH so that we
+# don't blunder into a user-defined symbolic link.
+GOPATH=$GOROOT/nonexistentpath
+export GOPATH
+
 unset CDPATH   # in case user has it set
-unset GOPATH    # we disallow local import for non-local packages, if $GOROOT happens
-                # to be under $GOPATH, then some tests below will fail
 unset GOBIN     # Issue 14340
 
 export GOHOSTOS