Accepting request 111419 from devel:libraries:c_c++

OBS-URL: https://build.opensuse.org/request/show/111419
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/lapack?expand=0&rev=23
This commit is contained in:
Stephan Kulow 2012-03-29 05:43:59 +00:00 committed by Git OBS Bridge
parent f8565bd68c
commit 91b57c81fc
6 changed files with 98 additions and 108 deletions

View File

@ -1,7 +1,7 @@
liblapack3 liblapack3
libblas3 libblas3
lapack lapack-devel
requires "liblapack3-<targettype> = <version>" requires "liblapack3-<targettype> = <version>"
blas blas-devel
requires -lapack-<targettype> requires -lapack-<targettype>
requires "libblas3-<targettype> = <version>" requires "libblas3-<targettype> = <version>"

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:49bca377de0580e128488139184599c5137ec667576fc7cdef325363f84fd24d
size 3788300

3
lapack-3.4.0.tgz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:a7139ef97004d0e3c4c30f1c52d508fd7ae84b5fbaf0dd8e792c167dc306c3e9
size 6127787

View File

@ -1,8 +0,0 @@
# This line is mandatory to access the configuration functions
from Config import *
# both lapack and blas are devel packages (but have non -devel names
# for legacy reasons)
addFilter ("lapack.*devel-file-in-non-devel-package")
addFilter ("blas.*devel-file-in-non-devel-package")

View File

@ -1,3 +1,15 @@
-------------------------------------------------------------------
Wed Mar 14 12:31:13 UTC 2012 - saschpe@suse.de
- Adhere to shared library policy, packages containing *.so or *.h
files have to be named $FOO-devel, packages containing *.a files either
have to be named $FOO-devel-static or provide this name
- Set license to 'BSD-3-Clause', according to the file LICENSE and the
description on http://www.netlib.org/lapack/ it's not public domain
- Package README and LICENSE in library packages
- Removed rpmlint filters
- Use upstream tarball URL
------------------------------------------------------------------- -------------------------------------------------------------------
Mon Feb 13 10:48:17 UTC 2012 - coolo@suse.com Mon Feb 13 10:48:17 UTC 2012 - coolo@suse.com

View File

@ -17,20 +17,17 @@
Name: lapack Name: lapack
Version: 3.4.0
Release: 0
Summary: Linear Algebra Package
License: BSD-3-Clause
Group: Development/Libraries/Parallel
Url: http://www.netlib.org/lapack/
Source0: http://www.netlib.org/lapack/lapack-%{version}.tgz
Patch1: lapack-3.2.2.patch
BuildRequires: doxygen BuildRequires: doxygen
BuildRequires: gcc-fortran BuildRequires: gcc-fortran
BuildRequires: python BuildRequires: python
Summary: Linear Algebra Package
License: SUSE-Public-Domain
Group: Development/Libraries/Parallel
Version: 3.4.0
Release: 0
Source0: lapack-%{version}.tar.bz2
Source99: lapack-rpmlintrc
Patch1: lapack-3.2.2.patch
Url: http://www.netlib.org/lapack/
Requires: blas = %{version}
Requires: liblapack3 = %{version}
BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description %description
@ -44,34 +41,47 @@ matrices are handled, but not general sparse matrices. In all areas,
similar functionality is provided for real and complex matrices, in similar functionality is provided for real and complex matrices, in
both single and double precision. both single and double precision.
%package devel
Summary: Linear Algebra Package
Group: Development/Libraries/Parallel
Requires: blas = %{version}
Requires: liblapack3 = %{version}
Provides: %{name} = %{version}
Provides: %{name}-devel-static = %{version}
#TODO: Change back to '<' after next version update:
Obsoletes: %{name} <= %{version}
%description devel
LAPACK provides routines for solving systems of simultaneous linear
equations, least-squares solutions of linear systems of equations,
eigenvalue problems, and singular value problems. The associated matrix
factorizations (LU, Cholesky, QR, SVD, Schur, generalized Schur) are
also provided, as are related computations such as reordering of the
Schur factorizations and estimating condition numbers. Dense and banded
matrices are handled, but not general sparse matrices. In all areas,
similar functionality is provided for real and complex matrices, in
both single and double precision.
Authors: %package -n blas-devel
--------
Jack Dongarra <lapack@cs.utk.edu>
%package -n blas
Summary: Basic Linear Algebra Subprograms Summary: Basic Linear Algebra Subprograms
Group: Productivity/Scientific/Math Group: Productivity/Scientific/Math
Requires: libblas3 >= %{version} Requires: libblas3 >= %{version}
Provides: blas = %{version}
Provides: blas-devel-static = %{version}
#TODO: Change back to '<' after next version update:
Obsoletes: blas <= %{version}
%description -n blas %description -n blas-devel
BLAS (Basic Linear Algebra Subprograms) is a standard library for BLAS (Basic Linear Algebra Subprograms) is a standard library for
numerical algebra. BLAS provides a number of basic algorithms for numerical algebra. BLAS provides a number of basic algorithms for
linear algebra. BLAS is fast and well-tested, was written in FORTRAN 77 linear algebra. BLAS is fast and well-tested, was written in FORTRAN 77
and built with gfortran. BLAS manual pages are available in the and built with gfortran. BLAS manual pages are available in the
blas-man package. blas-man package.
Authors:
--------
UTK <lapack@cs.utk.edu>
%package -n blas-man %package -n blas-man
Summary: Documentation for BLAS (Basic Linear Algebra Subprograms) Summary: Documentation for BLAS (Basic Linear Algebra Subprograms)
Group: Productivity/Scientific/Math Group: Productivity/Scientific/Math
Provides: blasman = %{version}-%{release} Provides: blasman = %{version}
Obsoletes: blasman < %{version} Obsoletes: blasman < %{version}
%if 0%{?suse_version} >= 1120 %if 0%{?suse_version} >= 1120
BuildArch: noarch BuildArch: noarch
@ -81,16 +91,10 @@ BuildArch: noarch
The blas-man package contains documentation for BLAS (Basic Linear The blas-man package contains documentation for BLAS (Basic Linear
Algebra subprograms) routines, in the form of man pages. Algebra subprograms) routines, in the form of man pages.
Authors:
--------
UTK <lapack@cs.utk.edu>
%package man %package man
Summary: Manpages for LAPACK Summary: Manpages for LAPACK
Group: Development/Libraries/Parallel Group: Development/Libraries/Parallel
Provides: lapack-manpages = %{version}-%{release} Provides: lapack-manpages = %{version}
Obsoletes: lapack-manpages < %{version} Obsoletes: lapack-manpages < %{version}
%if 0%{?suse_version} >= 1120 %if 0%{?suse_version} >= 1120
BuildArch: noarch BuildArch: noarch
@ -99,12 +103,6 @@ BuildArch: noarch
%description man %description man
Manpages for LAPACK Manpages for LAPACK
Authors:
--------
Lapack team<lapack@cs.utk.edu>
%package -n liblapack3 %package -n liblapack3
Summary: LAPACK Shared Library Summary: LAPACK Shared Library
Group: Development/Libraries/Parallel Group: Development/Libraries/Parallel
@ -120,12 +118,6 @@ matrices are handled, but not general sparse matrices. In all areas,
similar functionality is provided for real and complex matrices, in similar functionality is provided for real and complex matrices, in
both single and double precision. both single and double precision.
Authors:
--------
Jack Dongarra <lapack@cs.utk.edu>
%package -n libblas3 %package -n libblas3
Summary: BLAS Shared Library Summary: BLAS Shared Library
Group: Productivity/Scientific/Math Group: Productivity/Scientific/Math
@ -135,12 +127,6 @@ BLAS (Basic Linear Algebra Subprograms) is a standard library for
numerical algebra. BLAS provides a number of basic algorithms for numerical algebra. BLAS provides a number of basic algorithms for
linear algebra. linear algebra.
Authors:
--------
UTK <lapack@cs.utk.edu>
%prep %prep
%setup -q %setup -q
%patch1 %patch1
@ -154,21 +140,21 @@ export PRECFLAGS
cp make.inc.example make.inc cp make.inc.example make.inc
make cleanlib make cleanlib
make %{?_smp_mflags} blaslib \ make %{?_smp_mflags} blaslib \
OPTS="$RPM_OPT_FLAGS -fPIC" \ OPTS="%{optflags} -fPIC" \
NOOPT="$RPM_OPT_FLAGS -O0 -fPIC" NOOPT="%{optflags} -O0 -fPIC"
mv librefblas.a libblas_pic.a mv librefblas.a libblas_pic.a
mkdir tmp mkdir tmp
( cd tmp; ar x ../libblas_pic.a ) ( cd tmp; ar x ../libblas_pic.a )
gfortran -shared -Wl,-soname=libblas.so.3 -o libblas.so.%version tmp/*.o gfortran -shared -Wl,-soname=libblas.so.3 -o libblas.so.%{version} tmp/*.o
ln -s libblas.so.%version libblas.so ln -s libblas.so.%{version} libblas.so
rm -rf tmp rm -rf tmp
make cleanlib make cleanlib
make %{?_smp_mflags} blaslib \ make %{?_smp_mflags} blaslib \
OPTS="$RPM_OPT_FLAGS" \ OPTS="%{optflags}" \
NOOPT="$RPM_OPT_FLAGS -O0" NOOPT="%{optflags} -O0"
make blas_testing \ make blas_testing \
OPTS="$RPM_OPT_FLAGS $PRECFLAGS" \ OPTS="%{optflags} $PRECFLAGS" \
NOOPT="$RPM_OPT_FLAGS $PRECFLAGS -O0" NOOPT="%{optflags} $PRECFLAGS -O0"
if grep -B15 -A15 FAIL BLAS/*.out; then if grep -B15 -A15 FAIL BLAS/*.out; then
echo echo
echo "blas_testing FAILED" echo "blas_testing FAILED"
@ -180,22 +166,22 @@ fi
mv librefblas.a libblas.a mv librefblas.a libblas.a
make cleanlib make cleanlib
make %{?_smp_mflags} lapacklib \ make %{?_smp_mflags} lapacklib \
OPTS="$RPM_OPT_FLAGS -fPIC" \ OPTS="%{optflags} -fPIC" \
NOOPT="$RPM_OPT_FLAGS -O0 -fPIC" NOOPT="%{optflags} -O0 -fPIC"
mv liblapack.a liblapack_pic.a mv liblapack.a liblapack_pic.a
mkdir tmp mkdir tmp
( cd tmp; ar x ../liblapack_pic.a ) ( cd tmp; ar x ../liblapack_pic.a )
gfortran -shared -Wl,-soname=liblapack.so.3 -o liblapack.so.%version tmp/*.o -L. -lblas gfortran -shared -Wl,-soname=liblapack.so.3 -o liblapack.so.%{version} tmp/*.o -L. -lblas
ln -s liblapack.so.%version liblapack.so ln -s liblapack.so.%{version} liblapack.so
rm -rf tmp rm -rf tmp
make cleanlib make cleanlib
make %{?_smp_mflags} lapacklib \ make %{?_smp_mflags} lapacklib \
OPTS="$RPM_OPT_FLAGS" \ OPTS="%{optflags}" \
NOOPT="$RPM_OPT_FLAGS -O0" NOOPT="%{optflags} -O0"
ln -s libblas.a librefblas.a ln -s libblas.a librefblas.a
make lapack_testing \ make lapack_testing \
OPTS="$RPM_OPT_FLAGS $PRECFLAGS" \ OPTS="%{optflags} $PRECFLAGS" \
NOOPT="$RPM_OPT_FLAGS $PRECFLAGS -O0" NOOPT="%{optflags} $PRECFLAGS -O0"
if grep -B15 -A15 FAIL TESTING/*.out; then if grep -B15 -A15 FAIL TESTING/*.out; then
echo echo
echo "lapack_testing FAILED" echo "lapack_testing FAILED"
@ -235,19 +221,19 @@ mv DOCS/man/man3/BLAS_SRC_xerbla_array.f.3 DOCS/man/man3/xerbla_array.f.3
mv DOCS/man/man3/INSTALL_ilaver.f.3 DOCS/man/man3/ilaver.f.3 mv DOCS/man/man3/INSTALL_ilaver.f.3 DOCS/man/man3/ilaver.f.3
%install %install
install -d $RPM_BUILD_ROOT/%{_libdir} install -d %{buildroot}/%{_libdir}
install -m 644 libblas.a $RPM_BUILD_ROOT/%{_libdir} install -m 644 libblas.a %{buildroot}/%{_libdir}
install -m 644 libblas_pic.a $RPM_BUILD_ROOT/%{_libdir} install -m 644 libblas_pic.a %{buildroot}/%{_libdir}
install -m 644 liblapack.a $RPM_BUILD_ROOT/%{_libdir} install -m 644 liblapack.a %{buildroot}/%{_libdir}
install -m 644 liblapack_pic.a $RPM_BUILD_ROOT/%{_libdir} install -m 644 liblapack_pic.a %{buildroot}/%{_libdir}
install -m 755 libblas.so.%version $RPM_BUILD_ROOT/%{_libdir} install -m 755 libblas.so.%{version} %{buildroot}/%{_libdir}
ln -s libblas.so.%version $RPM_BUILD_ROOT/%{_libdir}/libblas.so.3 ln -s libblas.so.%{version} %{buildroot}/%{_libdir}/libblas.so.3
ln -s libblas.so.%version $RPM_BUILD_ROOT/%{_libdir}/libblas.so ln -s libblas.so.%{version} %{buildroot}/%{_libdir}/libblas.so
install -m 755 liblapack.so.%version $RPM_BUILD_ROOT/%{_libdir} install -m 755 liblapack.so.%{version} %{buildroot}/%{_libdir}
ln -s liblapack.so.%version $RPM_BUILD_ROOT/%{_libdir}/liblapack.so.3 ln -s liblapack.so.%{version} %{buildroot}/%{_libdir}/liblapack.so.3
ln -s liblapack.so.%version $RPM_BUILD_ROOT/%{_libdir}/liblapack.so ln -s liblapack.so.%{version} %{buildroot}/%{_libdir}/liblapack.so
install -d $RPM_BUILD_ROOT%{_mandir}/man3 install -d %{buildroot}%{_mandir}/man3
install -m 0644 DOCS/man/man3/*.3 $RPM_BUILD_ROOT%{_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" \ find BLAS/SRC/ -name \*.f -type f -printf "%{_mandir}/man3/%f.3.gz\n" \
> blasmans > blasmans
find BLAS/SRC/ -name \*.f -type f -printf "%f\n" \ find BLAS/SRC/ -name \*.f -type f -printf "%f\n" \
@ -276,24 +262,22 @@ echo %{_mandir}/man3/slamch.f.3.gz >> lapackmans
echo %{_mandir}/man3/slamchf77.f.3.gz >> lapackmans echo %{_mandir}/man3/slamchf77.f.3.gz >> lapackmans
echo %{_mandir}/man3/dlamch.f.3.gz >> lapackmans echo %{_mandir}/man3/dlamch.f.3.gz >> lapackmans
echo %{_mandir}/man3/dlamchf77.f.3.gz >> lapackmans echo %{_mandir}/man3/dlamchf77.f.3.gz >> lapackmans
ln -s SLAMC1.3.gz $RPM_BUILD_ROOT/%{_mandir}/man3/SLAMC2.3.gz ln -s SLAMC1.3.gz %{buildroot}/%{_mandir}/man3/SLAMC2.3.gz
ln -s SLAMC1.3.gz $RPM_BUILD_ROOT/%{_mandir}/man3/SLAMC4.3.gz ln -s SLAMC1.3.gz %{buildroot}/%{_mandir}/man3/SLAMC4.3.gz
ln -s SLAMC1.3.gz $RPM_BUILD_ROOT/%{_mandir}/man3/SLAMC5.3.gz ln -s SLAMC1.3.gz %{buildroot}/%{_mandir}/man3/SLAMC5.3.gz
ln -s SLAMCH.3.gz $RPM_BUILD_ROOT/%{_mandir}/man3/SLAMC3.3.gz ln -s SLAMCH.3.gz %{buildroot}/%{_mandir}/man3/SLAMC3.3.gz
ln -s DLAMC1.3.gz $RPM_BUILD_ROOT/%{_mandir}/man3/DLAMC2.3.gz ln -s DLAMC1.3.gz %{buildroot}/%{_mandir}/man3/DLAMC2.3.gz
ln -s DLAMC1.3.gz $RPM_BUILD_ROOT/%{_mandir}/man3/DLAMC4.3.gz ln -s DLAMC1.3.gz %{buildroot}/%{_mandir}/man3/DLAMC4.3.gz
ln -s DLAMC1.3.gz $RPM_BUILD_ROOT/%{_mandir}/man3/DLAMC5.3.gz ln -s DLAMC1.3.gz %{buildroot}/%{_mandir}/man3/DLAMC5.3.gz
ln -s DLAMCH.3.gz $RPM_BUILD_ROOT/%{_mandir}/man3/DLAMC3.3.gz ln -s DLAMCH.3.gz %{buildroot}/%{_mandir}/man3/DLAMC3.3.gz
%post -n libblas3 -p /sbin/ldconfig %post -n libblas3 -p /sbin/ldconfig
%postun -n libblas3 -p /sbin/ldconfig %postun -n libblas3 -p /sbin/ldconfig
%post -n liblapack3 -p /sbin/ldconfig %post -n liblapack3 -p /sbin/ldconfig
%postun -n liblapack3 -p /sbin/ldconfig %postun -n liblapack3 -p /sbin/ldconfig
%files %files devel
%defattr(-,root,root) %defattr(-,root,root)
%{_libdir}/liblapack.so %{_libdir}/liblapack.so
%{_libdir}/liblapack.a %{_libdir}/liblapack.a
@ -301,24 +285,26 @@ ln -s DLAMCH.3.gz $RPM_BUILD_ROOT/%{_mandir}/man3/DLAMC3.3.gz
%files -n liblapack3 %files -n liblapack3
%defattr(-,root,root) %defattr(-,root,root)
%{_libdir}/liblapack.so.%version %doc LICENSE README
%{_libdir}/liblapack.so.%{version}
%{_libdir}/liblapack.so.3 %{_libdir}/liblapack.so.3
%files -n blas %files -n blas-devel
%defattr(-,root,root) %defattr(-,root,root)
%{_libdir}/libblas.so %{_libdir}/libblas.so
%{_libdir}/libblas.a %{_libdir}/libblas.a
%{_libdir}/libblas_pic.a %{_libdir}/libblas_pic.a
%files -n libblas3 %files -n libblas3
%doc LICENSE README
%defattr(-,root,root) %defattr(-,root,root)
%{_libdir}/libblas.so.%version %{_libdir}/libblas.so.%{version}
%{_libdir}/libblas.so.3 %{_libdir}/libblas.so.3
%files -n blas-man -f blasmans
%defattr(-,root,root)
%files man -f lapackmans %files man -f lapackmans
%defattr(-,root,root) %defattr(-,root,root)
%files -n blas-man -f blasmans
%defattr(-,root,root)
%changelog %changelog