From 887c3dbef0ded8d3921922de2f035361a452778c Mon Sep 17 00:00:00 2001 From: Archana Date: Mon, 25 Mar 2024 22:23:04 +0530 Subject: [PATCH] - Rebase to Go1.22.1 - Resolves RHEL-29526 --- .gitignore | 2 ++ 0001-Modify-go.env.patch | 22 ++++++++++++---------- golang.spec | 17 +++++++++++++++-- re-enable-cgo.patch | 31 +++++++++++++++++++++++++++++++ sources | 4 ++-- 5 files changed, 62 insertions(+), 14 deletions(-) create mode 100644 re-enable-cgo.patch diff --git a/.gitignore b/.gitignore index 732db0c..b4d89ce 100644 --- a/.gitignore +++ b/.gitignore @@ -140,3 +140,5 @@ /go1.20.6-1-openssl-fips.tar.gz /go1.21.3.src.tar.gz /go1.21.3-1-openssl-fips.tar.gz +/go1.22.1.src.tar.gz +/go1.22.1-1-openssl-fips.tar.gz diff --git a/0001-Modify-go.env.patch b/0001-Modify-go.env.patch index d0b18c7..02fdbd0 100644 --- a/0001-Modify-go.env.patch +++ b/0001-Modify-go.env.patch @@ -1,18 +1,17 @@ -From 52d9cfec8124a9c7382bed5284246d9b18a21eb4 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Alejandro=20S=C3=A1ez?= -Date: Wed, 16 Aug 2023 07:06:38 +0200 -Subject: [PATCH] Modify go.env +From f02acf07aabbe16a7c312915e17f9d17cfc475cf Mon Sep 17 00:00:00 2001 +From: Archana Ravindar +Date: Mon, 25 Mar 2024 22:18:07 +0530 +Subject: [PATCH] set v3 as default ISA for AMD64 in go.env patch file -Change GOPROXY, GOSUMDB, and GOTOOLCHAIN --- - go.env | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) + go.env | 9 ++++++--- + 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/go.env b/go.env -index 6ff2b921d4..087208cd7c 100644 +index 6ff2b921d4..17d4053cdc 100644 --- a/go.env +++ b/go.env -@@ -4,9 +4,9 @@ +@@ -4,9 +4,12 @@ # Use the Go module mirror and checksum database by default. # See https://proxy.golang.org for details. @@ -25,6 +24,9 @@ index 6ff2b921d4..087208cd7c 100644 # See https://go.dev/doc/toolchain for details. -GOTOOLCHAIN=auto +GOTOOLCHAIN=local ++ ++# Set baseline amd64 ISA to v3 as distribution default ++GOAMD64=v3 -- -2.41.0 +2.44.0 diff --git a/golang.spec b/golang.spec index 8b8a4df..e17b292 100644 --- a/golang.spec +++ b/golang.spec @@ -101,10 +101,10 @@ %global gohostarch s390x %endif -%global go_api 1.21 +%global go_api 1.22 # Use only for prerelease versions #global go_prerelease rc3 -%global go_patch 3 +%global go_patch 1 %global go_version %{go_api}%{?go_patch:.%{go_patch}}%{?go_prerelease:~%{go_prerelease}} %global go_source %{go_api}%{?go_patch:.%{go_patch}}%{?go_prerelease} # Go FIPS package release @@ -186,6 +186,7 @@ Requires: %{name}-src = %{version}-%{release} Patch1: 0001-Modify-go.env.patch Patch4: 0004-cmd-link-use-gold-on-ARM-ARM64-only-if-gold-is-avail.patch +Patch5: re-enable-cgo.patch # Having documentation separate was broken Obsoletes: %{name}-docs < 1.1-4 @@ -328,6 +329,18 @@ cp %{SOURCE2} ./src/runtime/ # https://github.com/golang-fips/go/blob/main/patches/000-initial-setup.patch#L48 patch -p1 < ../go-go%{version}-%{pkg_release}-openssl-fips/patches/000-initial-setup.patch patch -p1 < ../go-go%{version}-%{pkg_release}-openssl-fips/patches/001-initial-openssl-for-fips.patch + patch -p1 < ../go-go%{version}-%{pkg_release}-openssl-fips/patches/002-strict-fips-runtime-detection.patch + patch -p1 < ../go-go%{version}-%{pkg_release}-openssl-fips/patches/003-init-openssl-v2-backend.patch + patch -p1 < ../go-go%{version}-%{pkg_release}-openssl-fips/patches/004-fixes.patch + patch -p1 < ../go-go%{version}-%{pkg_release}-openssl-fips/patches/005-fixes-2.patch + patch -p1 < ../go-go%{version}-%{pkg_release}-openssl-fips/patches/006-fixes-3.patch + patch -p1 < ../go-go%{version}-%{pkg_release}-openssl-fips/patches/007-fixes-4.patch + patch -p1 < ../go-go%{version}-%{pkg_release}-openssl-fips/patches/008-fixes-5.patch + patch -p1 < ../go-go%{version}-%{pkg_release}-openssl-fips/patches/009-fixes-6.patch + patch -p1 < ../go-go%{version}-%{pkg_release}-openssl-fips/patches/010-fixes-7.patch + patch -p1 < ../go-go%{version}-%{pkg_release}-openssl-fips/patches/011-122-fixes.patch + patch -p1 < ../go-go%{version}-%{pkg_release}-openssl-fips/patches/012-fixes.patch + patch -p1 < ../go-go%{version}-%{pkg_release}-openssl-fips/patches/013-fixes.patch # Configure crypto tests echo "Configure crypto tests" diff --git a/re-enable-cgo.patch b/re-enable-cgo.patch new file mode 100644 index 0000000..e9f684d --- /dev/null +++ b/re-enable-cgo.patch @@ -0,0 +1,31 @@ +From 09ff18f22def1766faa746df87e57d5b68454246 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Alejandro=20S=C3=A1ez?= +Date: Tue, 5 Mar 2024 10:03:13 +0100 +Subject: [PATCH] Re-enable CGO in cmd/go and cmd/pprof + +--- + src/cmd/dist/build.go | 7 ------- + 1 file changed, 7 deletions(-) + +diff --git a/src/cmd/dist/build.go b/src/cmd/dist/build.go +index 32e59b446a..941abdcebd 100644 +--- a/src/cmd/dist/build.go ++++ b/src/cmd/dist/build.go +@@ -1304,13 +1304,6 @@ func timelog(op, name string) { + // to switch between the host and target configurations when cross-compiling. + func toolenv() []string { + var env []string +- if !mustLinkExternal(goos, goarch, false) { +- // Unless the platform requires external linking, +- // we disable cgo to get static binaries for cmd/go and cmd/pprof, +- // so that they work on systems without the same dynamic libraries +- // as the original build system. +- env = append(env, "CGO_ENABLED=0") +- } + if isRelease || os.Getenv("GO_BUILDER_NAME") != "" { + // Add -trimpath for reproducible builds of releases. + // Include builders so that -trimpath is well-tested ahead of releases. +-- +2.43.2 + + diff --git a/sources b/sources index 34c1a84..80977d8 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (go1.21.3.src.tar.gz) = c98d31b9c477c0ac4b6f6933adefb40fdce5cdbb171e5236e3b694fec9e5b04695487af734259eab304dd42e86341240621a781f54b60c719627fd7b5efe4742 -SHA512 (go1.21.3-1-openssl-fips.tar.gz) = 869cd8d20ecd2c81ca4ae184fd1f73c124ee479334a002bda2135cb60ce919b0185f203f9d78f08c9616b32339f588aec6f9bc609d458e29dedcdab13dc985d3 +SHA512 (go1.22.1.src.tar.gz) = 627530c3fa2ea872478e1df8ee20db2ddc3c94581fff4e66bda21ca45a643e9915f97115401f79667cd7e856ccca1b40a842f4c0b509a472c75696e3bdb3a908 +SHA512 (go1.22.1-1-openssl-fips.tar.gz) = f6e7f1f3d2d0906bec56540ae74856cf27422da27e7e8ecc9d183774818e8501192a20e17d0ece43ca59389e9170faf521bc9eb2de19e639ccd81e520ca72a5c