Update to go1.21rc3

Update bundled dependencies.
Update pcre-devel to pcre2-devel
Add go-filesystem
Remove skipping tests, related: https://github.com/golang/go/issues/39466
Remove 0002-syscall-expose-IfInfomsg.X__ifi_pad-on-s390x.patch, already merged
Rename 0003-cmd-go-disable-Google-s-proxy-and-sumdb.patch to 0001-Disable-Google-s-proxy-sumdb-and-toolchain.patch
Update 0001-Disable-Google-s-proxy-sumdb-and-toolchain.patch
Update 0004-cmd-link-use-gold-on-ARM-ARM64-only-if-gold-is-avail.patch

Resolves: rhbz#2128303
Resolves: rhbz#2215635
Resolves: rhbz#2172392
This commit is contained in:
Alejandro Sáez 2023-06-20 17:54:01 +02:00
parent 3a84733de2
commit 3fe4f3f05f
7 changed files with 96 additions and 152 deletions

3
.gitignore vendored
View File

@ -134,3 +134,6 @@
/go1.20.4.src.tar.gz /go1.20.4.src.tar.gz
/go1.20.5.src.tar.gz /go1.20.5.src.tar.gz
/go1.20.6.src.tar.gz /go1.20.6.src.tar.gz
/go1.21rc1.src.tar.gz
/go1.21rc2.src.tar.gz
/go1.21rc3.src.tar.gz

View File

@ -0,0 +1,50 @@
From 34168586ca0af835b5e836b6fe458e2ff23a9820 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Alejandro=20S=C3=A1ez?= <asm@redhat.com>
Date: Tue, 4 Jul 2023 18:12:14 +0200
Subject: [PATCH] Disable Google's proxy, sumdb and toolchain
---
go.env | 6 +++---
src/cmd/go/testdata/script/mod_sumdb_golang.txt | 6 +++---
2 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/go.env b/go.env
index 6ff2b921d4..087208cd7c 100644
--- a/go.env
+++ b/go.env
@@ -4,9 +4,9 @@
# Use the Go module mirror and checksum database by default.
# See https://proxy.golang.org for details.
-GOPROXY=https://proxy.golang.org,direct
-GOSUMDB=sum.golang.org
+GOPROXY=direct
+GOSUMDB=off
# Automatically download newer toolchains as directed by go.mod files.
# See https://go.dev/doc/toolchain for details.
-GOTOOLCHAIN=auto
+GOTOOLCHAIN=local
diff --git a/src/cmd/go/testdata/script/mod_sumdb_golang.txt b/src/cmd/go/testdata/script/mod_sumdb_golang.txt
index 8698412f78..78e8e87700 100644
--- a/src/cmd/go/testdata/script/mod_sumdb_golang.txt
+++ b/src/cmd/go/testdata/script/mod_sumdb_golang.txt
@@ -2,12 +2,12 @@
env GOPROXY=
env GOSUMDB=
go env GOPROXY
-stdout '^https://proxy.golang.org,direct$'
+stdout '^direct$'
go env GOSUMDB
-stdout '^sum.golang.org$'
+stdout '^off$'
env GOPROXY=https://proxy.golang.org
go env GOSUMDB
-stdout '^sum.golang.org$'
+stdout '^off$'
# Download direct from github.
--
2.40.1

View File

@ -1,41 +0,0 @@
From 67a4711d09c6595c17f32470c15bf471c287777d Mon Sep 17 00:00:00 2001
From: Michael Munday <munday@ca.ibm.com>
Date: Tue, 17 Jan 2017 11:33:38 -0500
Subject: [PATCH 2/3] syscall: expose IfInfomsg.X__ifi_pad on s390x
Exposing this field on s390x improves compatibility with the other
linux architectures, all of which already expose it.
Fixes #18628 and updates #18632.
Change-Id: I08e8e1eb705f898cd8822f8bee0d61ce11d514b5
---
src/syscall/ztypes_linux_s390x.go | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/src/syscall/ztypes_linux_s390x.go b/src/syscall/ztypes_linux_s390x.go
index 91f5ceff20..59a8b1fccd 100644
--- a/src/syscall/ztypes_linux_s390x.go
+++ b/src/syscall/ztypes_linux_s390x.go
@@ -449,12 +449,12 @@ type RtAttr struct {
}
type IfInfomsg struct {
- Family uint8
- _ uint8
- Type uint16
- Index int32
- Flags uint32
- Change uint32
+ Family uint8
+ X__ifi_pad uint8
+ Type uint16
+ Index int32
+ Flags uint32
+ Change uint32
}
type IfAddrmsg struct {
--
2.26.2

View File

@ -1,48 +0,0 @@
From fa250374b727439159bc9f203b854bb5df00186f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jakub=20=C4=8Cajka?= <jcajka@redhat.com>
Date: Mon, 27 May 2019 15:12:53 +0200
Subject: [PATCH 3/3] cmd/go: disable Google's proxy and sumdb
---
src/cmd/go/internal/cfg/cfg.go | 4 ++--
src/cmd/go/testdata/script/mod_sumdb_golang.txt | 6 +++---
2 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/src/cmd/go/internal/cfg/cfg.go b/src/cmd/go/internal/cfg/cfg.go
index 57a3c1ff6f..e56c60e591 100644
--- a/src/cmd/go/internal/cfg/cfg.go
+++ b/src/cmd/go/internal/cfg/cfg.go
@@ -266,8 +266,8 @@ var (
GOPPC64 = envOr("GOPPC64", fmt.Sprintf("%s%d", "power", buildcfg.GOPPC64))
GOWASM = envOr("GOWASM", fmt.Sprint(buildcfg.GOWASM))
- GOPROXY = envOr("GOPROXY", "https://proxy.golang.org,direct")
- GOSUMDB = envOr("GOSUMDB", "sum.golang.org")
+ GOPROXY = envOr("GOPROXY", "direct")
+ GOSUMDB = envOr("GOSUMDB", "off")
GOPRIVATE = Getenv("GOPRIVATE")
GONOPROXY = envOr("GONOPROXY", GOPRIVATE)
GONOSUMDB = envOr("GONOSUMDB", GOPRIVATE)
diff --git a/src/cmd/go/testdata/script/mod_sumdb_golang.txt b/src/cmd/go/testdata/script/mod_sumdb_golang.txt
index becd88b52e..b2a1250372 100644
--- a/src/cmd/go/testdata/script/mod_sumdb_golang.txt
+++ b/src/cmd/go/testdata/script/mod_sumdb_golang.txt
@@ -2,12 +2,12 @@
env GOPROXY=
env GOSUMDB=
go env GOPROXY
-stdout '^https://proxy.golang.org,direct$'
+stdout '^direct$'
go env GOSUMDB
-stdout '^sum.golang.org$'
+stdout '^off$'
env GOPROXY=https://proxy.golang.org
go env GOSUMDB
-stdout '^sum.golang.org$'
+stdout '^off$'
# Download direct from github.
--
2.31.1

View File

@ -1,38 +1,20 @@
From 5ccf9f47bf4f5ba53e0ab7338a7fd4626714cfb2 Mon Sep 17 00:00:00 2001 From 7506da0af38aa307f45664f0c787b5767cc7a87f Mon Sep 17 00:00:00 2001
From: Jeffery To <jeffery.to@gmail.com> From: =?UTF-8?q?Alejandro=20S=C3=A1ez?= <asm@redhat.com>
Date: Tue, 23 Nov 2021 15:05:37 +0800 Date: Thu, 22 Jun 2023 17:19:00 +0200
Subject: [PATCH] cmd/link: use gold on ARM/ARM64 only if gold is available Subject: [PATCH] Force gold in aarch64 until binutils 2.41 is on Fedora
COPY relocation handling on ARM/ARM64 has been fixed in recent versions
of the GNU linker. This switches to gold only if gold is available.
Fixes #22040.
--- ---
src/cmd/link/internal/ld/lib.go | 19 +++++++------------ src/cmd/link/internal/ld/lib.go | 8 +++-----
1 file changed, 7 insertions(+), 12 deletions(-) 1 file changed, 3 insertions(+), 5 deletions(-)
diff --git a/src/cmd/link/internal/ld/lib.go b/src/cmd/link/internal/ld/lib.go diff --git a/src/cmd/link/internal/ld/lib.go b/src/cmd/link/internal/ld/lib.go
index 9e13db7b71..2b379259a2 100644 index 91e2d5149c..99c305530b 100644
--- a/src/cmd/link/internal/ld/lib.go --- a/src/cmd/link/internal/ld/lib.go
+++ b/src/cmd/link/internal/ld/lib.go +++ b/src/cmd/link/internal/ld/lib.go
@@ -1390,25 +1390,20 @@ func (ctxt *Link) hostlink() { @@ -1605,15 +1605,13 @@ func (ctxt *Link) hostlink() {
} // https://go.dev/issue/22040
altLinker = "gold"
if ctxt.Arch.InFamily(sys.ARM, sys.ARM64) && buildcfg.GOOS == "linux" {
- // On ARM, the GNU linker will generate COPY relocations
- // even with -znocopyreloc set.
+ // On ARM, older versions of the GNU linker will generate
+ // COPY relocations even with -znocopyreloc set.
// https://sourceware.org/bugzilla/show_bug.cgi?id=19962
//
- // On ARM64, the GNU linker will fail instead of
- // generating COPY relocations.
+ // On ARM64, older versions of the GNU linker will fail
+ // instead of generating COPY relocations.
//
- // In both cases, switch to gold.
- altLinker = "gold"
-
- // If gold is not installed, gcc will silently switch - // If gold is not installed, gcc will silently switch
- // back to ld.bfd. So we parse the version information - // back to ld.bfd. So we parse the version information
- // and provide a useful error if gold is missing. - // and provide a useful error if gold is missing.
@ -42,12 +24,12 @@ index 9e13db7b71..2b379259a2 100644
cmd := exec.Command(name, args...) cmd := exec.Command(name, args...)
if out, err := cmd.CombinedOutput(); err == nil { if out, err := cmd.CombinedOutput(); err == nil {
- if !bytes.Contains(out, []byte("GNU gold")) { - if !bytes.Contains(out, []byte("GNU gold")) {
- log.Fatalf("ARM external linker must be gold (issue #15696), but is not: %s", out) - log.Fatalf("ARM64 external linker must be gold (issue #15696, 22040), but is not: %s", out)
+ if bytes.Contains(out, []byte("GNU gold")) { + if bytes.Contains(out, []byte("GNU gold")) {
+ altLinker = "gold" + altLinker = "gold"
} }
} }
} }
-- --
2.32.0 2.40.1

View File

@ -1,12 +1,4 @@
%bcond_with bootstrap %bcond_with bootstrap
# temporalily ignore test failures
# due to https://github.com/golang/go/issues/39466
%ifarch aarch64
%bcond_without ignore_tests
%else
%bcond_with ignore_tests
%endif
# build ids are not currently generated: # build ids are not currently generated:
# https://code.google.com/p/go/issues/detail?id=5238 # https://code.google.com/p/go/issues/detail?id=5238
# #
@ -103,15 +95,15 @@
%endif %endif
# Comment out go_prerelease and go_patch as needed # Comment out go_prerelease and go_patch as needed
%global go_api 1.20 %global go_api 1.21
#global go_prerelease rc3 %global go_prerelease rc3
%global go_patch 6 #global go_patch 5
%global go_version %{go_api}%{?go_patch:.%{go_patch}}%{?go_prerelease:~%{go_prerelease}} %global go_version %{go_api}%{?go_patch:.%{go_patch}}%{?go_prerelease:~%{go_prerelease}}
%global go_source %{go_api}%{?go_patch:.%{go_patch}}%{?go_prerelease} %global go_source %{go_api}%{?go_patch:.%{go_patch}}%{?go_prerelease}
# For rpmdev-bumpspec and releng automation # For rpmdev-bumpspec and releng automation
%global baserelease 2 %global baserelease 1
Name: golang Name: golang
Version: %{go_version} Version: %{go_version}
@ -136,7 +128,7 @@ BuildRequires: hostname
BuildRequires: net-tools BuildRequires: net-tools
%endif %endif
# for tests # for tests
BuildRequires: pcre-devel, glibc-static, perl-interpreter, procps-ng BuildRequires: pcre2-devel, glibc-static, perl-interpreter, procps-ng
Provides: go = %{version}-%{release} Provides: go = %{version}-%{release}
@ -144,23 +136,22 @@ Provides: go = %{version}-%{release}
# - in version filed substituted with . per versioning guidelines # - in version filed substituted with . per versioning guidelines
Provides: bundled(golang(github.com/google/pprof)) = 0.0.0.20221118152302.e6195bd50e26 Provides: bundled(golang(github.com/google/pprof)) = 0.0.0.20221118152302.e6195bd50e26
Provides: bundled(golang(github.com/ianlancetaylor/demangle)) = 0.0.0.20220319035150.800ac71e25c2 Provides: bundled(golang(github.com/ianlancetaylor/demangle)) = 0.0.0.20220319035150.800ac71e25c2
Provides: bundled(golang(golang.org/x/arch)) = 0.1.1.0.20221116201807.1bb480fc256a Provides: bundled(golang(golang.org/x/arch)) = 0.3.0
Provides: bundled(golang(golang.org/x/crypto)) = 0.3.1.0.20221117191849.2c476679df9a Provides: bundled(golang(golang.org/x/crypto)) = 0.10.0
Provides: bundled(golang(golang.org/x/mod)) = 0.7.0 Provides: bundled(golang(golang.org/x/mod)) = 0.10.1.0.20230606122920.62c7e578f1a7
Provides: bundled(golang(golang.org/x/net)) = 0.4.1.0.20230214201333.88ed8ca3307d Provides: bundled(golang(golang.org/x/net)) = 0.11.1.0.20230613203745.f5464ddb689c
Provides: bundled(golang(golang.org/x/sync)) = 0.1.0 Provides: bundled(golang(golang.org/x/sync)) = 0.2.1.0.20230601203510.93782cc822b6
Provides: bundled(golang(golang.org/x/sys)) = 0.3.0 Provides: bundled(golang(golang.org/x/sys)) = 0.9.0
Provides: bundled(golang(golang.org/x/term)) = 0.2.0 Provides: bundled(golang(golang.org/x/term)) = 0.9.0
Provides: bundled(golang(golang.org/x/text)) = 0.5.0 Provides: bundled(golang(golang.org/x/text)) = 0.10.1.0.20230613190012.2df65d769a9e
Provides: bundled(golang(golang.org/x/tools)) = 0.3.1.0.20230118190848.070db2996ebe Provides: bundled(golang(golang.org/x/tools)) = 0.9.4.0.20230613194514.c6c98305492
Requires: %{name}-bin = %{version}-%{release} Requires: %{name}-bin = %{version}-%{release}
Requires: %{name}-src = %{version}-%{release} Requires: %{name}-src = %{version}-%{release}
Requires: go-filesystem Requires: go-filesystem
Patch2: 0002-syscall-expose-IfInfomsg.X__ifi_pad-on-s390x.patch Patch1: 0001-Disable-Google-s-proxy-sumdb-and-toolchain.patch
Patch3: 0003-cmd-go-disable-Google-s-proxy-and-sumdb.patch Patch4: 0004-cmd-link-use-gold-on-ARM-ARM64-only-if-gold-is-avail.patch
Patch4: 0004-cmd-link-use-gold-on-ARM-ARM64-only-if-gold-is-avail.patch
# Having documentation separate was broken # Having documentation separate was broken
Obsoletes: %{name}-docs < 1.1-4 Obsoletes: %{name}-docs < 1.1-4
@ -407,12 +398,9 @@ echo "== 4 =="
echo "== 5 ==" echo "== 5 =="
%if %{race} %if %{race}
find pkg/*_race/ -type d -printf '%%%dir %{goroot}/%p\n' >> $race_list find pkg/*_race/ -type d -printf '%%%dir %{goroot}/%p\n' >> $race_list
find pkg/*_race/ ! -type d -printf '%{goroot}/%p\n' >> $race_list find pkg/*_race/ ! -type d -printf '%{goroot}/%p\n' >> $race_list
%endif %endif
find test/ -type d -printf '%%%dir %{goroot}/%p\n' >> $tests_list find test/ -type d -printf '%%%dir %{goroot}/%p\n' >> $tests_list
find test/ ! -type d -printf '%{goroot}/%p\n' >> $tests_list find test/ ! -type d -printf '%{goroot}/%p\n' >> $tests_list
find src/ -type d -a \( -name testdata -o -ipath '*/testdata/*' \) -printf '%%%dir %{goroot}/%p\n' >> $tests_list find src/ -type d -a \( -name testdata -o -ipath '*/testdata/*' \) -printf '%%%dir %{goroot}/%p\n' >> $tests_list
@ -540,13 +528,23 @@ fi
%endif %endif
%changelog %changelog
* Fri Jul 14 2023 Alejandro Sáez <asm@redhat.com> - 1.21~rc3-1
- Update to go1.21rc3
- Update bundled dependencies.
- Update pcre-devel to pcre2-devel
- Add go-filesystem
- Remove skipping tests, related: https://github.com/golang/go/issues/39466
- Remove 0002-syscall-expose-IfInfomsg.X__ifi_pad-on-s390x.patch, already merged
- Rename 0003-cmd-go-disable-Google-s-proxy-and-sumdb.patch to 0001-Disable-Google-s-proxy-sumdb-and-toolchain.patch
- Update 0001-Disable-Google-s-proxy-sumdb-and-toolchain.patch
- Update 0004-cmd-link-use-gold-on-ARM-ARM64-only-if-gold-is-avail.patch
- Resolves: rhbz#2128303
- Resolves: rhbz#2215635
- Resolves: rhbz#2172392
* Tue Jul 11 2023 Mike Rochefort <mroche@omenos.dev> - 1.20.6-1 * Tue Jul 11 2023 Mike Rochefort <mroche@omenos.dev> - 1.20.6-1
- Update to go 1.20.6 - Update to go 1.20.6
* Fri Jun 16 2023 Alejandro Sáez <asm@redhat.com> - 1.20.5-2
- Add go-filesystem
- Resolves: rhbz#2172392
* Tue Jun 06 2023 Alejandro Sáez <asm@redhat.com> - 1.20.5-1 * Tue Jun 06 2023 Alejandro Sáez <asm@redhat.com> - 1.20.5-1
- Update to go 1.20.5 - Update to go 1.20.5

View File

@ -1 +1 @@
SHA512 (go1.20.6.src.tar.gz) = 509ade7c2a76bd46b26dda4522692ceef5023aae21461b866006341f98544e7ea755aee230a9fea789ed7afb1c49a693c34c8337892e308dfb051aef2b08c975 SHA512 (go1.21rc3.src.tar.gz) = 2465abe1fab0039e10a586b4d53347ac8177e615d936b3de0fdd2dd13cf7a622e25bb5769c7f80e21154863898c1afc1b563bebb253f9ca538f3be7face9fe76