summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/go/go/filter-build-paths.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-devtools/go/go/filter-build-paths.patch')
-rw-r--r--meta/recipes-devtools/go/go/filter-build-paths.patch57
1 files changed, 0 insertions, 57 deletions
diff --git a/meta/recipes-devtools/go/go/filter-build-paths.patch b/meta/recipes-devtools/go/go/filter-build-paths.patch
deleted file mode 100644
index a1aa37c2a4..0000000000
--- a/meta/recipes-devtools/go/go/filter-build-paths.patch
+++ /dev/null
@@ -1,57 +0,0 @@
-From 3bdbce685c688a27eece36ccc8be9b50b4849498 Mon Sep 17 00:00:00 2001
-From: Richard Purdie <richard.purdie@linuxfoundation.org>
-Date: Sat, 2 Jul 2022 23:08:13 +0100
-Subject: [PATCH] go: Filter build paths on staticly linked arches
-
-Filter out build time paths from ldflags and other flags variables when they're
-embedded in the go binary so that builds are reproducible regardless of build
-location. This codepath is hit for statically linked go binaries such as those
-on mips/ppc.
-
-Upstream-Status: Pending
-Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-
----
- src/cmd/go/internal/load/pkg.go | 15 +++++++++++++--
- 1 file changed, 13 insertions(+), 2 deletions(-)
-
-diff --git a/src/cmd/go/internal/load/pkg.go b/src/cmd/go/internal/load/pkg.go
-index 046f508..353cbc4 100644
---- a/src/cmd/go/internal/load/pkg.go
-+++ b/src/cmd/go/internal/load/pkg.go
-@@ -2256,6 +2256,17 @@ func (p *Package) collectDeps() {
- // to their VCS information (vcsStatusError).
- var vcsStatusCache par.Cache
-
-+func filterCompilerFlags(flags string) string {
-+ var newflags []string
-+ for _, flag := range strings.Fields(flags) {
-+ if strings.HasPrefix(flag, "--sysroot") || strings.HasPrefix(flag, "-fmacro-prefix-map") || strings.HasPrefix(flag, "-fdebug-prefix-map") {
-+ continue
-+ }
-+ newflags = append(newflags, flag)
-+ }
-+ return strings.Join(newflags, " ")
-+}
-+
- // setBuildInfo gathers build information, formats it as a string to be
- // embedded in the binary, then sets p.Internal.BuildInfo to that string.
- // setBuildInfo should only be called on a main package with no errors.
-@@ -2353,7 +2364,7 @@ func (p *Package) setBuildInfo(includeVCS bool) {
- if gcflags := BuildGcflags.String(); gcflags != "" && cfg.BuildContext.Compiler == "gc" {
- appendSetting("-gcflags", gcflags)
- }
-- if ldflags := BuildLdflags.String(); ldflags != "" {
-+ if ldflags := filterCompilerFlags(BuildLdflags.String()); ldflags != "" {
- // https://go.dev/issue/52372: only include ldflags if -trimpath is not set,
- // since it can include system paths through various linker flags (notably
- // -extar, -extld, and -extldflags).
-@@ -2392,7 +2403,7 @@ func (p *Package) setBuildInfo(includeVCS bool) {
- // subset of flags that are known not to be paths?
- if cfg.BuildContext.CgoEnabled && !cfg.BuildTrimpath {
- for _, name := range []string{"CGO_CFLAGS", "CGO_CPPFLAGS", "CGO_CXXFLAGS", "CGO_LDFLAGS"} {
-- appendSetting(name, cfg.Getenv(name))
-+ appendSetting(name, filterCompilerFlags(cfg.Getenv(name)))
- }
- }
- appendSetting("GOARCH", cfg.BuildContext.GOARCH)