]> Cypherpunks repositories - gostls13.git/commitdiff
cmd/link: fix -no-pie / -race check
authorMichael Hudson-Doyle <michael.hudson@canonical.com>
Thu, 28 Apr 2016 22:37:37 +0000 (10:37 +1200)
committerMichael Hudson-Doyle <michael.hudson@canonical.com>
Thu, 28 Apr 2016 23:32:31 +0000 (23:32 +0000)
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>
src/cmd/link/internal/ld/lib.go

index 53428bb1c6f45695119c12958788ada8d4d3cd25..f6c7a0152bb675b3b07e9257fdcd5c4205688ba7 100644 (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"))