nixpkgs/pkgs/development/compilers/go/remove-tools-1.7.patch

36 lines
1.1 KiB
Diff
Raw Normal View History

2016-08-17 19:08:46 +01:00
diff --git a/src/go/build/build.go b/src/go/build/build.go
index 496fe11..8c81dbd 100644
--- a/src/go/build/build.go
+++ b/src/go/build/build.go
@@ -1388,7 +1388,7 @@ func init() {
}
// ToolDir is the directory containing build tools.
-var ToolDir = filepath.Join(runtime.GOROOT(), "pkg/tool/"+runtime.GOOS+"_"+runtime.GOARCH)
+var ToolDir = runtime.GOTOOLDIR()
// IsLocalImport reports whether the import path is
// a local import path, like ".", "..", "./foo", or "../foo".
diff --git a/src/runtime/extern.go b/src/runtime/extern.go
index d346362..fb22b6e 100644
--- a/src/runtime/extern.go
+++ b/src/runtime/extern.go
@@ -194,6 +194,17 @@ func GOROOT() string {
return defaultGoroot
}
+// GOTOOLDIR returns the root of the Go tree.
+// It uses the GOTOOLDIR environment variable, if set,
+// or else the root used during the Go build.
+func GOTOOLDIR() string {
+ s := gogetenv("GOTOOLDIR")
+ if s != "" {
+ return s
+ }
+ return GOROOT() + "/pkg/tool/" + GOOS + "_" + GOARCH
+}
+
// Version returns the Go tree's version string.
// It is either the commit hash and date at the time of the build or,
// when possible, a release tag like "go1.3".