]> Cypherpunks repositories - gostls13.git/commit
cmd/link: use current GOROOT for source file paths for standard library
authorRuss Cox <rsc@golang.org>
Tue, 29 Dec 2015 15:16:40 +0000 (10:16 -0500)
committerRuss Cox <rsc@golang.org>
Mon, 4 Jan 2016 20:09:57 +0000 (20:09 +0000)
commit83746fd55a13e47c9b4d33237185965a1ebdb5e4
treee0c282fae7d9546c28416dcaf3943459666539eb
parentdc5315c34108016c0c833f4262da8c72108a826b
cmd/link: use current GOROOT for source file paths for standard library

This CL changes the source file information in the
standard library's .a files to say "$GOROOT/src/runtime/chan.go"
(with a literal "$GOROOT") instead of spelling out the actual directory.
The linker then substitutes the actual $GOROOT (or $GOROOT_FINAL)
as appropriate.

If people download a binary distribution to an alternate location,
following the instructions at https://golang.org/doc/install#install,
the code before this CL would end up with source paths pointing to
/usr/local/go no matter where the actual sources were.
Now the source paths for built binaries will point to the actual sources
(hopefully).

The source line information in distributed binaries is not affected:
those will still say /usr/local/go. But binaries people build themselves
(their own programs, not the go distribution programs) will be correct.

Fixing this path also fixes the lookup of the runtime-gdb.py file.

Fixes #5533.

Change-Id: I03729baae3fbd8cd636e016275ee5ad2606e4663
Reviewed-on: https://go-review.googlesource.com/18200
Run-TryBot: Russ Cox <rsc@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Ian Lance Taylor <iant@golang.org>
src/cmd/internal/obj/obj.go
src/cmd/link/internal/ld/pcln.go
src/runtime/runtime-gdb_test.go