go: Add recipes for 1.12 release and make it default
[pti/rtp.git] / meta-oran / recipes-devtools / go / go-1.12 / 0009-ld-replace-glibc-dynamic-linker-with-musl.patch
1 From 35ea4be34e94912b00837e0f7c7385f2e98fe769 Mon Sep 17 00:00:00 2001
2 From: Matt Madison <matt@madison.systems>
3 Date: Sun, 18 Feb 2018 08:24:05 -0800
4 Subject: [PATCH] ld: replace glibc dynamic linker with musl
5
6 Rework of patch by Khem Raj <raj.khem@gmail.com>
7 for go 1.10.  Should be applied conditionally on
8 musl being the system C library.
9
10 Upstream-Status: Inappropriate [Real fix should be portable across libcs]
11
12 Signed-off-by: Matt Madison <matt@madison.systems>
13
14 ---
15  src/cmd/link/internal/amd64/obj.go  | 2 +-
16  src/cmd/link/internal/arm/obj.go    | 2 +-
17  src/cmd/link/internal/arm64/obj.go  | 2 +-
18  src/cmd/link/internal/mips/obj.go   | 2 +-
19  src/cmd/link/internal/mips64/obj.go | 2 +-
20  src/cmd/link/internal/ppc64/obj.go  | 2 +-
21  src/cmd/link/internal/s390x/obj.go  | 2 +-
22  src/cmd/link/internal/x86/obj.go    | 2 +-
23  8 files changed, 8 insertions(+), 8 deletions(-)
24
25 --- a/src/cmd/link/internal/amd64/obj.go
26 +++ b/src/cmd/link/internal/amd64/obj.go
27 @@ -62,7 +62,7 @@ func Init() (*sys.Arch, ld.Arch) {
28                 PEreloc1:         pereloc1,
29                 TLSIEtoLE:        tlsIEtoLE,
30  
31 -               Linuxdynld:     "/lib64/ld-linux-x86-64.so.2",
32 +               Linuxdynld:     "/lib64/ld-musl-x86-64.so.1",
33                 Freebsddynld:   "/libexec/ld-elf.so.1",
34                 Openbsddynld:   "/usr/libexec/ld.so",
35                 Netbsddynld:    "/libexec/ld.elf_so",
36 --- a/src/cmd/link/internal/arm/obj.go
37 +++ b/src/cmd/link/internal/arm/obj.go
38 @@ -59,7 +59,7 @@ func Init() (*sys.Arch, ld.Arch) {
39                 Machoreloc1:      machoreloc1,
40                 PEreloc1:         pereloc1,
41  
42 -               Linuxdynld:     "/lib/ld-linux.so.3", // 2 for OABI, 3 for EABI
43 +               Linuxdynld:     "/lib/ld-musl-armhf.so.1",
44                 Freebsddynld:   "/usr/libexec/ld-elf.so.1",
45                 Openbsddynld:   "/usr/libexec/ld.so",
46                 Netbsddynld:    "/libexec/ld.elf_so",
47 --- a/src/cmd/link/internal/arm64/obj.go
48 +++ b/src/cmd/link/internal/arm64/obj.go
49 @@ -57,7 +57,7 @@ func Init() (*sys.Arch, ld.Arch) {
50                 Gentext:          gentext,
51                 Machoreloc1:      machoreloc1,
52  
53 -               Linuxdynld: "/lib/ld-linux-aarch64.so.1",
54 +               Linuxdynld: "/lib/ld-musl-aarch64.so.1",
55  
56                 Freebsddynld:   "XXX",
57                 Openbsddynld:   "XXX",
58 --- a/src/cmd/link/internal/mips/obj.go
59 +++ b/src/cmd/link/internal/mips/obj.go
60 @@ -60,7 +60,7 @@ func Init() (*sys.Arch, ld.Arch) {
61                 Gentext:          gentext,
62                 Machoreloc1:      machoreloc1,
63  
64 -               Linuxdynld: "/lib/ld.so.1",
65 +               Linuxdynld: "/lib/ld-musl-mipsle.so.1",
66  
67                 Freebsddynld:   "XXX",
68                 Openbsddynld:   "XXX",
69 --- a/src/cmd/link/internal/mips64/obj.go
70 +++ b/src/cmd/link/internal/mips64/obj.go
71 @@ -59,7 +59,7 @@ func Init() (*sys.Arch, ld.Arch) {
72                 Gentext:          gentext,
73                 Machoreloc1:      machoreloc1,
74  
75 -               Linuxdynld:     "/lib64/ld64.so.1",
76 +               Linuxdynld:     "/lib64/ld-musl-mips64le.so.1",
77                 Freebsddynld:   "XXX",
78                 Openbsddynld:   "XXX",
79                 Netbsddynld:    "XXX",
80 --- a/src/cmd/link/internal/ppc64/obj.go
81 +++ b/src/cmd/link/internal/ppc64/obj.go
82 @@ -62,7 +62,7 @@ func Init() (*sys.Arch, ld.Arch) {
83                 Machoreloc1:      machoreloc1,
84  
85                 // TODO(austin): ABI v1 uses /usr/lib/ld.so.1,
86 -               Linuxdynld: "/lib64/ld64.so.1",
87 +               Linuxdynld: "/lib64/ld-musl-powerpc64le.so.1",
88  
89                 Freebsddynld:   "XXX",
90                 Openbsddynld:   "XXX",
91 --- a/src/cmd/link/internal/s390x/obj.go
92 +++ b/src/cmd/link/internal/s390x/obj.go
93 @@ -57,7 +57,7 @@ func Init() (*sys.Arch, ld.Arch) {
94                 Gentext:          gentext,
95                 Machoreloc1:      machoreloc1,
96  
97 -               Linuxdynld: "/lib64/ld64.so.1",
98 +               Linuxdynld: "/lib64/ld-musl-s390x.so.1",
99  
100                 // not relevant for s390x
101                 Freebsddynld:   "XXX",
102 --- a/src/cmd/link/internal/x86/obj.go
103 +++ b/src/cmd/link/internal/x86/obj.go
104 @@ -58,7 +58,7 @@ func Init() (*sys.Arch, ld.Arch) {
105                 Machoreloc1:      machoreloc1,
106                 PEreloc1:         pereloc1,
107  
108 -               Linuxdynld:   "/lib/ld-linux.so.2",
109 +               Linuxdynld:   "/lib/ld-musl-i386.so.1",
110                 Freebsddynld: "/usr/libexec/ld-elf.so.1",
111                 Openbsddynld: "/usr/libexec/ld.so",
112                 Netbsddynld:  "/usr/libexec/ld.elf_so",