|
|
3fe4f3f |
From 7506da0af38aa307f45664f0c787b5767cc7a87f Mon Sep 17 00:00:00 2001
|
|
|
3fe4f3f |
From: =?UTF-8?q?Alejandro=20S=C3=A1ez?= <asm@redhat.com>
|
|
|
3fe4f3f |
Date: Thu, 22 Jun 2023 17:19:00 +0200
|
|
|
3fe4f3f |
Subject: [PATCH] Force gold in aarch64 until binutils 2.41 is on Fedora
|
|
Amit Shah |
c874af5 |
|
|
Amit Shah |
c874af5 |
---
|
|
|
3fe4f3f |
src/cmd/link/internal/ld/lib.go | 8 +++-----
|
|
|
3fe4f3f |
1 file changed, 3 insertions(+), 5 deletions(-)
|
|
Amit Shah |
c874af5 |
|
|
Amit Shah |
c874af5 |
diff --git a/src/cmd/link/internal/ld/lib.go b/src/cmd/link/internal/ld/lib.go
|
|
|
3fe4f3f |
index 91e2d5149c..99c305530b 100644
|
|
Amit Shah |
c874af5 |
--- a/src/cmd/link/internal/ld/lib.go
|
|
Amit Shah |
c874af5 |
+++ b/src/cmd/link/internal/ld/lib.go
|
|
|
3fe4f3f |
@@ -1605,15 +1605,13 @@ func (ctxt *Link) hostlink() {
|
|
|
3fe4f3f |
// https://go.dev/issue/22040
|
|
|
3fe4f3f |
altLinker = "gold"
|
|
Amit Shah |
c874af5 |
|
|
Amit Shah |
c874af5 |
- // If gold is not installed, gcc will silently switch
|
|
Amit Shah |
c874af5 |
- // back to ld.bfd. So we parse the version information
|
|
Amit Shah |
c874af5 |
- // and provide a useful error if gold is missing.
|
|
Amit Shah |
c874af5 |
+ // In both cases, switch to gold if gold is available.
|
|
Amit Shah |
c874af5 |
name, args := flagExtld[0], flagExtld[1:]
|
|
Amit Shah |
c874af5 |
args = append(args, "-fuse-ld=gold", "-Wl,--version")
|
|
Amit Shah |
c874af5 |
cmd := exec.Command(name, args...)
|
|
Amit Shah |
c874af5 |
if out, err := cmd.CombinedOutput(); err == nil {
|
|
Amit Shah |
c874af5 |
- if !bytes.Contains(out, []byte("GNU gold")) {
|
|
|
3fe4f3f |
- log.Fatalf("ARM64 external linker must be gold (issue #15696, 22040), but is not: %s", out)
|
|
Amit Shah |
c874af5 |
+ if bytes.Contains(out, []byte("GNU gold")) {
|
|
Amit Shah |
c874af5 |
+ altLinker = "gold"
|
|
Amit Shah |
c874af5 |
}
|
|
Amit Shah |
c874af5 |
}
|
|
Amit Shah |
c874af5 |
}
|
|
Amit Shah |
c874af5 |
--
|
|
|
3fe4f3f |
2.40.1
|
|
Amit Shah |
c874af5 |
|