File _patchinfo of Package patchinfo.40290
<patchinfo incident="40290">
<issue tracker="bnc" id="1247326">[SLFO:Main] go1.21 fails to build on s390x at -buildmode=shared std for some workers only</issue>
<issue tracker="bnc" id="1247816">go1.21,go1.22,go1.23: go1.x toolchain packages shorten bootstrap chain to go1.21 bootstrapped with gccgo</issue>
<issue tracker="bnc" id="1245292">[SUSE:SLFO:Main] go1.16 unresolvable on all architectures</issue>
<issue tracker="jsc" id="PED-1962"/>
<packager>jfkw</packager>
<rating>moderate</rating>
<category>recommended</category>
<summary>Recommended update for go1.21</summary>
<description>This update for go1.21 fixes the following issues:
- The support for -buildmode=shared only depends on the go version and
architecture, not how it was bootstrapped
* Refs bsc#1247816 bootstrap go1.21 with gccgo
* Refs bsc#1247326 SLFO:Main go1.21 fails to build on s390x at
-buildmode=shared std for some workers only
* Refs jsc#PED-1962 Reduce go1.x RPM installed file size by
splitting .so and .a files into an optional subpackage
- Packaging improvements:
* Refs bsc#1245292 go1.16 unresolveable on SLFO:Main. Recommended
mitigation for SLFO:Main is to bootstrap go1.21 with gccgo and
delete go1.16 through go1.20, all of which are EOL.
* Refs bsc#1247816 bootstrap go1.21 with gccgo
* Update %bcond_with gccgo_go121 to a version unique name from
%bcond_with gccgo. OBS prjconf does not support a conditional
%_with configuration to match just one package. Use a unique
name that is defined only in go1.21 packaging. Bootstrap
go1.21 with gcc-go by adding the following to prjconf:
Macros:
%_with_gccgo_go121 1
:Macros
* Update to %define gcc_go_version from 11 to 13 for SLE. gcc13
provides go1.18 needed for bootstrapping go1.21.
* Current Go bootstrap status: gcc13, gcc14, gcc15 all provide
go1.18 language level gccgo. go1.21 is the latest Go toolchain
that can bootstrap with go1.18 and thus gccgo, newer Go
toolchains require newer bootstrap versions. No newer gccgo
language level support has been announced, so go1.21 is the
initial Go bootstrap version until that changes. Recommended
for all distribution repositories to use the above prjconf to
shorten the bootstrap toolchain and optionally remove EOL go
versions older than go1.21.
- Packaging improvements:
* Rebase gcc-go.patch for go1.21
* Refs bsc#1247816 bootstrap go1.21 with gccgo
- Enable loongarch64 builds
</description>
</patchinfo>