aboutsummaryrefslogtreecommitdiff
path: root/misc/android/go_android_exec.go
diff options
context:
space:
mode:
authorElias Naur <mail@eliasnaur.com>2019-03-01 01:03:20 +0100
committerElias Naur <mail@eliasnaur.com>2019-03-01 06:03:52 +0000
commitd24c3124cab290f5f7e1c75be4c6cbe6dd05a85c (patch)
tree71390915655df93d3fe64ee4b7d4ca8a5419bd77 /misc/android/go_android_exec.go
parent38642b9fced4ed79fafe31a96b2bb432474f2e36 (diff)
downloadgo-d24c3124cab290f5f7e1c75be4c6cbe6dd05a85c.tar.xz
misc/android: evaluate symlinks before comparing GOROOT and GOPATH
Should fix Android builders on Darwin hosts. Change-Id: I1554849bdf2ad2440529af7f93566fa6f11d5407 Reviewed-on: https://go-review.googlesource.com/c/164697 Run-TryBot: Elias Naur <mail@eliasnaur.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
Diffstat (limited to 'misc/android/go_android_exec.go')
-rw-r--r--misc/android/go_android_exec.go16
1 files changed, 12 insertions, 4 deletions
diff --git a/misc/android/go_android_exec.go b/misc/android/go_android_exec.go
index fa84f00f67..845ed6e99c 100644
--- a/misc/android/go_android_exec.go
+++ b/misc/android/go_android_exec.go
@@ -156,8 +156,12 @@ func subdir() (pkgpath string, underGoRoot bool) {
if err != nil {
log.Fatal(err)
}
- if root := runtime.GOROOT(); strings.HasPrefix(cwd, root) {
- subdir, err := filepath.Rel(root, cwd)
+ goroot, err := filepath.EvalSymlinks(runtime.GOROOT())
+ if err != nil {
+ log.Fatal(err)
+ }
+ if strings.HasPrefix(cwd, goroot) {
+ subdir, err := filepath.Rel(goroot, cwd)
if err != nil {
log.Fatal(err)
}
@@ -165,10 +169,14 @@ func subdir() (pkgpath string, underGoRoot bool) {
}
for _, p := range filepath.SplitList(build.Default.GOPATH) {
- if !strings.HasPrefix(cwd, p) {
+ pabs, err := filepath.EvalSymlinks(p)
+ if err != nil {
+ log.Fatal(err)
+ }
+ if !strings.HasPrefix(cwd, pabs) {
continue
}
- subdir, err := filepath.Rel(p, cwd)
+ subdir, err := filepath.Rel(pabs, cwd)
if err == nil {
return subdir, false
}