mirror of
https://github.com/golang/go
synced 2024-11-18 10:04:43 -07:00
cmd/link: switch to ld.bfd on freebsd/arm64
Updates golang/go#35197 Change-Id: I4fd85c84475761d71d2c17e62796e0a411cf91d8 Reviewed-on: https://go-review.googlesource.com/c/go/+/203519 Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Tobias Klauser <tobias.klauser@gmail.com>
This commit is contained in:
parent
1f3339f441
commit
152dddee7e
@ -1294,6 +1294,19 @@ func (ctxt *Link) hostlink() {
|
||||
}
|
||||
}
|
||||
|
||||
if ctxt.Arch.Family == sys.ARM64 && objabi.GOOS == "freebsd" {
|
||||
// Switch to ld.bfd on freebsd/arm64.
|
||||
argv = append(argv, "-fuse-ld=bfd")
|
||||
|
||||
// Provide a useful error if ld.bfd is missing.
|
||||
cmd := exec.Command(*flagExtld, "-fuse-ld=bfd", "-Wl,--version")
|
||||
if out, err := cmd.CombinedOutput(); err == nil {
|
||||
if !bytes.Contains(out, []byte("GNU ld")) {
|
||||
log.Fatalf("ARM64 external linker must be ld.bfd (issue #35197), please install devel/binutils")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if ctxt.IsELF && len(buildinfo) > 0 {
|
||||
argv = append(argv, fmt.Sprintf("-Wl,--build-id=0x%x", buildinfo))
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user