Accepting request 238325 from devel:libraries:c_c++

- Move blas and lapack libraries to subdirectories for fixing
  update-alternatives [bnc#861081]
- Add %posttrans scripts for fixing migration problems. (forwarded request 238081 from Dmitry_R)

OBS-URL: https://build.opensuse.org/request/show/238325
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/lapack?expand=0&rev=37
This commit is contained in:
Stephan Kulow 2014-06-27 04:53:11 +00:00 committed by Git OBS Bridge
parent b79741853d
commit 8545029829
2 changed files with 50 additions and 16 deletions

View File

@ -1,3 +1,10 @@
-------------------------------------------------------------------
Wed Jun 18 08:15:19 UTC 2014 - dmitry_r@opensuse.org
- Move blas and lapack libraries to subdirectories for fixing
update-alternatives [bnc#861081]
- Add %posttrans scripts for fixing migration problems.
-------------------------------------------------------------------
Thu Nov 21 20:52:18 UTC 2013 - burnus@net-b.de

View File

@ -1,7 +1,7 @@
#
# spec file for package lapack
#
# Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany.
# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@ -173,7 +173,6 @@ This implementation introduces:
- input scalars passed by value;
- error code as a return value instead of the INFO parameter.
%package -n lapacke-devel
Requires: liblapacke3 = %{version}
Provides: lapacke = %{version}
@ -309,20 +308,29 @@ rm -f DOCS/psfig.tex # see bnc#757332
%install
install -d %{buildroot}/%{_libdir}
install -d %{buildroot}/%{_includedir}
install -d %{buildroot}/%{_sysconfdir}/alternatives
## BLAS
install -d %{buildroot}/%{_libdir}/blas
install -m 644 libblas.a %{buildroot}/%{_libdir}
install -m 644 libblas_pic.a %{buildroot}/%{_libdir}
install -m 755 libblas.so.%{version} %{buildroot}/%{_libdir}/blas
ln -s libblas.so.%{version} %{buildroot}/%{_libdir}/blas/libblas.so.3
ln -s blas/libblas.so.%{version} %{buildroot}/%{_libdir}/libblas.so
# dummy target for update-alternatives
ln -s blas/libblas.so.%{version} %{buildroot}/%{_libdir}/libblas.so.3
ln -s libblas.so.%{version} %{buildroot}/%{_sysconfdir}/alternatives/libblas.so.3
## LAPACK
install -d %{buildroot}/%{_libdir}/lapack
install -m 644 liblapack.a %{buildroot}/%{_libdir}
install -m 644 liblapack_pic.a %{buildroot}/%{_libdir}
install -m 755 libblas.so.%{version} %{buildroot}/%{_libdir}
ln -s libblas.so.%{version} %{buildroot}/%{_sysconfdir}/alternatives/libblas.so.3
ln -s libblas.so.%{version} %{buildroot}/%{_libdir}/libblas.so.3
ln -s libblas.so.%{version} %{buildroot}/%{_libdir}/libblas.so
install -m 755 liblapack.so.%{version} %{buildroot}/%{_libdir}
install -m 755 liblapack.so.%{version} %{buildroot}/%{_libdir}/lapack
ln -s liblapack.so.%{version} %{buildroot}/%{_libdir}/lapack/liblapack.so.3
ln -s lapack/liblapack.so.%{version} %{buildroot}/%{_libdir}/liblapack.so
# dummy target for update-alternatives
ln -s lapack/liblapack.so.%{version} %{buildroot}/%{_libdir}/liblapack.so.3
ln -s liblapack.so.%{version} %{buildroot}/%{_sysconfdir}/alternatives/liblapack.so.3
ln -s liblapack.so.%{version} %{buildroot}/%{_libdir}/liblapack.so.3
ln -s liblapack.so.%{version} %{buildroot}/%{_libdir}/liblapack.so
## LAPACKE
install -d %{buildroot}/%{_includedir}
cd lapacke
install -m 644 include/*.h %{buildroot}/%{_includedir}
install -m 644 liblapacke.a %{buildroot}/%{_libdir}
@ -331,6 +339,7 @@ install -m 755 liblapacke.so.%{version} %{buildroot}/%{_libdir}
ln -s liblapacke.so.%{version} %{buildroot}/%{_libdir}/liblapacke.so.3
ln -s liblapacke.so.%{version} %{buildroot}/%{_libdir}/liblapacke.so
cd ..
## documentation
install -d %{buildroot}%{_mandir}/man3
install -m 0644 DOCS/man/man3/*.3 %{buildroot}%{_mandir}/man3/
find BLAS/SRC/ -name \*.f -type f -printf "%{_mandir}/man3/%f.3.gz\n" \
@ -380,35 +389,51 @@ ln -s DLADIV.3.gz %{buildroot}/%{_mandir}/man3/DLADIV2.3.gz
%post -n libblas3
%_sbindir/update-alternatives --install \
%{_libdir}/libblas.so.3 libblas.so.3 %{_libdir}/libblas.so.%{version} 50
%{_libdir}/libblas.so.3 libblas.so.3 %{_libdir}/blas/libblas.so.3 50
/sbin/ldconfig
%preun -n libblas3
if [ "$1" = 0 ] ; then
%_sbindir/update-alternatives --remove libblas.so.3 %{_libdir}/libblas.so.%{version}
%_sbindir/update-alternatives --remove libblas.so.3 %{_libdir}/blas/libblas.so.3
fi
%postun -n libblas3 -p /sbin/ldconfig
%posttrans -n libblas3
if [ "$1" = 0 ] ; then
if ! [ -f %{_libdir}/libblas.so.3 ] ; then
"%_sbindir/update-alternatives" --auto libblas.so.3
fi
fi
%post -n liblapack3
%_sbindir/update-alternatives --install \
%{_libdir}/liblapack.so.3 liblapack.so.3 %{_libdir}/liblapack.so.%{version} 50
%{_libdir}/liblapack.so.3 liblapack.so.3 %{_libdir}/lapack/liblapack.so.3 50
/sbin/ldconfig
%preun -n liblapack3
if [ "$1" = 0 ] ; then
%_sbindir/update-alternatives --remove liblapack.so.3 %{_libdir}/liblapack.so.%{version}
%_sbindir/update-alternatives --remove liblapack.so.3 %{_libdir}/lapack/liblapack.so.3
fi
%postun -n liblapack3 -p /sbin/ldconfig
%posttrans -n liblapack3
if [ "$1" = 0 ] ; then
if ! [ -f %{_libdir}/liblapack.so.3 ] ; then
"%_sbindir/update-alternatives" --auto liblapack.so.3
fi
fi
%post -n liblapacke3 -p /sbin/ldconfig
%postun -n liblapacke3 -p /sbin/ldconfig
%files -n liblapack3
%defattr(-,root,root)
%doc LICENSE README
%{_libdir}/liblapack.so.%{version}
%dir %{_libdir}/lapack
%{_libdir}/lapack/liblapack.so.%{version}
%{_libdir}/lapack/liblapack.so.3
%if 0%{?suse_version} >= 1120
%ghost %{_libdir}/liblapack.so.3
%ghost %{_sysconfdir}/alternatives/liblapack.so.3
@ -420,7 +445,9 @@ fi
%files -n libblas3
%defattr(-,root,root)
%doc LICENSE README
%{_libdir}/libblas.so.%{version}
%dir %{_libdir}/blas
%{_libdir}/blas/libblas.so.%{version}
%{_libdir}/blas/libblas.so.3
%if 0%{?suse_version} >= 1120
%ghost %{_libdir}/libblas.so.3
%ghost %{_sysconfdir}/alternatives/libblas.so.3