summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--meta/recipes-devtools/go/go-1.25.0.inc (renamed from meta/recipes-devtools/go/go-1.24.6.inc)4
-rw-r--r--meta/recipes-devtools/go/go-binary-native_1.25.0.bb (renamed from meta/recipes-devtools/go/go-binary-native_1.24.6.bb)6
-rw-r--r--meta/recipes-devtools/go/go-cross-canadian_1.25.0.bb (renamed from meta/recipes-devtools/go/go-cross-canadian_1.24.6.bb)0
-rw-r--r--meta/recipes-devtools/go/go-cross_1.25.0.bb (renamed from meta/recipes-devtools/go/go-cross_1.24.6.bb)0
-rw-r--r--meta/recipes-devtools/go/go-crosssdk_1.25.0.bb (renamed from meta/recipes-devtools/go/go-crosssdk_1.24.6.bb)0
-rw-r--r--meta/recipes-devtools/go/go-runtime_1.25.0.bb (renamed from meta/recipes-devtools/go/go-runtime_1.24.6.bb)0
-rw-r--r--meta/recipes-devtools/go/go/0001-cmd-go-make-content-based-hash-generation-less-pedan.patch15
-rw-r--r--meta/recipes-devtools/go/go/0002-cmd-go-Allow-GOTOOLDIR-to-be-overridden-in-the-envir.patch6
-rw-r--r--meta/recipes-devtools/go/go/0003-ld-add-soname-to-shareable-objects.patch6
-rw-r--r--meta/recipes-devtools/go/go/0005-cmd-dist-separate-host-and-target-builds.patch26
-rw-r--r--meta/recipes-devtools/go/go/0006-cmd-go-make-GOROOT-precious-by-default.patch16
-rw-r--r--meta/recipes-devtools/go/go/0007-exec.go-filter-out-build-specific-paths-from-linker-.patch4
-rw-r--r--meta/recipes-devtools/go/go/0008-src-cmd-dist-buildgo.go-do-not-hardcode-host-compile.patch4
-rw-r--r--meta/recipes-devtools/go/go/0009-go-Filter-build-paths-on-staticly-linked-arches.patch6
-rw-r--r--meta/recipes-devtools/go/go/0010-cmd-go-clear-GOROOT-for-func-ldShared-when-trimpath-.patch11
-rw-r--r--meta/recipes-devtools/go/go/0011-cmd-link-stop-forcing-binutils-gold-dependency-on-aa.patch (renamed from meta/recipes-devtools/go/go/6d265b008e3d106b2706645e5a88cd8e2fb98953.patch)5
-rw-r--r--meta/recipes-devtools/go/go_1.25.0.bb (renamed from meta/recipes-devtools/go/go_1.24.6.bb)0
17 files changed, 55 insertions, 54 deletions
diff --git a/meta/recipes-devtools/go/go-1.24.6.inc b/meta/recipes-devtools/go/go-1.25.0.inc
index a3933c2a61..f562fbb34b 100644
--- a/meta/recipes-devtools/go/go-1.24.6.inc
+++ b/meta/recipes-devtools/go/go-1.25.0.inc
@@ -15,6 +15,6 @@ SRC_URI += "\
15 file://0008-src-cmd-dist-buildgo.go-do-not-hardcode-host-compile.patch \ 15 file://0008-src-cmd-dist-buildgo.go-do-not-hardcode-host-compile.patch \
16 file://0009-go-Filter-build-paths-on-staticly-linked-arches.patch \ 16 file://0009-go-Filter-build-paths-on-staticly-linked-arches.patch \
17 file://0010-cmd-go-clear-GOROOT-for-func-ldShared-when-trimpath-.patch \ 17 file://0010-cmd-go-clear-GOROOT-for-func-ldShared-when-trimpath-.patch \
18 file://6d265b008e3d106b2706645e5a88cd8e2fb98953.patch \ 18 file://0011-cmd-link-stop-forcing-binutils-gold-dependency-on-aa.patch \
19" 19"
20SRC_URI[main.sha256sum] = "e1cb5582aab588668bc04c07de18688070f6b8c9b2aaf361f821e19bd47cfdbd" 20SRC_URI[main.sha256sum] = "4bd01e91297207bfa450ea40d4d5a93b1b531a5e438473b2a06e18e077227225"
diff --git a/meta/recipes-devtools/go/go-binary-native_1.24.6.bb b/meta/recipes-devtools/go/go-binary-native_1.25.0.bb
index d5c92bdea5..2b9ad19d70 100644
--- a/meta/recipes-devtools/go/go-binary-native_1.24.6.bb
+++ b/meta/recipes-devtools/go/go-binary-native_1.25.0.bb
@@ -9,9 +9,9 @@ PROVIDES = "go-native"
9 9
10# Checksums available at https://go.dev/dl/ 10# Checksums available at https://go.dev/dl/
11SRC_URI = "https://dl.google.com/go/go${PV}.${BUILD_GOOS}-${BUILD_GOARCH}.tar.gz;name=go_${BUILD_GOTUPLE}" 11SRC_URI = "https://dl.google.com/go/go${PV}.${BUILD_GOOS}-${BUILD_GOARCH}.tar.gz;name=go_${BUILD_GOTUPLE}"
12SRC_URI[go_linux_amd64.sha256sum] = "bbca37cc395c974ffa4893ee35819ad23ebb27426df87af92e93a9ec66ef8712" 12SRC_URI[go_linux_amd64.sha256sum] = "2852af0cb20a13139b3448992e69b868e50ed0f8a1e5940ee1de9e19a123b613"
13SRC_URI[go_linux_arm64.sha256sum] = "124ea6033a8bf98aa9fbab53e58d134905262d45a022af3a90b73320f3c3afd5" 13SRC_URI[go_linux_arm64.sha256sum] = "05de75d6994a2783699815ee553bd5a9327d8b79991de36e38b66862782f54ae"
14SRC_URI[go_linux_ppc64le.sha256sum] = "63fc9559a3d6dfd63aa902f714375b879bbc848466181c035c122489b9646e27" 14SRC_URI[go_linux_ppc64le.sha256sum] = "0f18a89e7576cf2c5fa0b487a1635d9bcbf843df5f110e9982c64df52a983ad0"
15 15
16UPSTREAM_CHECK_URI = "https://golang.org/dl/" 16UPSTREAM_CHECK_URI = "https://golang.org/dl/"
17UPSTREAM_CHECK_REGEX = "go(?P<pver>\d+(\.\d+)+)\.linux" 17UPSTREAM_CHECK_REGEX = "go(?P<pver>\d+(\.\d+)+)\.linux"
diff --git a/meta/recipes-devtools/go/go-cross-canadian_1.24.6.bb b/meta/recipes-devtools/go/go-cross-canadian_1.25.0.bb
index 7ac9449e47..7ac9449e47 100644
--- a/meta/recipes-devtools/go/go-cross-canadian_1.24.6.bb
+++ b/meta/recipes-devtools/go/go-cross-canadian_1.25.0.bb
diff --git a/meta/recipes-devtools/go/go-cross_1.24.6.bb b/meta/recipes-devtools/go/go-cross_1.25.0.bb
index 80b5a03f6c..80b5a03f6c 100644
--- a/meta/recipes-devtools/go/go-cross_1.24.6.bb
+++ b/meta/recipes-devtools/go/go-cross_1.25.0.bb
diff --git a/meta/recipes-devtools/go/go-crosssdk_1.24.6.bb b/meta/recipes-devtools/go/go-crosssdk_1.25.0.bb
index 1857c8a577..1857c8a577 100644
--- a/meta/recipes-devtools/go/go-crosssdk_1.24.6.bb
+++ b/meta/recipes-devtools/go/go-crosssdk_1.25.0.bb
diff --git a/meta/recipes-devtools/go/go-runtime_1.24.6.bb b/meta/recipes-devtools/go/go-runtime_1.25.0.bb
index 63464a1501..63464a1501 100644
--- a/meta/recipes-devtools/go/go-runtime_1.24.6.bb
+++ b/meta/recipes-devtools/go/go-runtime_1.25.0.bb
diff --git a/meta/recipes-devtools/go/go/0001-cmd-go-make-content-based-hash-generation-less-pedan.patch b/meta/recipes-devtools/go/go/0001-cmd-go-make-content-based-hash-generation-less-pedan.patch
index 86e941b970..b55ad1e787 100644
--- a/meta/recipes-devtools/go/go/0001-cmd-go-make-content-based-hash-generation-less-pedan.patch
+++ b/meta/recipes-devtools/go/go/0001-cmd-go-make-content-based-hash-generation-less-pedan.patch
@@ -82,8 +82,8 @@ index 7b073165d5..1f618be0bb 100644
82 fmt.Fprintf(h, "CC=%q %q %q %q\n", ccExe, cppflags, cflags, ldflags) 82 fmt.Fprintf(h, "CC=%q %q %q %q\n", ccExe, cppflags, cflags, ldflags)
83 // Include the C compiler tool ID so that if the C 83 // Include the C compiler tool ID so that if the C
84 // compiler changes we rebuild the package. 84 // compiler changes we rebuild the package.
85@@ -303,14 +305,14 @@ func (b *Builder) buildActionID(a *Action) cache.ActionID { 85@@ -305,7 +307,7 @@ func (b *Builder) buildActionID(a *Action) cache.ActionID {
86 fmt.Fprintf(h, "CC ID=%q\n", ccID) 86 fmt.Fprintf(h, "CC ID ERROR=%q\n", err)
87 } 87 }
88 if len(p.CXXFiles)+len(p.SwigCXXFiles) > 0 { 88 if len(p.CXXFiles)+len(p.SwigCXXFiles) > 0 {
89- cxxExe := b.cxxExe() 89- cxxExe := b.cxxExe()
@@ -91,6 +91,7 @@ index 7b073165d5..1f618be0bb 100644
91 fmt.Fprintf(h, "CXX=%q %q\n", cxxExe, cxxflags) 91 fmt.Fprintf(h, "CXX=%q %q\n", cxxExe, cxxflags)
92 if cxxID, _, err := b.gccToolID(cxxExe[0], "c++"); err == nil { 92 if cxxID, _, err := b.gccToolID(cxxExe[0], "c++"); err == nil {
93 fmt.Fprintf(h, "CXX ID=%q\n", cxxID) 93 fmt.Fprintf(h, "CXX ID=%q\n", cxxID)
94@@ -314,7 +316,7 @@ func (b *Builder) buildActionID(a *Action) cache.ActionID {
94 } 95 }
95 } 96 }
96 if len(p.FFiles) > 0 { 97 if len(p.FFiles) > 0 {
@@ -99,7 +100,7 @@ index 7b073165d5..1f618be0bb 100644
99 fmt.Fprintf(h, "FC=%q %q\n", fcExe, fflags) 100 fmt.Fprintf(h, "FC=%q %q\n", fcExe, fflags)
100 if fcID, _, err := b.gccToolID(fcExe[0], "f95"); err == nil { 101 if fcID, _, err := b.gccToolID(fcExe[0], "f95"); err == nil {
101 fmt.Fprintf(h, "FC ID=%q\n", fcID) 102 fmt.Fprintf(h, "FC ID=%q\n", fcID)
102@@ -327,7 +329,7 @@ func (b *Builder) buildActionID(a *Action) cache.ActionID { 103@@ -333,7 +335,7 @@ func (b *Builder) buildActionID(a *Action) cache.ActionID {
103 } 104 }
104 } 105 }
105 if p.Internal.BuildInfo != nil { 106 if p.Internal.BuildInfo != nil {
@@ -108,7 +109,7 @@ index 7b073165d5..1f618be0bb 100644
108 } 109 }
109 110
110 // Configuration specific to compiler toolchain. 111 // Configuration specific to compiler toolchain.
111@@ -2659,8 +2661,25 @@ func envList(key, def string) []string { 112@@ -2631,8 +2633,25 @@ func envList(key, def string) []string {
112 return args 113 return args
113 } 114 }
114 115
@@ -135,7 +136,7 @@ index 7b073165d5..1f618be0bb 100644
135 if cppflags, err = buildFlags("CPPFLAGS", "", p.CgoCPPFLAGS, checkCompilerFlags); err != nil { 136 if cppflags, err = buildFlags("CPPFLAGS", "", p.CgoCPPFLAGS, checkCompilerFlags); err != nil {
136 return 137 return
137 } 138 }
138@@ -2676,6 +2695,13 @@ func (b *Builder) CFlags(p *load.Package) (cppflags, cflags, cxxflags, fflags, l 139@@ -2648,6 +2667,13 @@ func (b *Builder) CFlags(p *load.Package) (cppflags, cflags, cxxflags, fflags, l
139 if ldflags, err = buildFlags("LDFLAGS", DefaultCFlags, p.CgoLDFLAGS, checkLinkerFlags); err != nil { 140 if ldflags, err = buildFlags("LDFLAGS", DefaultCFlags, p.CgoLDFLAGS, checkLinkerFlags); err != nil {
140 return 141 return
141 } 142 }
@@ -149,7 +150,7 @@ index 7b073165d5..1f618be0bb 100644
149 150
150 return 151 return
151 } 152 }
152@@ -2693,7 +2719,7 @@ func (b *Builder) cgo(a *Action, cgoExe, objdir string, pcCFLAGS, pcLDFLAGS, cgo 153@@ -2665,7 +2691,7 @@ func (b *Builder) cgo(a *Action, cgoExe, objdir string, pcCFLAGS, pcLDFLAGS, cgo
153 p := a.Package 154 p := a.Package
154 sh := b.Shell(a) 155 sh := b.Shell(a)
155 156
@@ -158,7 +159,7 @@ index 7b073165d5..1f618be0bb 100644
158 if err != nil { 159 if err != nil {
159 return nil, nil, err 160 return nil, nil, err
160 } 161 }
161@@ -3256,7 +3282,7 @@ func (b *Builder) swigOne(a *Action, file, objdir string, pcCFLAGS []string, cxx 162@@ -3229,7 +3255,7 @@ func (b *Builder) swigOne(a *Action, file, objdir string, pcCFLAGS []string, cxx
162 p := a.Package 163 p := a.Package
163 sh := b.Shell(a) 164 sh := b.Shell(a)
164 165
diff --git a/meta/recipes-devtools/go/go/0002-cmd-go-Allow-GOTOOLDIR-to-be-overridden-in-the-envir.patch b/meta/recipes-devtools/go/go/0002-cmd-go-Allow-GOTOOLDIR-to-be-overridden-in-the-envir.patch
index 7e86d8cd6b..f6767d0d47 100644
--- a/meta/recipes-devtools/go/go/0002-cmd-go-Allow-GOTOOLDIR-to-be-overridden-in-the-envir.patch
+++ b/meta/recipes-devtools/go/go/0002-cmd-go-Allow-GOTOOLDIR-to-be-overridden-in-the-envir.patch
@@ -23,7 +23,7 @@ diff --git a/src/cmd/dist/build.go b/src/cmd/dist/build.go
23index 1f467647f5..b62e518030 100644 23index 1f467647f5..b62e518030 100644
24--- a/src/cmd/dist/build.go 24--- a/src/cmd/dist/build.go
25+++ b/src/cmd/dist/build.go 25+++ b/src/cmd/dist/build.go
26@@ -280,7 +280,9 @@ func xinit() { 26@@ -271,7 +271,9 @@ func xinit() {
27 } 27 }
28 xatexit(rmworkdir) 28 xatexit(rmworkdir)
29 29
@@ -33,12 +33,12 @@ index 1f467647f5..b62e518030 100644
33+ } 33+ }
34 34
35 goversion := findgoversion() 35 goversion := findgoversion()
36 isRelease = strings.HasPrefix(goversion, "release.") || strings.HasPrefix(goversion, "go") 36 isRelease = (strings.HasPrefix(goversion, "release.") || strings.HasPrefix(goversion, "go")) &&
37diff --git a/src/cmd/go/internal/cfg/cfg.go b/src/cmd/go/internal/cfg/cfg.go 37diff --git a/src/cmd/go/internal/cfg/cfg.go b/src/cmd/go/internal/cfg/cfg.go
38index 3b9f27e91d..ec043c1530 100644 38index 3b9f27e91d..ec043c1530 100644
39--- a/src/cmd/go/internal/cfg/cfg.go 39--- a/src/cmd/go/internal/cfg/cfg.go
40+++ b/src/cmd/go/internal/cfg/cfg.go 40+++ b/src/cmd/go/internal/cfg/cfg.go
41@@ -248,7 +248,11 @@ func SetGOROOT(goroot string, isTestGo bool) { 41@@ -279,7 +279,11 @@ func SetGOROOT(goroot string, isTestGo bool) {
42 // This matches the initialization of ToolDir in go/build, except for 42 // This matches the initialization of ToolDir in go/build, except for
43 // using ctxt.GOROOT and the installed GOOS and GOARCH rather than the 43 // using ctxt.GOROOT and the installed GOOS and GOARCH rather than the
44 // GOROOT, GOOS, and GOARCH reported by the runtime package. 44 // GOROOT, GOOS, and GOARCH reported by the runtime package.
diff --git a/meta/recipes-devtools/go/go/0003-ld-add-soname-to-shareable-objects.patch b/meta/recipes-devtools/go/go/0003-ld-add-soname-to-shareable-objects.patch
index 86a4bb1ea5..14ed617dc3 100644
--- a/meta/recipes-devtools/go/go/0003-ld-add-soname-to-shareable-objects.patch
+++ b/meta/recipes-devtools/go/go/0003-ld-add-soname-to-shareable-objects.patch
@@ -22,7 +22,7 @@ diff --git a/src/cmd/link/internal/ld/lib.go b/src/cmd/link/internal/ld/lib.go
22index 2d8f964f35..dfc72e02c0 100644 22index 2d8f964f35..dfc72e02c0 100644
23--- a/src/cmd/link/internal/ld/lib.go 23--- a/src/cmd/link/internal/ld/lib.go
24+++ b/src/cmd/link/internal/ld/lib.go 24+++ b/src/cmd/link/internal/ld/lib.go
25@@ -1624,6 +1624,7 @@ func (ctxt *Link) hostlink() { 25@@ -1628,6 +1628,7 @@ func (ctxt *Link) hostlink() {
26 argv = append(argv, "-Wl,-z,relro") 26 argv = append(argv, "-Wl,-z,relro")
27 } 27 }
28 argv = append(argv, "-shared") 28 argv = append(argv, "-shared")
@@ -30,7 +30,7 @@ index 2d8f964f35..dfc72e02c0 100644
30 if ctxt.HeadType == objabi.Hwindows { 30 if ctxt.HeadType == objabi.Hwindows {
31 argv = addASLRargs(argv, *flagAslr) 31 argv = addASLRargs(argv, *flagAslr)
32 } else { 32 } else {
33@@ -1639,6 +1640,7 @@ func (ctxt *Link) hostlink() { 33@@ -1643,6 +1644,7 @@ func (ctxt *Link) hostlink() {
34 argv = append(argv, "-Wl,-z,relro") 34 argv = append(argv, "-Wl,-z,relro")
35 } 35 }
36 argv = append(argv, "-shared") 36 argv = append(argv, "-shared")
@@ -38,7 +38,7 @@ index 2d8f964f35..dfc72e02c0 100644
38 case BuildModePlugin: 38 case BuildModePlugin:
39 if ctxt.HeadType == objabi.Hdarwin { 39 if ctxt.HeadType == objabi.Hdarwin {
40 argv = append(argv, "-dynamiclib") 40 argv = append(argv, "-dynamiclib")
41@@ -1647,6 +1649,7 @@ func (ctxt *Link) hostlink() { 41@@ -1651,6 +1653,7 @@ func (ctxt *Link) hostlink() {
42 argv = append(argv, "-Wl,-z,relro") 42 argv = append(argv, "-Wl,-z,relro")
43 } 43 }
44 argv = append(argv, "-shared") 44 argv = append(argv, "-shared")
diff --git a/meta/recipes-devtools/go/go/0005-cmd-dist-separate-host-and-target-builds.patch b/meta/recipes-devtools/go/go/0005-cmd-dist-separate-host-and-target-builds.patch
index f7c3108a98..42bfa8eb02 100644
--- a/meta/recipes-devtools/go/go/0005-cmd-dist-separate-host-and-target-builds.patch
+++ b/meta/recipes-devtools/go/go/0005-cmd-dist-separate-host-and-target-builds.patch
@@ -51,7 +51,7 @@ diff --git a/src/cmd/dist/build.go b/src/cmd/dist/build.go
51index b62e518030..0c54d82300 100644 51index b62e518030..0c54d82300 100644
52--- a/src/cmd/dist/build.go 52--- a/src/cmd/dist/build.go
53+++ b/src/cmd/dist/build.go 53+++ b/src/cmd/dist/build.go
54@@ -49,6 +49,7 @@ var ( 54@@ -50,6 +50,7 @@ var (
55 gofips140 string 55 gofips140 string
56 workdir string 56 workdir string
57 tooldir string 57 tooldir string
@@ -59,7 +59,7 @@ index b62e518030..0c54d82300 100644
59 oldgoos string 59 oldgoos string
60 oldgoarch string 60 oldgoarch string
61 oldgocache string 61 oldgocache string
62@@ -61,6 +62,7 @@ var ( 62@@ -62,6 +63,7 @@ var (
63 rebuildall bool 63 rebuildall bool
64 noOpt bool 64 noOpt bool
65 isRelease bool 65 isRelease bool
@@ -67,16 +67,16 @@ index b62e518030..0c54d82300 100644
67 67
68 vflag int // verbosity 68 vflag int // verbosity
69 ) 69 )
70@@ -286,6 +288,8 @@ func xinit() { 70@@ -278,6 +280,8 @@ func xinit() {
71
72 goversion := findgoversion() 71 goversion := findgoversion()
73 isRelease = strings.HasPrefix(goversion, "release.") || strings.HasPrefix(goversion, "go") 72 isRelease = (strings.HasPrefix(goversion, "release.") || strings.HasPrefix(goversion, "go")) &&
73 !strings.Contains(goversion, "devel")
74+ 74+
75+ build_tooldir = pathf("%s/pkg/tool/native_native", goroot) 75+ build_tooldir = pathf("%s/pkg/tool/native_native", goroot)
76 } 76 }
77 77
78 // compilerEnv returns a map from "goos/goarch" to the 78 // compilerEnv returns a map from "goos/goarch" to the
79@@ -547,8 +551,10 @@ func setup() { 79@@ -543,8 +547,10 @@ func setup() {
80 goosGoarch := pathf("%s/pkg/%s_%s", goroot, gohostos, gohostarch) 80 goosGoarch := pathf("%s/pkg/%s_%s", goroot, gohostos, gohostarch)
81 if rebuildall { 81 if rebuildall {
82 xremoveall(goosGoarch) 82 xremoveall(goosGoarch)
@@ -87,7 +87,7 @@ index b62e518030..0c54d82300 100644
87 xatexit(func() { 87 xatexit(func() {
88 if files := xreaddir(goosGoarch); len(files) == 0 { 88 if files := xreaddir(goosGoarch); len(files) == 0 {
89 xremove(goosGoarch) 89 xremove(goosGoarch)
90@@ -1411,14 +1417,20 @@ func cmdbootstrap() { 90@@ -1420,14 +1426,20 @@ func cmdbootstrap() {
91 defer timelog("end", "dist bootstrap") 91 defer timelog("end", "dist bootstrap")
92 92
93 var debug, distpack, force, noBanner, noClean bool 93 var debug, distpack, force, noBanner, noClean bool
@@ -109,7 +109,7 @@ index b62e518030..0c54d82300 100644
109 109
110 if noClean { 110 if noClean {
111 xprintf("warning: --no-clean is deprecated and has no effect; use 'go install std cmd' instead\n") 111 xprintf("warning: --no-clean is deprecated and has no effect; use 'go install std cmd' instead\n")
112@@ -1430,6 +1442,18 @@ func cmdbootstrap() { 112@@ -1439,6 +1451,18 @@ func cmdbootstrap() {
113 "Use the -force flag to build anyway.\n", goos, goarch) 113 "Use the -force flag to build anyway.\n", goos, goarch)
114 } 114 }
115 115
@@ -128,7 +128,7 @@ index b62e518030..0c54d82300 100644
128 // Set GOPATH to an internal directory. We shouldn't actually 128 // Set GOPATH to an internal directory. We shouldn't actually
129 // need to store files here, since the toolchain won't 129 // need to store files here, since the toolchain won't
130 // depend on modules outside of vendor directories, but if 130 // depend on modules outside of vendor directories, but if
131@@ -1513,9 +1537,14 @@ func cmdbootstrap() { 131@@ -1517,9 +1541,14 @@ func cmdbootstrap() {
132 xprintf("\n") 132 xprintf("\n")
133 } 133 }
134 134
@@ -143,7 +143,7 @@ index b62e518030..0c54d82300 100644
143 goBootstrap := pathf("%s/go_bootstrap", tooldir) 143 goBootstrap := pathf("%s/go_bootstrap", tooldir)
144 if debug { 144 if debug {
145 run("", ShowOutput|CheckExit, pathf("%s/compile", tooldir), "-V=full") 145 run("", ShowOutput|CheckExit, pathf("%s/compile", tooldir), "-V=full")
146@@ -1543,7 +1572,11 @@ func cmdbootstrap() { 146@@ -1547,7 +1576,11 @@ func cmdbootstrap() {
147 xprintf("\n") 147 xprintf("\n")
148 } 148 }
149 xprintf("Building Go toolchain2 using go_bootstrap and Go toolchain1.\n") 149 xprintf("Building Go toolchain2 using go_bootstrap and Go toolchain1.\n")
@@ -155,7 +155,7 @@ index b62e518030..0c54d82300 100644
155 // Now that cmd/go is in charge of the build process, enable GOEXPERIMENT. 155 // Now that cmd/go is in charge of the build process, enable GOEXPERIMENT.
156 os.Setenv("GOEXPERIMENT", goexperiment) 156 os.Setenv("GOEXPERIMENT", goexperiment)
157 // No need to enable PGO for toolchain2. 157 // No need to enable PGO for toolchain2.
158@@ -1596,6 +1629,7 @@ func cmdbootstrap() { 158@@ -1600,6 +1633,7 @@ func cmdbootstrap() {
159 os.Setenv("GOCACHE", oldgocache) 159 os.Setenv("GOCACHE", oldgocache)
160 } 160 }
161 161
@@ -163,7 +163,7 @@ index b62e518030..0c54d82300 100644
163 if goos == oldgoos && goarch == oldgoarch { 163 if goos == oldgoos && goarch == oldgoarch {
164 // Common case - not setting up for cross-compilation. 164 // Common case - not setting up for cross-compilation.
165 timelog("build", "toolchain") 165 timelog("build", "toolchain")
166@@ -1639,6 +1673,42 @@ func cmdbootstrap() { 166@@ -1643,6 +1677,42 @@ func cmdbootstrap() {
167 checkNotStale(toolenv(), goBootstrap, toolchain...) 167 checkNotStale(toolenv(), goBootstrap, toolchain...)
168 copyfile(pathf("%s/compile4", tooldir), pathf("%s/compile", tooldir), writeExec) 168 copyfile(pathf("%s/compile4", tooldir), pathf("%s/compile", tooldir), writeExec)
169 } 169 }
@@ -206,7 +206,7 @@ index b62e518030..0c54d82300 100644
206 206
207 // Check that there are no new files in $GOROOT/bin other than 207 // Check that there are no new files in $GOROOT/bin other than
208 // go and gofmt and $GOOS_$GOARCH (target bin when cross-compiling). 208 // go and gofmt and $GOOS_$GOARCH (target bin when cross-compiling).
209@@ -1661,8 +1731,12 @@ func cmdbootstrap() { 209@@ -1665,8 +1735,12 @@ func cmdbootstrap() {
210 } 210 }
211 } 211 }
212 212
diff --git a/meta/recipes-devtools/go/go/0006-cmd-go-make-GOROOT-precious-by-default.patch b/meta/recipes-devtools/go/go/0006-cmd-go-make-GOROOT-precious-by-default.patch
index b29da334ec..5117379444 100644
--- a/meta/recipes-devtools/go/go/0006-cmd-go-make-GOROOT-precious-by-default.patch
+++ b/meta/recipes-devtools/go/go/0006-cmd-go-make-GOROOT-precious-by-default.patch
@@ -32,7 +32,7 @@ diff --git a/src/cmd/go/internal/work/action.go b/src/cmd/go/internal/work/actio
32index 44bb9f8c1e..87ac4e30e5 100644 32index 44bb9f8c1e..87ac4e30e5 100644
33--- a/src/cmd/go/internal/work/action.go 33--- a/src/cmd/go/internal/work/action.go
34+++ b/src/cmd/go/internal/work/action.go 34+++ b/src/cmd/go/internal/work/action.go
35@@ -837,6 +837,9 @@ func (b *Builder) addTransitiveLinkDeps(a, a1 *Action, shlib string) { 35@@ -844,6 +844,9 @@ func (b *Builder) addTransitiveLinkDeps(a, a1 *Action, shlib string) {
36 if p1 == nil || p1.Shlib == "" || haveShlib[filepath.Base(p1.Shlib)] { 36 if p1 == nil || p1.Shlib == "" || haveShlib[filepath.Base(p1.Shlib)] {
37 continue 37 continue
38 } 38 }
@@ -46,7 +46,7 @@ diff --git a/src/cmd/go/internal/work/build.go b/src/cmd/go/internal/work/build.
46index 3508d51fbb..77f5e7241a 100644 46index 3508d51fbb..77f5e7241a 100644
47--- a/src/cmd/go/internal/work/build.go 47--- a/src/cmd/go/internal/work/build.go
48+++ b/src/cmd/go/internal/work/build.go 48+++ b/src/cmd/go/internal/work/build.go
49@@ -238,6 +238,8 @@ See also: go install, go get, go clean. 49@@ -239,6 +239,8 @@ See also: go install, go get, go clean.
50 50
51 const concurrentGCBackendCompilationEnabledByDefault = true 51 const concurrentGCBackendCompilationEnabledByDefault = true
52 52
@@ -55,9 +55,9 @@ index 3508d51fbb..77f5e7241a 100644
55 func init() { 55 func init() {
56 // break init cycle 56 // break init cycle
57 CmdBuild.Run = runBuild 57 CmdBuild.Run = runBuild
58@@ -251,6 +253,10 @@ func init() { 58@@ -293,6 +295,10 @@ func init() {
59 AddCoverFlags(CmdBuild, nil) 59 case "gc", "gccgo":
60 AddCoverFlags(CmdInstall, nil) 60 buildCompiler{}.Set(build.Default.Compiler)
61 } 61 }
62+ 62+
63+ if x := os.Getenv("GOROOT_OVERRIDE"); x != "" { 63+ if x := os.Getenv("GOROOT_OVERRIDE"); x != "" {
@@ -65,12 +65,12 @@ index 3508d51fbb..77f5e7241a 100644
65+ } 65+ }
66 } 66 }
67 67
68 // Note that flags consulted by other parts of the code 68 type BuildFlagMask int
69diff --git a/src/cmd/go/internal/work/exec.go b/src/cmd/go/internal/work/exec.go 69diff --git a/src/cmd/go/internal/work/exec.go b/src/cmd/go/internal/work/exec.go
70index 1f618be0bb..651fa64582 100644 70index 1f618be0bb..651fa64582 100644
71--- a/src/cmd/go/internal/work/exec.go 71--- a/src/cmd/go/internal/work/exec.go
72+++ b/src/cmd/go/internal/work/exec.go 72+++ b/src/cmd/go/internal/work/exec.go
73@@ -552,6 +552,23 @@ func (b *Builder) build(ctx context.Context, a *Action) (err error) { 73@@ -558,6 +558,23 @@ func (b *Builder) build(ctx context.Context, a *Action) (err error) {
74 return err 74 return err
75 } 75 }
76 76
@@ -94,7 +94,7 @@ index 1f618be0bb..651fa64582 100644
94 if err := sh.Mkdir(a.Objdir); err != nil { 94 if err := sh.Mkdir(a.Objdir); err != nil {
95 return err 95 return err
96 } 96 }
97@@ -1747,6 +1764,14 @@ func (b *Builder) linkShared(ctx context.Context, a *Action) (err error) { 97@@ -1731,6 +1748,14 @@ func (b *Builder) linkShared(ctx context.Context, a *Action) (err error) {
98 return err 98 return err
99 } 99 }
100 100
diff --git a/meta/recipes-devtools/go/go/0007-exec.go-filter-out-build-specific-paths-from-linker-.patch b/meta/recipes-devtools/go/go/0007-exec.go-filter-out-build-specific-paths-from-linker-.patch
index 9a701c7a6b..7fe8d9d231 100644
--- a/meta/recipes-devtools/go/go/0007-exec.go-filter-out-build-specific-paths-from-linker-.patch
+++ b/meta/recipes-devtools/go/go/0007-exec.go-filter-out-build-specific-paths-from-linker-.patch
@@ -19,7 +19,7 @@ diff --git a/src/cmd/go/internal/work/exec.go b/src/cmd/go/internal/work/exec.go
19index 651fa64582..586079afb4 100644 19index 651fa64582..586079afb4 100644
20--- a/src/cmd/go/internal/work/exec.go 20--- a/src/cmd/go/internal/work/exec.go
21+++ b/src/cmd/go/internal/work/exec.go 21+++ b/src/cmd/go/internal/work/exec.go
22@@ -1426,6 +1426,29 @@ func (b *Builder) linkActionID(a *Action) cache.ActionID { 22@@ -1410,6 +1410,29 @@ func (b *Builder) linkActionID(a *Action) cache.ActionID {
23 return h.Sum() 23 return h.Sum()
24 } 24 }
25 25
@@ -49,7 +49,7 @@ index 651fa64582..586079afb4 100644
49 // printLinkerConfig prints the linker config into the hash h, 49 // printLinkerConfig prints the linker config into the hash h,
50 // as part of the computation of a linker-related action ID. 50 // as part of the computation of a linker-related action ID.
51 func (b *Builder) printLinkerConfig(h io.Writer, p *load.Package) { 51 func (b *Builder) printLinkerConfig(h io.Writer, p *load.Package) {
52@@ -1436,7 +1459,7 @@ func (b *Builder) printLinkerConfig(h io.Writer, p *load.Package) { 52@@ -1420,7 +1443,7 @@ func (b *Builder) printLinkerConfig(h io.Writer, p *load.Package) {
53 case "gc": 53 case "gc":
54 fmt.Fprintf(h, "link %s %q %s\n", b.toolID("link"), forcedLdflags, ldBuildmode) 54 fmt.Fprintf(h, "link %s %q %s\n", b.toolID("link"), forcedLdflags, ldBuildmode)
55 if p != nil { 55 if p != nil {
diff --git a/meta/recipes-devtools/go/go/0008-src-cmd-dist-buildgo.go-do-not-hardcode-host-compile.patch b/meta/recipes-devtools/go/go/0008-src-cmd-dist-buildgo.go-do-not-hardcode-host-compile.patch
index a9cb2a4b84..59cbff12f8 100644
--- a/meta/recipes-devtools/go/go/0008-src-cmd-dist-buildgo.go-do-not-hardcode-host-compile.patch
+++ b/meta/recipes-devtools/go/go/0008-src-cmd-dist-buildgo.go-do-not-hardcode-host-compile.patch
@@ -19,7 +19,7 @@ diff --git a/src/cmd/dist/buildgo.go b/src/cmd/dist/buildgo.go
19index 884e9d729a..2f52edacfe 100644 19index 884e9d729a..2f52edacfe 100644
20--- a/src/cmd/dist/buildgo.go 20--- a/src/cmd/dist/buildgo.go
21+++ b/src/cmd/dist/buildgo.go 21+++ b/src/cmd/dist/buildgo.go
22@@ -51,8 +51,8 @@ func mkzdefaultcc(dir, file string) { 22@@ -50,8 +50,8 @@ func mkzdefaultcc(dir, file string) {
23 fmt.Fprintf(&buf, "package cfg\n") 23 fmt.Fprintf(&buf, "package cfg\n")
24 fmt.Fprintln(&buf) 24 fmt.Fprintln(&buf)
25 fmt.Fprintf(&buf, "const DefaultPkgConfig = `%s`\n", defaultpkgconfig) 25 fmt.Fprintf(&buf, "const DefaultPkgConfig = `%s`\n", defaultpkgconfig)
@@ -30,7 +30,7 @@ index 884e9d729a..2f52edacfe 100644
30 writefile(buf.String(), file, writeSkipSame) 30 writefile(buf.String(), file, writeSkipSame)
31 return 31 return
32 } 32 }
33@@ -62,8 +62,8 @@ func mkzdefaultcc(dir, file string) { 33@@ -61,8 +61,8 @@ func mkzdefaultcc(dir, file string) {
34 fmt.Fprintf(&buf, "package main\n") 34 fmt.Fprintf(&buf, "package main\n")
35 fmt.Fprintln(&buf) 35 fmt.Fprintln(&buf)
36 fmt.Fprintf(&buf, "const defaultPkgConfig = `%s`\n", defaultpkgconfig) 36 fmt.Fprintf(&buf, "const defaultPkgConfig = `%s`\n", defaultpkgconfig)
diff --git a/meta/recipes-devtools/go/go/0009-go-Filter-build-paths-on-staticly-linked-arches.patch b/meta/recipes-devtools/go/go/0009-go-Filter-build-paths-on-staticly-linked-arches.patch
index d47c4b1d31..7bb9757d1b 100644
--- a/meta/recipes-devtools/go/go/0009-go-Filter-build-paths-on-staticly-linked-arches.patch
+++ b/meta/recipes-devtools/go/go/0009-go-Filter-build-paths-on-staticly-linked-arches.patch
@@ -20,7 +20,7 @@ diff --git a/src/cmd/go/internal/load/pkg.go b/src/cmd/go/internal/load/pkg.go
20index 15f6b2e87b..47c5b865a1 100644 20index 15f6b2e87b..47c5b865a1 100644
21--- a/src/cmd/go/internal/load/pkg.go 21--- a/src/cmd/go/internal/load/pkg.go
22+++ b/src/cmd/go/internal/load/pkg.go 22+++ b/src/cmd/go/internal/load/pkg.go
23@@ -2291,6 +2291,17 @@ func appendBuildSetting(info *debug.BuildInfo, key, value string) { 23@@ -2313,6 +2313,17 @@ func appendBuildSetting(info *debug.BuildInfo, key, value string) {
24 info.Settings = append(info.Settings, debug.BuildSetting{Key: key, Value: value}) 24 info.Settings = append(info.Settings, debug.BuildSetting{Key: key, Value: value})
25 } 25 }
26 26
@@ -38,7 +38,7 @@ index 15f6b2e87b..47c5b865a1 100644
38 // setBuildInfo gathers build information and sets it into 38 // setBuildInfo gathers build information and sets it into
39 // p.Internal.BuildInfo, which will later be formatted as a string and embedded 39 // p.Internal.BuildInfo, which will later be formatted as a string and embedded
40 // in the binary. setBuildInfo should only be called on a main package with no 40 // in the binary. setBuildInfo should only be called on a main package with no
41@@ -2398,7 +2409,7 @@ func (p *Package) setBuildInfo(ctx context.Context, autoVCS bool) { 41@@ -2420,7 +2431,7 @@ func (p *Package) setBuildInfo(ctx context.Context, autoVCS bool) {
42 if gcflags := BuildGcflags.String(); gcflags != "" && cfg.BuildContext.Compiler == "gc" { 42 if gcflags := BuildGcflags.String(); gcflags != "" && cfg.BuildContext.Compiler == "gc" {
43 appendSetting("-gcflags", gcflags) 43 appendSetting("-gcflags", gcflags)
44 } 44 }
@@ -47,7 +47,7 @@ index 15f6b2e87b..47c5b865a1 100644
47 // https://go.dev/issue/52372: only include ldflags if -trimpath is not set, 47 // https://go.dev/issue/52372: only include ldflags if -trimpath is not set,
48 // since it can include system paths through various linker flags (notably 48 // since it can include system paths through various linker flags (notably
49 // -extar, -extld, and -extldflags). 49 // -extar, -extld, and -extldflags).
50@@ -2444,7 +2455,7 @@ func (p *Package) setBuildInfo(ctx context.Context, autoVCS bool) { 50@@ -2466,7 +2477,7 @@ func (p *Package) setBuildInfo(ctx context.Context, autoVCS bool) {
51 // subset of flags that are known not to be paths? 51 // subset of flags that are known not to be paths?
52 if cfg.BuildContext.CgoEnabled && !cfg.BuildTrimpath { 52 if cfg.BuildContext.CgoEnabled && !cfg.BuildTrimpath {
53 for _, name := range []string{"CGO_CFLAGS", "CGO_CPPFLAGS", "CGO_CXXFLAGS", "CGO_LDFLAGS"} { 53 for _, name := range []string{"CGO_CFLAGS", "CGO_CPPFLAGS", "CGO_CXXFLAGS", "CGO_LDFLAGS"} {
diff --git a/meta/recipes-devtools/go/go/0010-cmd-go-clear-GOROOT-for-func-ldShared-when-trimpath-.patch b/meta/recipes-devtools/go/go/0010-cmd-go-clear-GOROOT-for-func-ldShared-when-trimpath-.patch
index 2c2f0cbfb5..ac70abd90e 100644
--- a/meta/recipes-devtools/go/go/0010-cmd-go-clear-GOROOT-for-func-ldShared-when-trimpath-.patch
+++ b/meta/recipes-devtools/go/go/0010-cmd-go-clear-GOROOT-for-func-ldShared-when-trimpath-.patch
@@ -30,19 +30,18 @@ diff --git a/src/cmd/go/internal/work/gc.go b/src/cmd/go/internal/work/gc.go
30index 3a173efee8..8b7a44e031 100644 30index 3a173efee8..8b7a44e031 100644
31--- a/src/cmd/go/internal/work/gc.go 31--- a/src/cmd/go/internal/work/gc.go
32+++ b/src/cmd/go/internal/work/gc.go 32+++ b/src/cmd/go/internal/work/gc.go
33@@ -728,7 +728,14 @@ func (gcToolchain) ldShared(b *Builder, root *Action, toplevelactions []*Action, 33@@ -727,7 +727,13 @@ func (gcToolchain) ldShared(b *Builder, root *Action, toplevelactions []*Action,
34 // the output file path is recorded in the .gnu.version_d section. 34 // the output file path is recorded in the .gnu.version_d section.
35 dir, targetPath := filepath.Split(targetPath) 35 dir, targetPath := filepath.Split(targetPath)
36 36
37- return b.Shell(root).run(dir, targetPath, nil, cfg.BuildToolexec, base.Tool("link"), "-o", targetPath, "-importcfg", importcfg, ldflags) 37- return b.Shell(root).run(dir, targetPath, cfgChangedEnv, cfg.BuildToolexec, base.Tool("link"), "-o", targetPath, "-importcfg", importcfg, ldflags)
38+ env := []string{}
39+ // When -trimpath is used, GOROOT is cleared 38+ // When -trimpath is used, GOROOT is cleared
40+ if cfg.BuildTrimpath { 39+ if cfg.BuildTrimpath {
41+ env = append(env, "GOROOT=") 40+ cfgChangedEnv = append(cfgChangedEnv, "GOROOT=")
42+ } else { 41+ } else {
43+ env = append(env, "GOROOT="+cfg.GOROOT) 42+ cfgChangedEnv = append(cfgChangedEnv, "GOROOT="+cfg.GOROOT)
44+ } 43+ }
45+ return b.Shell(root).run(dir, targetPath, env, cfg.BuildToolexec, base.Tool("link"), "-o", targetPath, "-importcfg", importcfg, ldflags) 44+ return b.Shell(root).run(dir, targetPath, cfgChangedEnv, cfg.BuildToolexec, base.Tool("link"), "-o", targetPath, "-importcfg", importcfg, ldflags)
46 } 45 }
47 46
48 func (gcToolchain) cc(b *Builder, a *Action, ofile, cfile string) error { 47 func (gcToolchain) cc(b *Builder, a *Action, ofile, cfile string) error {
diff --git a/meta/recipes-devtools/go/go/6d265b008e3d106b2706645e5a88cd8e2fb98953.patch b/meta/recipes-devtools/go/go/0011-cmd-link-stop-forcing-binutils-gold-dependency-on-aa.patch
index 58bd00fc73..8cf645c097 100644
--- a/meta/recipes-devtools/go/go/6d265b008e3d106b2706645e5a88cd8e2fb98953.patch
+++ b/meta/recipes-devtools/go/go/0011-cmd-link-stop-forcing-binutils-gold-dependency-on-aa.patch
@@ -1,7 +1,8 @@
1From 6d265b008e3d106b2706645e5a88cd8e2fb98953 Mon Sep 17 00:00:00 2001 1From 6d265b008e3d106b2706645e5a88cd8e2fb98953 Mon Sep 17 00:00:00 2001
2From: Dirk Müller <dirk@dmllr.de> 2From: Dirk Müller <dirk@dmllr.de>
3Date: Wed, 09 Mar 2022 17:47:23 +0100 3Date: Wed, 09 Mar 2022 17:47:23 +0100
4Subject: [PATCH] cmd/link: stop forcing binutils-gold dependency on aarch64 4Subject: [PATCH 11/11] cmd/link: stop forcing binutils-gold dependency on
5 aarch64
5 6
6The bfd linker appears to be working just fine at least in version 7The bfd linker appears to be working just fine at least in version
72.41 or above. Reject the known broken one instead, which 82.41 or above. Reject the known broken one instead, which
@@ -21,7 +22,7 @@ diff --git a/src/cmd/link/internal/ld/lib.go b/src/cmd/link/internal/ld/lib.go
21index dfc72e02c0..2a2a304113 100644 22index dfc72e02c0..2a2a304113 100644
22--- a/src/cmd/link/internal/ld/lib.go 23--- a/src/cmd/link/internal/ld/lib.go
23+++ b/src/cmd/link/internal/ld/lib.go 24+++ b/src/cmd/link/internal/ld/lib.go
24@@ -1673,27 +1673,6 @@ func (ctxt *Link) hostlink() { 25@@ -1677,27 +1677,6 @@ func (ctxt *Link) hostlink() {
25 // Use lld to avoid errors from default linker (issue #38838) 26 // Use lld to avoid errors from default linker (issue #38838)
26 altLinker = "lld" 27 altLinker = "lld"
27 } 28 }
diff --git a/meta/recipes-devtools/go/go_1.24.6.bb b/meta/recipes-devtools/go/go_1.25.0.bb
index 46f5fbc6be..46f5fbc6be 100644
--- a/meta/recipes-devtools/go/go_1.24.6.bb
+++ b/meta/recipes-devtools/go/go_1.25.0.bb