Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package lapack for openSUSE:Factory checked in at 2026-03-11 20:50:22 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/lapack (Old) and /work/SRC/openSUSE:Factory/.lapack.new.8177 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "lapack" Wed Mar 11 20:50:22 2026 rev:64 rq:1338035 version:3.12.1 Changes: -------- --- /work/SRC/openSUSE:Factory/lapack/lapack.changes 2025-10-28 14:45:29.032207329 +0100 +++ /work/SRC/openSUSE:Factory/.lapack.new.8177/lapack.changes 2026-03-11 20:51:14.167880260 +0100 @@ -1,0 +2,7 @@ +Wed Mar 4 12:30:02 UTC 2026 - Richard Biener <[email protected]> + +- Add %bcond_with{,out} alternatives and disable by default for SLFO. +- Split baselibs.conf into two flavors, one for update-alternatives, + one for dropping them. Decide in %prep which one to choose. + +------------------------------------------------------------------- Old: ---- baselibs.conf New: ---- baselibs.conf.alternatives baselibs.conf.no-alternatives ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ lapack.spec ++++++ --- /var/tmp/diff_new_pack.RJSLZL/_old 2026-03-11 20:51:15.079918012 +0100 +++ /var/tmp/diff_new_pack.RJSLZL/_new 2026-03-11 20:51:15.083918178 +0100 @@ -1,6 +1,7 @@ # # spec file for package lapack # +# Copyright (c) 2026 SUSE LLC # Copyright (c) 2025 SUSE LLC and contributors # # All modifications and additions to the file contributed by third parties @@ -33,6 +34,12 @@ %define so_ver 3 %bcond_without tmg +%if %{suse_version} >= 1600 && !0%{?is_opensuse} +%bcond_with alternatives +%else +%bcond_without alternatives +%endif + # For Leap 15.X, we do not need arch dependent symlink names because no baselibs are generated %if 0%{?suse_version} >= 1500 %define a_x _%{_arch} @@ -45,7 +52,8 @@ URL: https://www.netlib.org/lapack/ Source0: https://github.com/Reference-LAPACK/lapack/archive/v%{version}.tar.gz#/%{pname}-%{version}.tar.gz Source98: lapack.rpmlintrc -Source99: baselibs.conf +Source99: baselibs.conf.alternatives +Source97: baselibs.conf.no-alternatives # PATCH-FIX-UPSTREAM Patch0: https://github.com/Reference-LAPACK/lapack/commit/b054023.patch#/lapack-deprecated-lwork-use.patch # PATCH-FIX-UPSTREAM @@ -81,19 +89,20 @@ - - - - - - - # LAPACK %package -n liblapack%{so_ver} Summary: Linear Algebra PACKage: Shared Library +%if %{with alternatives} Requires(post): update-alternatives Requires(postun): update-alternatives +%else +Conflicts: libopenblas_openmp0 +Conflicts: libopenblas_pthreads0 +Conflicts: libopenblas_serial0 +OrderWithRequires(pre): update-alternatives +Suggests: update-alternatives +%endif %description -n liblapack%{so_ver} LAPACK provides routines for solving systems of simultaneous linear @@ -147,19 +156,20 @@ - - - - - - - # BLAS %package -n libblas%{so_ver} Summary: Basic Linear Algebra Subprograms: Shared Library +%if %{with alternatives} Requires(post): update-alternatives Requires(postun): update-alternatives +%else +Conflicts: libopenblas_openmp0 +Conflicts: libopenblas_pthreads0 +Conflicts: libopenblas_serial0 +OrderWithRequires(pre): update-alternatives +Suggests: update-alternatives +%endif %description -n libblas%{so_ver} BLAS (Basic Linear Algebra Subprograms) is a standard library for @@ -196,20 +206,20 @@ This package provides the static library for BLAS. - - - - - - - - # LAPACKE %package -n liblapacke%{so_ver} Summary: Native C Interface to LAPACK: shared library +%if %{with alternatives} Requires(post): update-alternatives Requires(postun): update-alternatives +%else +Conflicts: libopenblas_openmp0 +Conflicts: libopenblas_pthreads0 +Conflicts: libopenblas_serial0 +OrderWithRequires(pre): update-alternatives +Suggests: update-alternatives +%endif %description -n liblapacke%{so_ver} This library provides a native C interface to LAPACK routines available @@ -242,19 +252,20 @@ - - - - - - - # CBLAS %package -n libcblas%{so_ver} Summary: Native C interface to BLAS: Shared Library +%if %{with alternatives} Requires(post): update-alternatives Requires(postun): update-alternatives +%else +Conflicts: libopenblas_openmp0 +Conflicts: libopenblas_pthreads0 +Conflicts: libopenblas_serial0 +OrderWithRequires(pre): update-alternatives +Suggests: update-alternatives +%endif %description -n libcblas%{so_ver} This library provides a native C interface to BLAS routines available @@ -286,14 +297,6 @@ This package contains the CBLAS static libraries. - - - - - - - - # TMGLIB %package -n libtmglib%{so_ver} @@ -320,14 +323,6 @@ tmglib as a static library. - - - - - - - - # MAN Pages %package -n lapack-man @@ -339,6 +334,11 @@ %prep %autosetup -p1 -n %{pname}-%{version} sed -i -E '1{s@#!/usr/bin/env python[0-9]*@#!%{_bindir}/python%{python3_version}@}' lapack_testing.py +%if %{with alternatives} +ln -s baselibs.conf.alternatives %{_sourcedir}/baselibs.conf +%else +ln -s baselibs.conf.no-alternatives %{_sourcedir}/baselibs.conf +%endif %build %ifarch %{ix86} @@ -380,6 +380,7 @@ %cmake_install %if %{with shared} +%if %{with alternatives} # Prepare for update-alternatives install -d %{buildroot}%{_sysconfdir}/alternatives install -d %{buildroot}%{_libdir}/{lapack,blas} @@ -395,6 +396,7 @@ do ln -s %{_sysconfdir}/alternatives/lib${t}.so.%{so_ver}%{?a_x} %{buildroot}%{_libdir}/lib${t}.so.%{so_ver} done +%endif %else # Remove headers and script files for static flavour to avoid file conflicts @@ -420,6 +422,7 @@ %ldconfig_scriptlets -n libtmglib%{so_ver} # BLAS +%if %{with alternatives} %post -n libblas%{so_ver} %{_sbindir}/update-alternatives --install \ %{_libdir}/libblas.so.%{so_ver} libblas.so.%{so_ver}%{?a_x} %{_libdir}/blas/libblas.so.%{so_ver} 50 @@ -430,9 +433,24 @@ if [ ! %{_libdir}/blas/libblas.so.%{so_ver} ] ; then %{_sbindir}/update-alternatives --remove libblas.so.%{so_ver}%{?a_x} %{_libdir}/blas/libblas.so.%{so_ver} fi +%else + +%post -n libblas%{so_ver} +/sbin/ldconfig + +%postun -n libblas%{so_ver} +/sbin/ldconfig + +# Remove existing alternatives on upgrade, if it exists +%pre -n libblas%{so_ver} +if [ $1 -eq 2 ] && [ -f %{_sysconfdir}/alternatives/libblas.so.%{so_ver}%{?a_x} ] ; then + %{_sbindir}/update-alternatives --remove libblas.so.%{so_ver}%{?a_x} +fi +%endif # /BLAS # LAPACK +%if %{with alternatives} %post -n liblapack%{so_ver} %{_sbindir}/update-alternatives --install \ %{_libdir}/liblapack.so.%{so_ver} liblapack.so.%{so_ver}%{?a_x} %{_libdir}/lapack/liblapack.so.%{so_ver} 50 @@ -443,9 +461,24 @@ if [ ! -f %{_libdir}/lapack/liblapack.so.%{so_ver} ] ; then %{_sbindir}/update-alternatives --remove liblapack.so.%{so_ver}%{?a_x} %{_libdir}/lapack/liblapack.so.%{so_ver} fi +%else + +%post -n liblapack%{so_ver} +/sbin/ldconfig + +%postun -n liblapack%{so_ver} +/sbin/ldconfig + +# Remove existing alternatives on upgrade, if it exists +%pre -n liblapack%{so_ver} +if [ $1 -eq 2 ] && [ -f %{_sysconfdir}/alternatives/liblapack.so.%{so_ver}%{?a_x} ] ; then + %{_sbindir}/update-alternatives --remove liblapack.so.%{so_ver}%{?a_x} +fi +%endif # /LAPACK # CBLAS +%if %{with alternatives} %post -n libcblas%{so_ver} %{_sbindir}/update-alternatives --install \ %{_libdir}/libcblas.so.%{so_ver} libcblas.so.%{so_ver}%{?a_x} %{_libdir}/blas/libcblas.so.%{so_ver} 50 @@ -456,9 +489,24 @@ if [ ! -f %{_libdir}/blas/libcblas.so.%{so_ver} ] ; then %{_sbindir}/update-alternatives --remove libcblas.so.%{so_ver}%{?a_x} %{_libdir}/blas/libcblas.so.%{so_ver} fi +%else + +%post -n libcblas%{so_ver} +/sbin/ldconfig + +%postun -n libcblas%{so_ver} +/sbin/ldconfig + +# Remove existing alternatives on upgrade, if it exists +%pre -n libcblas%{so_ver} +if [ $1 -eq 2 ] && [ -f %{_sysconfdir}/alternatives/libcblas.so.%{so_ver}%{?a_x} ] ; then + %{_sbindir}/update-alternatives --remove libcblas.so.%{so_ver}%{?a_x} +fi +%endif # /CBLAS # LAPACKE +%if %{with alternatives} %post -n liblapacke%{so_ver} %{_sbindir}/update-alternatives --install \ %{_libdir}/liblapacke.so.%{so_ver} liblapacke.so.%{so_ver}%{?a_x} %{_libdir}/lapack/liblapacke.so.%{so_ver} 50 @@ -469,6 +517,20 @@ if [ ! -f %{_libdir}/lapack/liblapacke.so.%{so_ver} ] ; then %{_sbindir}/update-alternatives --remove liblapacke.so.%{so_ver}%{?a_x} %{_libdir}/lapack/liblapacke.so.%{so_ver} fi +%else + +%post -n liblapacke%{so_ver} +/sbin/ldconfig + +%postun -n liblapacke%{so_ver} +/sbin/ldconfig + +# Remove existing alternatives on upgrade, if it exists +%pre -n liblapacke%{so_ver} +if [ $1 -eq 2 ] && [ -f %{_sysconfdir}/alternatives/liblapacke.so.%{so_ver}%{?a_x} ] ; then + %{_sbindir}/update-alternatives --remove liblapacke.so.%{so_ver}%{?a_x} +fi +%endif # /LAPACKE %endif @@ -477,32 +539,48 @@ %files -n liblapack%{so_ver} %doc README.md %license LICENSE +%if %{with alternatives} %dir %{_libdir}/lapack %{_libdir}/lapack/liblapack.so.* %ghost %{_libdir}/liblapack.so.%{so_ver} %ghost %{_sysconfdir}/alternatives/liblapack.so.%{so_ver}%{?a_x} +%else +%{_libdir}/liblapack.so.%{so_ver}* +%endif %files -n libblas%{so_ver} %doc README.md %license LICENSE +%if %{with alternatives} %dir %{_libdir}/blas %{_libdir}/blas/libblas.so.* %ghost %{_libdir}/libblas.so.%{so_ver} %ghost %{_sysconfdir}/alternatives/libblas.so.%{so_ver}%{?a_x} +%else +%{_libdir}/libblas.so.%{so_ver}* +%endif %files -n liblapacke%{so_ver} +%if %{with alternatives} %dir %{_libdir}/lapack %{_libdir}/lapack/liblapacke.so.* %ghost %{_libdir}/liblapacke.so.%{so_ver} %ghost %{_sysconfdir}/alternatives/liblapacke.so.%{so_ver}%{?a_x} +%else +%{_libdir}/liblapacke.so.%{so_ver}* +%endif %files -n libcblas%{so_ver} %doc README.md %license LICENSE +%if %{with alternatives} %dir %{_libdir}/blas %{_libdir}/blas/libcblas.so.* %ghost %{_libdir}/libcblas.so.%{so_ver} %ghost %{_sysconfdir}/alternatives/libcblas.so.%{so_ver}%{?a_x} +%else +%{_libdir}/libcblas.so.%{so_ver}* +%endif %files -n libtmglib%{so_ver} %license LICENSE ++++++ baselibs.conf.alternatives ++++++ libblas3 -/usr/lib(64)?/libblas.so.3 requires "update-alternatives" postin "ln -sf /etc/alternatives/libblas.so.3_<targettype> /usr/%_lib/libblas.so.3" postin "/usr/sbin/update-alternatives --force --install /usr/%_lib/libblas.so.3 libblas.so.3_<targettype> /usr/%_lib/blas/libblas.so.3 50" postun "/usr/sbin/update-alternatives --remove libblas.so.3_<targettype> /usr/%_lib/blas/libblas.so.3" libcblas3 -/usr/lib(64)?/libcblas.so.3 requires "update-alternatives" postin "ln -sf /etc/alternatives/libcblas.so.3_<targettype> /usr/%_lib/libcblas.so.3" postin "/usr/sbin/update-alternatives --force --install /usr/%_lib/libcblas.so.3 libcblas.so.3_<targettype> /usr/%_lib/blas/libcblas.so.3 50" postun "/usr/sbin/update-alternatives --remove libcblas.so.3_<targettype> /usr/%_lib/blas/libcblas.so.3" liblapack3 -/usr/lib(64)?/liblapack.so.3 requires "update-alternatives" postin "ln -sf /etc/alternatives/liblapack.so.3_<targettype> /usr/%_lib/liblapack.so.3" postin "/usr/sbin/update-alternatives --force --install /usr/%_lib/liblapack.so.3 liblapack.so.3_<targettype> /usr/%_lib/lapack/liblapack.so.3 50" postun "/usr/sbin/update-alternatives --remove liblapack.so.3_<targettype> /usr/%_lib/lapack/liblapack.so.3" liblapacke3 -/usr/lib(64)?/liblapacke.so.3 requires "update-alternatives" postin "ln -sf /etc/alternatives/liblapacke.so.3_<targettype> /usr/%_lib/liblapacke.so.3" postin "/usr/sbin/update-alternatives --force --install /usr/%_lib/liblapacke.so.3 liblapacke.so.3_<targettype> /usr/%_lib/lapack/liblapacke.so.3 50" postun "/usr/sbin/update-alternatives --remove liblapacke.so.3_<targettype> /usr/%_lib/lapack/liblapacke.so.3" # Do not package pkgconfig files for devel packages as they lead to "choice" # issues between -devel and -32bit-devel when using pkgconfig(FOO) based deps blas-devel -/usr/lib(64)?/pkgconfig/blas.pc requires "blas-devel-<targettype> = <version>" requires "libblas3-<targettype> = <version>" cblas-devel -/usr/lib(64)?/pkgconfig/cblas.pc requires "blas-devel-<targettype> = <version>" requires "libcblas3-<targettype> = <version>" lapack-devel -/usr/lib(64)?/pkgconfig/lapack.pc requires "blas-devel-<targettype> = <version>" requires "liblapack3-<targettype> = <version>" lapacke-devel -/usr/lib(64)?/pkgconfig/lapacke.pc requires "lapack-devel-<targettype> = <version>" requires "liblapacke3-<targettype> = <version>" ++++++ baselibs.conf.no-alternatives ++++++ libblas3 conflicts "libopenblas_openmp0-<targettype>" conflicts "libopenblas_pthreads0-<targettype>" conflicts "libopenblas_serial0-<targettype>" pre "[ $1 -eq 2 ] && [ -f %{_sysconfdir}/alternatives/libblas.so.3 ] && %{_sbindir}/update-alternatives --remove libblas.so.3 || true" libcblas3 conflicts "libopenblas_openmp0-<targettype>" conflicts "libopenblas_pthreads0-<targettype>" conflicts "libopenblas_serial0-<targettype>" pre "[ $1 -eq 2 ] && [ -f %{_sysconfdir}/alternatives/libcblas.so.3 ] && %{_sbindir}/update-alternatives --remove libcblas.so.3 || true" liblapack3 conflicts "libopenblas_openmp0-<targettype>" conflicts "libopenblas_pthreads0-<targettype>" conflicts "libopenblas_serial0-<targettype>" pre "[ $1 -eq 2 ] && [ -f %{_sysconfdir}/alternatives/liblapack.so.3 ] && %{_sbindir}/update-alternatives --remove liblapack.so.3 || true" liblapacke3 conflicts "libopenblas_openmp0-<targettype>" conflicts "libopenblas_pthreads0-<targettype>" conflicts "libopenblas_serial0-<targettype>" pre "[ $1 -eq 2 ] && [ -f %{_sysconfdir}/alternatives/liblapacke.so.3 ] && %{_sbindir}/update-alternatives --remove liblapacke.so.3 || true" # Do not package pkgconfig files for devel packages as they lead to "choice" # issues between -devel and -32bit-devel when using pkgconfig(FOO) based deps blas-devel -/usr/lib(64)?/pkgconfig/blas.pc requires "blas-devel-<targettype> = <version>" requires "libblas3-<targettype> = <version>" cblas-devel -/usr/lib(64)?/pkgconfig/cblas.pc requires "blas-devel-<targettype> = <version>" requires "libcblas3-<targettype> = <version>" lapack-devel -/usr/lib(64)?/pkgconfig/lapack.pc requires "blas-devel-<targettype> = <version>" requires "liblapack3-<targettype> = <version>" lapacke-devel -/usr/lib(64)?/pkgconfig/lapacke.pc requires "lapack-devel-<targettype> = <version>" requires "liblapacke3-<targettype> = <version>"
