Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package gcc13 for openSUSE:Factory checked in at 2025-04-09 21:49:54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/gcc13 (Old) and /work/SRC/openSUSE:Factory/.gcc13.new.1907 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "gcc13" Wed Apr 9 21:49:54 2025 rev:34 rq:1267910 version:13.3.1+git9426 Changes: -------- --- /work/SRC/openSUSE:Factory/gcc13/gcc13.changes 2025-03-31 11:40:29.829490162 +0200 +++ /work/SRC/openSUSE:Factory/.gcc13.new.1907/gcc13.changes 2025-04-09 21:50:35.626935438 +0200 @@ -1,0 +2,6 @@ +Tue Apr 8 11:09:05 UTC 2025 - Richard Biener <rguent...@suse.com> + +- Make sure link editing is done against our own shared library + copy rather than the installed system runtime. [bsc#1240788] + +------------------------------------------------------------------- @@ -53 +59 @@ - in ppc64le. + in ppc64le (jsc#PED-7395). ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ cross-aarch64-gcc13.spec: same change cross-amdgcn-gcc13.spec: same change cross-arm-gcc13.spec: same change cross-arm-none-gcc13-bootstrap.spec: same change cross-arm-none-gcc13.spec: same change cross-avr-gcc13-bootstrap.spec: same change cross-avr-gcc13.spec: same change cross-bpf-gcc13.spec: same change cross-hppa-gcc13-bootstrap.spec: same change cross-hppa-gcc13.spec: same change cross-m68k-gcc13.spec: same change cross-mips-gcc13.spec: same change cross-nvptx-gcc13.spec: same change cross-ppc64-gcc13.spec: same change cross-ppc64le-gcc13-bootstrap.spec: same change cross-ppc64le-gcc13.spec: same change cross-pru-gcc13-bootstrap.spec: same change cross-pru-gcc13.spec: same change cross-riscv64-elf-gcc13-bootstrap.spec: same change cross-riscv64-elf-gcc13.spec: same change cross-riscv64-gcc13-bootstrap.spec: same change cross-riscv64-gcc13.spec: same change cross-rx-gcc13-bootstrap.spec: same change cross-rx-gcc13.spec: same change cross-s390x-gcc13-bootstrap.spec: same change cross-s390x-gcc13.spec: same change cross-sparc-gcc13.spec: same change cross-sparc64-gcc13.spec: same change cross-x86_64-gcc13.spec: same change gcc13-testresults.spec: same change ++++++ gcc13.spec ++++++ --- /var/tmp/diff_new_pack.yX8xfA/_old 2025-04-09 21:50:37.435011575 +0200 +++ /var/tmp/diff_new_pack.yX8xfA/_new 2025-04-09 21:50:37.435011575 +0200 @@ -2920,7 +2920,8 @@ fi %endif -# move shared libs from versionspecific dir to main libdir +# move shared libs from versionspecific dir to main libdir, keep a copy +# for link-editing in the .so for libname in \ %if %{build_fortran} libgfortran \ @@ -2984,8 +2985,16 @@ mv $lib %{buildroot}/%{mainlibdir}/ done if test -L %{buildroot}/%{versmainlibdir}/$libname.so; then - ln -sf %{mainlibdir}/`readlink %{buildroot}/%{versmainlibdir}/$libname.so | sed -e 's/\(.*\.so\.[^\.]*\).*/\1/'` \ - %{buildroot}/%{versmainlibdir}/$libname.so + cp %{buildroot}/%{mainlibdir}/`readlink %{buildroot}/%{versmainlibdir}/$libname.so` \ + %{buildroot}/%{versmainlibdir}/$libname.so.tem + rm %{buildroot}/%{versmainlibdir}/$libname.so + mv %{buildroot}/%{versmainlibdir}/$libname.so.tem %{buildroot}/%{versmainlibdir}/$libname.so + strip -g %{buildroot}/%{versmainlibdir}/$libname.so + else + if test -e %{buildroot}/%{versmainlibdir}/$libname.so; then + echo ERROR: unexpected linker script for $libname.so + exit 1 + fi fi %if %{biarch} if test -d %{buildroot}/%{versmainlibdirbi}; then @@ -2993,8 +3002,16 @@ mv $lib %{buildroot}/%{mainlibdirbi}/ done if test -L %{buildroot}/%{versmainlibdirbi}/$libname.so; then - ln -sf %{mainlibdirbi}/`readlink %{buildroot}/%{versmainlibdirbi}/$libname.so | sed -e 's/\(.*\.so\.[^\.]*\).*/\1/'` \ - %{buildroot}/%{versmainlibdirbi}/$libname.so + cp %{buildroot}/%{mainlibdirbi}/`readlink %{buildroot}/%{versmainlibdirbi}/$libname.so` \ + %{buildroot}/%{versmainlibdirbi}/$libname.so.tem + rm %{buildroot}/%{versmainlibdirbi}/$libname.so + mv %{buildroot}/%{versmainlibdirbi}/$libname.so.tem %{buildroot}/%{versmainlibdirbi}/$libname.so + strip -g %{buildroot}/%{versmainlibdirbi}/$libname.so + else + if test -e %{buildroot}/%{versmainlibdirbi}/$libname.so; then + echo ERROR: unexpected linker script for $libname.so + exit 1 + fi fi fi %endif @@ -3014,40 +3031,50 @@ %endif %endif -# Move libgcc_s around +# Move libgcc_s around, make sure a version specific copy is available +# for link editing +chmod a+x %{buildroot}/%{_lib}/libgcc_s.so.%{libgcc_s} if test -L %{buildroot}/%{_lib}/libgcc_s.so; then rm -f %{buildroot}/%{_lib}/libgcc_s.so - ln -sf /%{_lib}/libgcc_s.so.%{libgcc_s} %{buildroot}/%{versmainlibdir}/libgcc_s.so + cp %{buildroot}//%{_lib}/libgcc_s.so.%{libgcc_s} %{buildroot}/%{versmainlibdir}/libgcc_s.so + strip -g %{buildroot}/%{versmainlibdir}/libgcc_s.so else mv %{buildroot}/%{_lib}/libgcc_s.so %{buildroot}/%{versmainlibdir}/ + cp %{buildroot}//%{_lib}/libgcc_s.so.%{libgcc_s} %{buildroot}/%{versmainlibdir}/libgcc_s.so.%{libgcc_s} + strip -g %{buildroot}/%{versmainlibdir}/libgcc_s.so.%{libgcc_s} fi -chmod a+x %{buildroot}/%{_lib}/libgcc_s.so.%{libgcc_s} %if 0%{?usrmerged} mv %{buildroot}/%{_lib}/libgcc_s.so.%{libgcc_s} %{buildroot}/%{_slibdir}/libgcc_s.so.%{libgcc_s} %endif %if %{biarch} +chmod a+x %{buildroot}/lib/libgcc_s.so.%{libgcc_s} %if %{build_primary_64bit} if test -L %{buildroot}/lib/libgcc_s.so; then rm -f %{buildroot}/lib/libgcc_s.so - ln -sf /lib/libgcc_s.so.%{libgcc_s} %{buildroot}/%{versmainlibdirbi32}/libgcc_s.so + cp %{buildroot}/lib/libgcc_s.so.%{libgcc_s} %{buildroot}/%{versmainlibdirbi32}/libgcc_s.so + strip -g %{buildroot}/%{versmainlibdirbi32}/libgcc_s.so else mv %{buildroot}/lib/libgcc_s.so %{buildroot}/%{versmainlibdirbi32}/ + cp %{buildroot}/lib/libgcc_s.so.%{libgcc_s} %{buildroot}/%{versmainlibdirbi32}/libgcc_s.so.%{libgcc_s} + strip -g %{buildroot}/%{versmainlibdirbi32}/libgcc_s.so.%{libgcc_s} fi ln -sf %{versmainlibdirbi32}/libgcc_s.so %{buildroot}/%{versmainlibdirbi32}/libgcc_s_32.so -chmod a+x %{buildroot}/lib/libgcc_s.so.%{libgcc_s} %if 0%{?usrmerged} mv %{buildroot}/lib/libgcc_s.so.%{libgcc_s} %{buildroot}/%{slibdir}/libgcc_s.so.%{libgcc_s} %endif %else # 32-bit biarch systems +chmod a+x %{buildroot}/lib64/libgcc_s.so.%{libgcc_s} if test -L %{buildroot}/lib64/libgcc_s.so; then rm -f %{buildroot}/lib64/libgcc_s.so - ln -sf /lib64/libgcc_s.so.%{libgcc_s} %{buildroot}/%{versmainlibdirbi64}/libgcc_s.so + cp %{buildroot}/lib64/libgcc_s.so.%{libgcc_s} %{buildroot}/%{versmainlibdirbi64}/libgcc_s.so + strip -g %{buildroot}/%{versmainlibdirbi64}/libgcc_s.so else mv %{buildroot}/lib64/libgcc_s.so %{buildroot}/%{versmainlibdirbi64}/ + cp %{buildroot}/lib64/libgcc_s.so.%{libgcc_s} %{buildroot}/%{versmainlibdirbi64}/libgcc_s.so.%{libgcc_s} + strip -g %{buildroot}/%{versmainlibdirbi64}/libgcc_s.so.%{libgcc_s} fi ln -sf %{versmainlibdirbi64}/libgcc_s.so %{buildroot}/%{versmainlibdirbi64}/libgcc_s_64.so -chmod a+x %{buildroot}/lib64/libgcc_s.so.%{libgcc_s} %if 0%{?usrmerged} mv %{buildroot}/lib64/libgcc_s.so.%{libgcc_s} %{buildroot}/%{slibdir64}/libgcc_s.so.%{libgcc_s} %endif @@ -3450,6 +3477,7 @@ %versmainlib libgcc*.a %versmainlib libgcov.a %versmainlib libgcc_s*.so +%versmainlib libgcc_s.so.%{libgcc_s} %versmainlib libgomp.so %versmainlib libgomp.a %versmainlib libgomp.spec @@ -3516,6 +3544,7 @@ %versbiarchlib libgcc*.a %versbiarchlib libgcov.a %versbiarchlib libgcc_s*.so +%versbiarchlib libgcc_s.so.%{libgcc_s} %versbiarchlib libgomp.so %versbiarchlib libgomp.a %versbiarchlib libgomp.spec ++++++ gcc.spec.in ++++++ --- /var/tmp/diff_new_pack.yX8xfA/_old 2025-04-09 21:50:37.591018144 +0200 +++ /var/tmp/diff_new_pack.yX8xfA/_new 2025-04-09 21:50:37.595018313 +0200 @@ -1914,7 +1914,8 @@ fi %endif -# move shared libs from versionspecific dir to main libdir +# move shared libs from versionspecific dir to main libdir, keep a copy +# for link-editing in the .so for libname in \ %if %{build_fortran} libgfortran \ @@ -1978,8 +1979,16 @@ mv $lib %{buildroot}/%{mainlibdir}/ done if test -L %{buildroot}/%{versmainlibdir}/$libname.so; then - ln -sf %{mainlibdir}/`readlink %{buildroot}/%{versmainlibdir}/$libname.so | sed -e 's/\(.*\.so\.[^\.]*\).*/\1/'` \ - %{buildroot}/%{versmainlibdir}/$libname.so + cp %{buildroot}/%{mainlibdir}/`readlink %{buildroot}/%{versmainlibdir}/$libname.so` \ + %{buildroot}/%{versmainlibdir}/$libname.so.tem + rm %{buildroot}/%{versmainlibdir}/$libname.so + mv %{buildroot}/%{versmainlibdir}/$libname.so.tem %{buildroot}/%{versmainlibdir}/$libname.so + strip -g %{buildroot}/%{versmainlibdir}/$libname.so + else + if test -e %{buildroot}/%{versmainlibdir}/$libname.so; then + echo ERROR: unexpected linker script for $libname.so + exit 1 + fi fi %if %{biarch} if test -d %{buildroot}/%{versmainlibdirbi}; then @@ -1987,8 +1996,16 @@ mv $lib %{buildroot}/%{mainlibdirbi}/ done if test -L %{buildroot}/%{versmainlibdirbi}/$libname.so; then - ln -sf %{mainlibdirbi}/`readlink %{buildroot}/%{versmainlibdirbi}/$libname.so | sed -e 's/\(.*\.so\.[^\.]*\).*/\1/'` \ - %{buildroot}/%{versmainlibdirbi}/$libname.so + cp %{buildroot}/%{mainlibdirbi}/`readlink %{buildroot}/%{versmainlibdirbi}/$libname.so` \ + %{buildroot}/%{versmainlibdirbi}/$libname.so.tem + rm %{buildroot}/%{versmainlibdirbi}/$libname.so + mv %{buildroot}/%{versmainlibdirbi}/$libname.so.tem %{buildroot}/%{versmainlibdirbi}/$libname.so + strip -g %{buildroot}/%{versmainlibdirbi}/$libname.so + else + if test -e %{buildroot}/%{versmainlibdirbi}/$libname.so; then + echo ERROR: unexpected linker script for $libname.so + exit 1 + fi fi fi %endif @@ -2008,40 +2025,50 @@ %endif %endif -# Move libgcc_s around +# Move libgcc_s around, make sure a version specific copy is available +# for link editing +chmod a+x %{buildroot}/%{_lib}/libgcc_s.so.%{libgcc_s} if test -L %{buildroot}/%{_lib}/libgcc_s.so; then rm -f %{buildroot}/%{_lib}/libgcc_s.so - ln -sf /%{_lib}/libgcc_s.so.%{libgcc_s} %{buildroot}/%{versmainlibdir}/libgcc_s.so + cp %{buildroot}//%{_lib}/libgcc_s.so.%{libgcc_s} %{buildroot}/%{versmainlibdir}/libgcc_s.so + strip -g %{buildroot}/%{versmainlibdir}/libgcc_s.so else mv %{buildroot}/%{_lib}/libgcc_s.so %{buildroot}/%{versmainlibdir}/ + cp %{buildroot}//%{_lib}/libgcc_s.so.%{libgcc_s} %{buildroot}/%{versmainlibdir}/libgcc_s.so.%{libgcc_s} + strip -g %{buildroot}/%{versmainlibdir}/libgcc_s.so.%{libgcc_s} fi -chmod a+x %{buildroot}/%{_lib}/libgcc_s.so.%{libgcc_s} %if 0%{?usrmerged} mv %{buildroot}/%{_lib}/libgcc_s.so.%{libgcc_s} %{buildroot}/%{_slibdir}/libgcc_s.so.%{libgcc_s} %endif %if %{biarch} +chmod a+x %{buildroot}/lib/libgcc_s.so.%{libgcc_s} %if %{build_primary_64bit} if test -L %{buildroot}/lib/libgcc_s.so; then rm -f %{buildroot}/lib/libgcc_s.so - ln -sf /lib/libgcc_s.so.%{libgcc_s} %{buildroot}/%{versmainlibdirbi32}/libgcc_s.so + cp %{buildroot}/lib/libgcc_s.so.%{libgcc_s} %{buildroot}/%{versmainlibdirbi32}/libgcc_s.so + strip -g %{buildroot}/%{versmainlibdirbi32}/libgcc_s.so else mv %{buildroot}/lib/libgcc_s.so %{buildroot}/%{versmainlibdirbi32}/ + cp %{buildroot}/lib/libgcc_s.so.%{libgcc_s} %{buildroot}/%{versmainlibdirbi32}/libgcc_s.so.%{libgcc_s} + strip -g %{buildroot}/%{versmainlibdirbi32}/libgcc_s.so.%{libgcc_s} fi ln -sf %{versmainlibdirbi32}/libgcc_s.so %{buildroot}/%{versmainlibdirbi32}/libgcc_s_32.so -chmod a+x %{buildroot}/lib/libgcc_s.so.%{libgcc_s} %if 0%{?usrmerged} mv %{buildroot}/lib/libgcc_s.so.%{libgcc_s} %{buildroot}/%{slibdir}/libgcc_s.so.%{libgcc_s} %endif %else # 32-bit biarch systems +chmod a+x %{buildroot}/lib64/libgcc_s.so.%{libgcc_s} if test -L %{buildroot}/lib64/libgcc_s.so; then rm -f %{buildroot}/lib64/libgcc_s.so - ln -sf /lib64/libgcc_s.so.%{libgcc_s} %{buildroot}/%{versmainlibdirbi64}/libgcc_s.so + cp %{buildroot}/lib64/libgcc_s.so.%{libgcc_s} %{buildroot}/%{versmainlibdirbi64}/libgcc_s.so + strip -g %{buildroot}/%{versmainlibdirbi64}/libgcc_s.so else mv %{buildroot}/lib64/libgcc_s.so %{buildroot}/%{versmainlibdirbi64}/ + cp %{buildroot}/lib64/libgcc_s.so.%{libgcc_s} %{buildroot}/%{versmainlibdirbi64}/libgcc_s.so.%{libgcc_s} + strip -g %{buildroot}/%{versmainlibdirbi64}/libgcc_s.so.%{libgcc_s} fi ln -sf %{versmainlibdirbi64}/libgcc_s.so %{buildroot}/%{versmainlibdirbi64}/libgcc_s_64.so -chmod a+x %{buildroot}/lib64/libgcc_s.so.%{libgcc_s} %if 0%{?usrmerged} mv %{buildroot}/lib64/libgcc_s.so.%{libgcc_s} %{buildroot}/%{slibdir64}/libgcc_s.so.%{libgcc_s} %endif @@ -2448,6 +2475,7 @@ %versmainlib libgcc*.a %versmainlib libgcov.a %versmainlib libgcc_s*.so +%versmainlib libgcc_s.so.%{libgcc_s} %versmainlib libgomp.so %versmainlib libgomp.a %versmainlib libgomp.spec @@ -2514,6 +2542,7 @@ %versbiarchlib libgcc*.a %versbiarchlib libgcov.a %versbiarchlib libgcc_s*.so +%versbiarchlib libgcc_s.so.%{libgcc_s} %versbiarchlib libgomp.so %versbiarchlib libgomp.a %versbiarchlib libgomp.spec