1
0
mirror of https://github.com/golang/go synced 2024-11-24 07:10:18 -07:00

cmd/link: fix -no-pie / -race check

golang.org/cl/22453 was supposed to pass -no-pie to the linker when linking a
race-enabled binary if the host toolchain supports it. But I bungled the
supported check as I forgot to pass -c to the host compiler so it tried to
compile a 0 byte .c file into an executable, which will never work. Fix it to
pass -c as it should have all along.

Change-Id: I4801345c7a29cb18d5f22cec5337ce535f92135d
Reviewed-on: https://go-review.googlesource.com/22587
Run-TryBot: Michael Hudson-Doyle <michael.hudson@canonical.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Minux Ma <minux@golang.org>
This commit is contained in:
Michael Hudson-Doyle 2016-04-29 10:37:37 +12:00
parent 6ed79fbd1a
commit cb97fd7741

View File

@ -1213,7 +1213,7 @@ func hostlink() {
if err := ioutil.WriteFile(src, []byte{}, 0666); err != nil {
Ctxt.Diag("WriteFile trivial.c failed: %v", err)
}
cmd := exec.Command(argv[0], "-no-pie", "trivial.c")
cmd := exec.Command(argv[0], "-c", "-no-pie", "trivial.c")
cmd.Dir = tmpdir
out, err := cmd.CombinedOutput()
supported := err == nil && !bytes.Contains(out, []byte("unrecognized"))