diff --git a/cmd-link-use-correct-path-for-dynamic-loader-on-ppc6.patch b/cmd-link-use-correct-path-for-dynamic-loader-on-ppc6.patch deleted file mode 100644 index 25294d3e9dd513ed246480642c99cd480843eae2..0000000000000000000000000000000000000000 --- a/cmd-link-use-correct-path-for-dynamic-loader-on-ppc6.patch +++ /dev/null @@ -1,53 +0,0 @@ -From 241192ecd31ca03a6f68fa7e55bb9f66040d3a2f Mon Sep 17 00:00:00 2001 -From: Lynn Boger -Date: Thu, 14 Jul 2022 10:47:28 -0500 -Subject: [PATCH] cmd/link: use correct path for dynamic loader on ppc64le - -The setting of the path for the dynamic loader when building for -linux/ppc64le ELF v2 was incorrectly set to the path for -PPC64 ELF v1. This has not caused issues in the common cases -because this string can be set based on the default GO_LDSO setting. -It does result in an incorrect value when cross compiling binaries -with -buildmode=pie. - -Updates #53813 - -Change-Id: I84de1c97b42e0434760b76a57c5a05e055fbb730 ---- - src/cmd/link/internal/ppc64/obj.go | 13 +++++++------ - 1 file changed, 7 insertions(+), 6 deletions(-) - -diff --git a/src/cmd/link/internal/ppc64/obj.go b/src/cmd/link/internal/ppc64/obj.go -index b6d5ad92af..bca8fa9212 100644 ---- a/src/cmd/link/internal/ppc64/obj.go -+++ b/src/cmd/link/internal/ppc64/obj.go -@@ -38,9 +38,12 @@ import ( - ) - - func Init() (*sys.Arch, ld.Arch) { -- arch := sys.ArchPPC64 -- if buildcfg.GOARCH == "ppc64le" { -- arch = sys.ArchPPC64LE -+ arch := sys.ArchPPC64LE -+ dynld := "/lib64/ld64.so.2" -+ -+ if buildcfg.GOARCH == "ppc64" { -+ arch = sys.ArchPPC64 -+ dynld = "/lib64/ld64.so.1" - } - - theArch := ld.Arch{ -@@ -64,9 +67,7 @@ func Init() (*sys.Arch, ld.Arch) { - Machoreloc1: machoreloc1, - Xcoffreloc1: xcoffreloc1, - -- // TODO(austin): ABI v1 uses /usr/lib/ld.so.1, -- Linuxdynld: "/lib64/ld64.so.1", -- -+ Linuxdynld: dynld, - Freebsddynld: "XXX", - Openbsddynld: "XXX", - Netbsddynld: "XXX", --- -2.35.3 - diff --git a/disable_static_tests_part2.patch b/disable_static_tests_part2.patch index 6ad4e62fe39695e503869d10dc315f936dee783b..aa2d91c0bd249b12df302b9e9e348cb6d27a86b9 100644 --- a/disable_static_tests_part2.patch +++ b/disable_static_tests_part2.patch @@ -1,36 +1,13 @@ diff --git a/src/cmd/dist/test.go b/src/cmd/dist/test.go -index da5b179..6a772df 100644 +index 9f26606..2408505 100644 --- a/src/cmd/dist/test.go +++ b/src/cmd/dist/test.go -@@ -1247,18 +1247,20 @@ func (t *tester) cgoTest(dt *distTest) error { - fmt.Println("No support for static linking found (lacks libc.a?), skip cgo static linking test.") +@@ -1259,7 +1259,7 @@ func (t *tester) registerCgoTests() { } else { - if goos != "android" { -- t.addCmd(dt, "misc/cgo/testtls", t.goTest(), "-ldflags", `-linkmode=external -extldflags "-static -pthread"`, ".") -+ t.addCmd(dt, "misc/cgo/testtls", t.goTest(), "-ldflags", `-linkmode=external -extldflags "-static -pthread"`, "-tags=no_openssl") - } - t.addCmd(dt, "misc/cgo/nocgo", t.goTest(), ".") - t.addCmd(dt, "misc/cgo/nocgo", t.goTest(), "-ldflags", `-linkmode=external`, ".") - if goos != "android" { -- t.addCmd(dt, "misc/cgo/nocgo", t.goTest(), "-ldflags", `-linkmode=external -extldflags "-static -pthread"`, ".") -+ t.addCmd(dt, "misc/cgo/nocgo", t.goTest(), "-ldflags", `-linkmode=external -extldflags "-static -pthread"`, "-tags=no_openssl") -+ /* - t.addCmd(dt, "misc/cgo/test", t.goTest(), "-tags=static", "-ldflags", `-linkmode=external -extldflags "-static -pthread"`, ".") - // -static in CGO_LDFLAGS triggers a different code path - // than -static in -extldflags, so test both. - // See issue #16651. - cmd := t.addCmd(dt, "misc/cgo/test", t.goTest(), "-tags=static", ".") - setEnv(cmd, "CGO_LDFLAGS", "-static -pthread") -+ */ - } - } - -@@ -1268,7 +1270,7 @@ func (t *tester) cgoTest(dt *distTest) error { - t.addCmd(dt, "misc/cgo/test", t.goTest(), "-buildmode=pie", "-ldflags=-linkmode=internal", "-tags=internal,internal_pie", ".") - } - t.addCmd(dt, "misc/cgo/testtls", t.goTest(), "-buildmode=pie", ".") -- t.addCmd(dt, "misc/cgo/nocgo", t.goTest(), "-buildmode=pie", ".") -+ t.addCmd(dt, "misc/cgo/nocgo", t.goTest(), "-buildmode=pie", "-tags=no_openssl") + panic("unknown linkmode with static build: " + linkmode) } +- gt.tags = append(gt.tags, "static") ++ gt.tags = append(gt.tags, "static", "no_openssl") } - } + + t.registerTest("cgo:"+name, "../misc/cgo/test", gt, opts...) diff --git a/download b/download index e8687439f6ed15589f52d1263950c18ca44403e2..b16c04cb64d7b0ded0e198ed8e4924d23c844fcc 100644 --- a/download +++ b/download @@ -1,2 +1,2 @@ -80a0aee586c16f300f50ae00608f2697 go1.19.13-2-openssl-fips.tar.gz -ce5015db777532eb290518f735ecff36 go1.19.13.tar.gz +2de4d5b2699dc91fd0786dd01a8f19d2 go1.20.10-1-openssl-fips.tar.gz +f86ca83067451ddbe885f1af887095b8 go1.20.10.tar.gz diff --git a/golang.spec b/golang.spec index be6ab66236b31433b9b41409cc4b964ca8225a5b..6f936752bb1459dd809c9d33049d000702251070 100644 --- a/golang.spec +++ b/golang.spec @@ -30,20 +30,20 @@ # Define GOROOT macros %global goroot %{_prefix}/lib/%{name} %global gopath %{_datadir}/gocode -%global golang_arches x86_64 aarch64 ppc64le s390x loongarch64 +%global golang_arches x86_64 aarch64 ppc64le s390x %global golibdir %{_libdir}/%{name} # Golang build options. # Build golang using external/internal(close to cgo disabled) linking. -%ifarch x86_64 ppc64le %{arm} aarch64 s390x loongarch64 +%ifarch x86_64 ppc64le %{arm} aarch64 s390x %global external_linker 1 %else %global external_linker 0 %endif # Build golang with cgo enabled/disabled(later equals more or less to internal linking). -%ifarch x86_64 ppc64le %{arm} aarch64 s390x loongarch64 +%ifarch x86_64 ppc64le %{arm} aarch64 s390x %global cgo_enabled 1 %else %global cgo_enabled 0 @@ -57,7 +57,7 @@ %endif # Controls what ever we fail on failed tests -%ifarch x86_64 %{arm} aarch64 ppc64le s390x loongarch64 +%ifarch x86_64 %{arm} aarch64 ppc64le s390x %global fail_on_tests 1 %else %global fail_on_tests 0 @@ -70,12 +70,8 @@ %global shared 0 %endif -# Pre build std lib with -race enabled -%ifarch x86_64 -%global race 1 -%else +# Disabled due to 1.20 new cache usage, see 1.20 upstream release notes %global race 0 -%endif %ifarch x86_64 %global gohostarch amd64 @@ -95,13 +91,10 @@ %ifarch s390x %global gohostarch s390x %endif -%ifarch loongarch64 -%global gohostarch loong64 -%endif -%global go_api 1.19 -%global version 1.19.13 -%global pkg_release 2 +%global go_api 1.20 +%global version 1.20.10 +%global pkg_release 1 Name: golang Version: %{version} @@ -121,8 +114,6 @@ Source0: https://github.com/golang/go/archive/refs/tags/go%{version}.tar. Source1: https://github.com/golang-fips/go/archive/refs/tags/go%{version}-%{pkg_release}-openssl-fips.tar.gz # make possible to override default traceback level at build time by setting build tag rpm_crashtraceback Source2: fedora.go -Source3: loongarch64.tar.gz -Source4: loongarch64.patches # The compiler is written in Go. Needs go(1.4+) compiler for build. # Actual Go based bootstrap compiler provided by above source. @@ -153,10 +144,8 @@ Patch221: fix_TestScript_list_std.patch Patch1939923: skip_test_rhbz1939923.patch -Patch2: disable_static_tests_part1.patch -Patch3: disable_static_tests_part2.patch - -Patch227: cmd-link-use-correct-path-for-dynamic-loader-on-ppc6.patch +Patch2: disable_static_tests_part1.patch +Patch3: disable_static_tests_part2.patch # Having documentation separate was broken Obsoletes: %{name}-docs < 1.1-4 @@ -164,6 +153,9 @@ Obsoletes: %{name}-docs < 1.1-4 # RPM can't handle symlink -> dir with subpackages, so merge back Obsoletes: %{name}-data < 1.1.1-4 +# We don't build golang-race anymore, rhbz#2230599 +Obsoletes: golang-race < 1.20.0 + # These are the only RHEL/Fedora architectures that we compile this package for ExclusiveArch: %{golang_arches} @@ -253,7 +245,6 @@ popd 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-h2-bundle-fix-CVE-2023-39325.patch # Configure crypto tests pushd ../go-go%{version}-%{pkg_release}-openssl-fips @@ -267,16 +258,6 @@ popd %patch221 -p1 %patch1939923 -p1 -%patch227 -p1 - -## Apply loongarch64 patches -tar xf %{SOURCE3} -for p in $(cat %{SOURCE4}); do - patch -p1 -s -i loongarch64/$p -done - -## Delete loongarch64 directory -rm -rf loongarch64 cp %{SOURCE2} ./src/runtime/ @@ -360,12 +341,11 @@ cwd=$(pwd) src_list=$cwd/go-src.list pkg_list=$cwd/go-pkg.list shared_list=$cwd/go-shared.list -race_list=$cwd/go-race.list misc_list=$cwd/go-misc.list docs_list=$cwd/go-docs.list tests_list=$cwd/go-tests.list -rm -f $src_list $pkg_list $docs_list $misc_list $tests_list $shared_list $race_list -touch $src_list $pkg_list $docs_list $misc_list $tests_list $shared_list $race_list +rm -f $src_list $pkg_list $docs_list $misc_list $tests_list $shared_list +touch $src_list $pkg_list $docs_list $misc_list $tests_list $shared_list pushd $RPM_BUILD_ROOT%{goroot} find src/ -type d -a \( ! -name testdata -a ! -ipath '*/testdata/*' \) -printf '%%%dir %{goroot}/%p\n' >> $src_list find src/ ! -type d -a \( ! -ipath '*/testdata/*' -a ! -name '*_test*.go' \) -printf '%{goroot}/%p\n' >> $src_list @@ -396,13 +376,6 @@ pushd $RPM_BUILD_ROOT%{goroot} find pkg/*_dynlink/ ! -type d -printf '%{goroot}/%p\n' >> $shared_list %endif -%if %{race} - - find pkg/*_race/ -type d -printf '%%%dir %{goroot}/%p\n' >> $race_list - find pkg/*_race/ ! -type d -printf '%{goroot}/%p\n' >> $race_list - -%endif - find test/ -type d -printf '%%%dir %{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 @@ -547,40 +520,33 @@ cd .. %files -f go-shared.list shared %endif -%if %{race} -%files -f go-race.list race -%endif - %changelog -* Wed Oct 18 2023 Chang Gao - 1.19.13-1.0.1 +* Thu Dec 14 2023 Chang Gao - 1.20.10-1.0.1 - disable DISABLE_BoringCertAlgs_TEST test -- LoongArch64: bug fix and add some new features support (zhaoxiaolin@loongson.cn) -* Thu Oct 12 2023 David Benoit - 1.19.13-1 +* Fri Oct 13 2023 David Benoit - 1.20.10-1 +- Update to Go 1.20.10 - Fix CVE-2023-39325 -- Resolves: RHEL-12618 - -* Wed Aug 30 2023 David Benoit - 1.19.12-1 -- Update to Go 1.19.12 - Midstream patches -- Resolves: rhbz#2223641 +- Resolves: RHEL-12619 -* Fri Jun 30 2023 Liwei Ge - 1.19.10-1.0.1 -- update base to golang 1.19.10 (CVE-2023-29402 CVE-2023-29403 CVE-2023-29404 CVE-2023-29405) +* Mon Aug 14 2023 Alejandro Sáez - 1.20.6-2 +- Retire golang-race package +- Resolves: rhbz#2230599 -* Tue Jun 6 2023 David Benoit - 1.19.10-1 -- Update to Go 1.19.10 -- Resolves: rhbz#2217623 -- Resolves: rhbz#2217609 -- Resolves: rhbz#2217581 +* Tue Jul 25 2023 Alejandro Sáez - 1.20.6-1 +- Rebase to Go 1.20.6 +- Resolves: rhbz#2217596 -* Wed May 17 2023 Alejandro Sáez - 1.19.9-1 -- Rebase to Go 1.19.9 -- Resolves: rhbz#2204473 +* Mon May 29 2023 Alejandro Sáez - 1.20.4-1 +- Rebase to Go 1.20.4 +- Resolves: rhbz#2204474 -* Wed Mar 01 2023 David Benoit - 1.19.6-1 -- Rebase to Go 1.19.6 -- Resolves: rhbz#2174430 +* Tue Apr 11 2023 David Benoit - 1.20.3-1 +- Rebase to Go 1.20.3 +- Remove race archives +- Update static tests patches +- Resolves: rhbz#2185260 * Tue Jan 3 2023 David Benoit - 1.19.4-2 - Fix memory leaks in EVP_{sign,verify}_raw diff --git a/loongarch64.patches b/loongarch64.patches deleted file mode 100644 index 0219efb49e208b63992f9527cfbd9faff38ad747..0000000000000000000000000000000000000000 --- a/loongarch64.patches +++ /dev/null @@ -1,80 +0,0 @@ -0002-fix-misc-cgo-test-sigaltstack-size-on-loong64.patch -0003-fix-mabi-to-lp64-for-loong64.patch -0004-fix-runtime-defs_linux_loong64.patch -0005-fix-test-issue11656-for-loong64.patch -0006-fixup-stack-growth-after-fork-in-runtime.sigfillset.patch -0007-debug-elf-add-new-style-LoongArch-reloc-types.patch -0008-cmd-link-recognize-the-new-R_LARCH_32_PCREL-type-on-.patch -0009-runtime-internal-atomic-enable-atomic-64bit-types-fo.patch -0010-cmd-compile-add-missing-tail-calls-flag-for-linux-lo.patch -0011-cmd-compile-remove-the-resultInArg0-register-checks-.patch -0012-runtime-remove-the-fake-mstart-caller-in-systemstack.patch -0013-cmd-internal-obj-loong64-save-LR-after-decrementing-.patch -0014-runtime-minor-refactoring-of-_rt0_loong64_linux.patch -0015-runtime-fix-gcWriteBarrier-frame-size-on-loong64-mip.patch -0016-cmd-internal-obj-loong64-remove-invalid-branch-delay.patch -0017-cmd-compile-cmd-internal-obj-rename-loong64-instruct.patch -0018-math-implement-Sqrt-in-assembly-for-loong64.patch -0019-cmd-asm-add-RDTIME-L-H-.W-RDTIME.D-support-for-loong.patch -0020-runtime-use-StableCounter-implement-cputicks-on-linu.patch -0021-cmd-compile-remove-atomic-Cas-Xchg-and-Xadd-intrinsi.patch -0022-runtime-fix-runtime.usleep-on-linux-loong64.patch -0023-cmd-internal-obj-remove-redundant-cnames-on-loong64.patch -0024-runtime-save-fetch-g-register-during-VDSO-on-loong64.patch -0025-runtime-save-restore-callee-saved-registers-in-loong.patch -0026-runtime-add-comment-for-sys_linux_loong64.patch -0027-runtime-add-support-for-buildmode-c-shared-on-loong6.patch -0028-cmd-compile-add-support-for-buildmode-c-shared-on-lo.patch -0029-cmd-internal-obj-loong64-cmd-internal-objabi-add-c-s.patch -0030-cmd-link-add-support-for-buildmode-c-shared-on-loong.patch -0031-cmd-internal-sys-enable-c-shared-feature-on-loong64.patch -0032-cmd-dist-misc-cgo-testcshared-enable-c-shared-test-o.patch -0033-cmd-compile-move-SSA-rotate-instruction-detection-to.patch -0034-cmd-compile-combine-multiple-rotate-instructions.patch -0035-cmd-internal-obj-loong64-add-MASKEQZ-and-MASKNEZ-ins.patch -0036-cmd-internal-obj-loong64-add-ROTR-ROTRV-instructions.patch -0037-cmd-compile-intrinsify-RotateLeft-32-64-on-loong64.patch -0038-cmd-compile-intrinsify-Add64-on-loong64.patch -0039-cmd-compile-intrinsify-Sub64-on-loong64.patch -0040-cmd-link-detect-glibc-vs-musl-ldso-at-link-time.patch -0041-runtime-mark-morestack_noctxt-SPWRITE-for-linux-loon.patch -0042-runtime-using-wyrand-for-fastrand-on-linux-loong64.patch -0043-cmd-compile-cmd-dist-cmd-go-enable-pie-buildmode-for.patch -0044-cmd-compile-cmd-link-cmd-internal-runtime-support-bu.patch -0045-cmd-link-cmd-internal-runtime-support-buildmode-plug.patch -0046-enable-test-for-buildmode-share-plugin.patch -0047-cmd-internal-runtime-enable-memory-sanitizer-on-loon.patch -0048-enable-test-for-msan.patch -0049-cmd-internal-runtime-enable-address-sanitizer-on-loo.patch -0050-enable-test-for-asan.patch -0051-Revert-cmd-compile-remove-atomic-Cas-Xchg-and-Xadd-i.patch -0052-cmd-compile-sign-extend-the-2nd-argument-of-the-Atom.patch -0053-cmd-asm-link-loong64-Implement-the-IE-model-to-acces.patch -0054-net-disable-TestLookupDotsWithRemoteSource-and-TestL.patch -0055-enable-c-archive-test-on-linux-loong64.patch -0056-runtime-no-need-to-save-these-registers-in-load_g-sa.patch -0057-cmd-internal-obj-loong64-add-support-for-movgr2cf-an.patch -0058-cmd-cmd-vendor-pick-up-updates-for-golang.org-x-arch.patch -0059-cmd-internal-objfile-add-loong64-disassembler-suppor.patch -0060-cmd-compile-disable-address-folding-for-globals-for-.patch -0061-cmd-compile-internal-runtime-use-NOOP-for-hardware-N.patch -0062-cmd-link-internal-loong64-use-BREAK-0-as-the-code-pa.patch -0063-cmd-asm-runtime-remove-the-RSB-register-from-loong64.patch -0064-cmd-internal-obj-loong64-realize-all-unconditional-j.patch -0065-cmd-internal-obj-loong64-clean-up-code-for-short-con.patch -0066-cmd-internal-obj-loong64-assemble-BEQ-BNEs-comparing.patch -0067-cmd-internal-obj-loong64-remove-Optab.family-and-reo.patch -0068-cmd-asm-support-the-PCALIGN-directive-on-loong64.patch -0069-internal-bytealg-runtime-align-some-loong64-asm-loop.patch -0070-cmd-link-bump-loong64-function-alignment-to-16-bytes.patch -0071-cmd-compile-remove-output-registers-limit-for-MUL-DI.patch -0072-cmd-compile-optimize-multiplication-on-loong64.patch -0073-cmd-compile-split-DIVV-DIVVU-op-on-loong64.patch -0074-cmd-internal-obj-loong64-auto-align-loop-heads-to-16.patch -0075-cmd-internal-obj-loong64-add-atomic-memory-access-in.patch -0076-cmd-compiler-runtime-internal-atomic-optimize-xchg-a.patch -0077-cmd-compiler-runtime-internal-atomic-optimize-xadd-a.patch -0078-cmd-compiler-runtime-internal-atomic-optimize-And-32.patch -0079-syscall-implement-Ptrace-Set-Get-Regs-using-PTRACE_-.patch -0080-cmd-internal-obj-loong64-remove-the-invalid-plan9-fo.patch -0081-internal-sysinfo-print-cpu-type-from-cpuinfo-when-in.patch diff --git a/loongarch64.tar.gz b/loongarch64.tar.gz deleted file mode 100644 index 8f78784bbc57921846be9b9bd8d296f914ec2327..0000000000000000000000000000000000000000 Binary files a/loongarch64.tar.gz and /dev/null differ