From 2a6544b604b61898d666ffbe456ccde720c04577 Mon Sep 17 00:00:00 2001 From: Michael Hudson-Doyle Date: Tue, 31 May 2016 20:05:39 +1200 Subject: [PATCH] cmd/go, cmd/link: set LC_ALL=C when checking if host compiler supports -no-pie Fixes #15900 Change-Id: Ieada5f4e3b3b2ae358414e013f3090b4b820569b Reviewed-on: https://go-review.googlesource.com/23536 Run-TryBot: Michael Hudson-Doyle TryBot-Result: Gobot Gobot Reviewed-by: Ian Lance Taylor --- src/cmd/go/build.go | 2 +- src/cmd/link/internal/ld/lib.go | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/src/cmd/go/build.go b/src/cmd/go/build.go index e0cb216b8c..340fcd767b 100644 --- a/src/cmd/go/build.go +++ b/src/cmd/go/build.go @@ -3088,7 +3088,7 @@ func (b *builder) gccSupportsFlag(flag string) bool { } cmd := exec.Command(cmdArgs[0], cmdArgs[1:]...) cmd.Dir = b.work - cmd.Env = envForDir(cmd.Dir, os.Environ()) + cmd.Env = mergeEnvLists([]string{"LC_ALL=C"}, envForDir(cmd.Dir, os.Environ())) out, err := cmd.CombinedOutput() supported := err == nil && !bytes.Contains(out, []byte("unrecognized")) b.flagCache[flag] = supported diff --git a/src/cmd/link/internal/ld/lib.go b/src/cmd/link/internal/ld/lib.go index bab71fb311..ded5ac6de0 100644 --- a/src/cmd/link/internal/ld/lib.go +++ b/src/cmd/link/internal/ld/lib.go @@ -1235,6 +1235,7 @@ func hostlink() { } cmd := exec.Command(argv[0], "-c", "-no-pie", "trivial.c") cmd.Dir = tmpdir + cmd.Env = append([]string{"LC_ALL=C"}, os.Environ()...) out, err := cmd.CombinedOutput() supported := err == nil && !bytes.Contains(out, []byte("unrecognized")) if supported { -- 2.50.0