aa9ca72b95
Copy from devel:libraries:c_c++/lapack based on submit request 45484 from user rguenther OBS-URL: https://build.opensuse.org/request/show/45484 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/lapack?expand=0&rev=14
264 lines
7.7 KiB
RPMSpec
264 lines
7.7 KiB
RPMSpec
#
|
|
# spec file for package lapack (Version 3.2.2)
|
|
#
|
|
# Copyright (c) 2010 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
|
|
# upon. The license for this file, and modifications and additions to the
|
|
# file, is the same license as for the pristine package itself (unless the
|
|
# license for the pristine package is not an Open Source License, in which
|
|
# case the license is the MIT License). An "Open Source License" is a
|
|
# license that conforms to the Open Source Definition (Version 1.9)
|
|
# published by the Open Source Initiative.
|
|
|
|
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
|
#
|
|
|
|
# norootforbuild
|
|
|
|
|
|
Name: lapack
|
|
BuildRequires: gcc-fortran
|
|
Summary: Linear Algebra Package
|
|
Version: 3.2.2
|
|
Release: 1
|
|
License: Public Domain, Freeware
|
|
Group: Development/Libraries/Parallel
|
|
Source0: lapack-%{version}.tar.bz2
|
|
Source1: manpages-3.2.0.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
|
|
|
|
%description
|
|
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:
|
|
--------
|
|
Jack Dongarra <lapack@cs.utk.edu>
|
|
|
|
%package -n blas
|
|
License: Public Domain, Freeware
|
|
Summary: Basic Linear Algebra Subprograms
|
|
Group: Productivity/Scientific/Math
|
|
Requires: libblas3 >= %{version}
|
|
|
|
%description -n blas
|
|
BLAS (Basic Linear Algebra Subprograms) is a standard library for
|
|
numerical algebra. BLAS provides a number of basic algorithms for
|
|
linear algebra. BLAS is fast and well-tested, was written in FORTRAN 77
|
|
and built with gfortran. BLAS manual pages are available in the
|
|
blas-man package.
|
|
|
|
|
|
|
|
Authors:
|
|
--------
|
|
UTK <lapack@cs.utk.edu>
|
|
|
|
%package -n blas-man
|
|
License: Public Domain, Freeware
|
|
Summary: Documentation for BLAS (Basic Linear Algebra Subprograms)
|
|
Group: Productivity/Scientific/Math
|
|
Provides: blasman = %{version}-%{release}
|
|
Obsoletes: blasman < %{version}
|
|
%if 0%{?suse_version} >= 1120
|
|
BuildArch: noarch
|
|
%endif
|
|
|
|
%description -n blas-man
|
|
The blas-man package contains documentation for BLAS (Basic Linear
|
|
Algebra subprograms) routines, in the form of man pages.
|
|
|
|
|
|
|
|
Authors:
|
|
--------
|
|
UTK <lapack@cs.utk.edu>
|
|
|
|
%package man
|
|
License: Public Domain, Freeware
|
|
Summary: Manpages for LAPACK
|
|
Group: Development/Libraries/Parallel
|
|
Provides: lapack-manpages = %{version}-%{release}
|
|
Obsoletes: lapack-manpages < %{version}
|
|
%if 0%{?suse_version} >= 1120
|
|
BuildArch: noarch
|
|
%endif
|
|
|
|
%description man
|
|
Manpages for LAPACK
|
|
|
|
|
|
|
|
Authors:
|
|
--------
|
|
Lapack team<lapack@cs.utk.edu>
|
|
|
|
%package -n liblapack3
|
|
License: Public Domain, Freeware
|
|
Summary: LAPACK Shared Library
|
|
Group: Development/Libraries/Parallel
|
|
|
|
%description -n liblapack3
|
|
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:
|
|
--------
|
|
Jack Dongarra <lapack@cs.utk.edu>
|
|
|
|
%package -n libblas3
|
|
License: Public Domain, Freeware
|
|
Summary: BLAS Shared Library
|
|
Group: Productivity/Scientific/Math
|
|
|
|
%description -n libblas3
|
|
BLAS (Basic Linear Algebra Subprograms) is a standard library for
|
|
numerical algebra. BLAS provides a number of basic algorithms for
|
|
linear algebra.
|
|
|
|
|
|
|
|
Authors:
|
|
--------
|
|
UTK <lapack@cs.utk.edu>
|
|
|
|
%prep
|
|
%setup -q
|
|
%patch1
|
|
tar xjf %{S:1} --strip-components=1
|
|
|
|
%build
|
|
cp make.inc.example make.inc
|
|
make cleanlib
|
|
make %{?jobs:-j%jobs} blaslib \
|
|
OPTS="$RPM_OPT_FLAGS -fPIC" \
|
|
NOOPT="$RPM_OPT_FLAGS -O0 -fPIC"
|
|
mv blas_LINUX.a libblas_pic.a
|
|
mkdir tmp
|
|
( cd tmp; ar x ../libblas_pic.a )
|
|
gfortran -shared -Wl,-soname=libblas.so.3 -o libblas.so.%version tmp/*.o
|
|
ln -s libblas.so.%version libblas.so
|
|
rm -rf tmp
|
|
make cleanlib
|
|
make %{?jobs:-j%jobs} blaslib \
|
|
OPTS="$RPM_OPT_FLAGS" \
|
|
NOOPT="$RPM_OPT_FLAGS -O0"
|
|
mv blas_LINUX.a libblas.a
|
|
make cleanlib
|
|
make %{?jobs:-j%jobs} lapacklib \
|
|
OPTS="$RPM_OPT_FLAGS -fPIC" \
|
|
NOOPT="$RPM_OPT_FLAGS -O0 -fPIC"
|
|
mv lapack_LINUX.a liblapack_pic.a
|
|
mkdir tmp
|
|
( cd tmp; ar x ../liblapack_pic.a )
|
|
gfortran -shared -Wl,-soname=liblapack.so.3 -o liblapack.so.%version tmp/*.o -L. -lblas
|
|
ln -s liblapack.so.%version liblapack.so
|
|
rm -rf tmp
|
|
make cleanlib
|
|
make %{?jobs:-j%jobs} lapacklib \
|
|
OPTS="$RPM_OPT_FLAGS" \
|
|
NOOPT="$RPM_OPT_FLAGS -O0"
|
|
mv lapack_LINUX.a liblapack.a
|
|
|
|
%install
|
|
install -d $RPM_BUILD_ROOT/%{_libdir}
|
|
install -m 644 libblas.a $RPM_BUILD_ROOT/%{_libdir}
|
|
install -m 644 libblas_pic.a $RPM_BUILD_ROOT/%{_libdir}
|
|
install -m 644 liblapack.a $RPM_BUILD_ROOT/%{_libdir}
|
|
install -m 644 liblapack_pic.a $RPM_BUILD_ROOT/%{_libdir}
|
|
install -m 755 libblas.so.%version $RPM_BUILD_ROOT/%{_libdir}
|
|
ln -s libblas.so.%version $RPM_BUILD_ROOT/%{_libdir}/libblas.so.3
|
|
ln -s libblas.so.%version $RPM_BUILD_ROOT/%{_libdir}/libblas.so
|
|
install -m 755 liblapack.so.%version $RPM_BUILD_ROOT/%{_libdir}
|
|
ln -s liblapack.so.%version $RPM_BUILD_ROOT/%{_libdir}/liblapack.so.3
|
|
ln -s liblapack.so.%version $RPM_BUILD_ROOT/%{_libdir}/liblapack.so
|
|
# remove duplicate manpages
|
|
rm manpages/man/manl/xerbla.l
|
|
rm manpages/man/manl/xerbla_array.l
|
|
rm manpages/man/manl/lsame.l
|
|
rm manpages/man/manl/zdrot.l
|
|
rm manpages/man/manl/csrot.l
|
|
# remove bogus files
|
|
rm manpages/blas/man/manl/ssyrk.txt_new
|
|
rm manpages/blas/man/manl/intro_blas1.man
|
|
# move and rename manpages
|
|
install -d $RPM_BUILD_ROOT%{_mandir}/man3
|
|
function CopyFile {
|
|
NEW_FILENAME=$(basename $1 .l).3
|
|
install -m 0644 $1 $RPM_BUILD_ROOT%{_mandir}/man3/$NEW_FILENAME
|
|
}
|
|
for MANFILE in manpages/blas/man/manl/*.l; do
|
|
CopyFile $MANFILE
|
|
done
|
|
for MANFILE in manpages/man/manl/*.l; do
|
|
CopyFile $MANFILE
|
|
done
|
|
find manpages/blas/man/manl -type f -printf "%{_mandir}/man3/%f\n" | sed -e 's/.l$/.3.gz/' > blasmans
|
|
find manpages/man/manl -type f -printf "%{_mandir}/man3/%f\n" | sed -e 's/.l$/.3.gz/' > lapackmans
|
|
|
|
%post -n libblas3 -p /sbin/ldconfig
|
|
|
|
%postun -n libblas3 -p /sbin/ldconfig
|
|
|
|
%post -n liblapack3 -p /sbin/ldconfig
|
|
|
|
%postun -n liblapack3 -p /sbin/ldconfig
|
|
|
|
%clean
|
|
rm -rf $RPM_BUILD_ROOT
|
|
|
|
%files
|
|
%defattr(-,root,root)
|
|
%{_libdir}/liblapack.so
|
|
%{_libdir}/liblapack.a
|
|
%{_libdir}/liblapack_pic.a
|
|
|
|
%files -n liblapack3
|
|
%defattr(-,root,root)
|
|
%{_libdir}/liblapack.so.%version
|
|
%{_libdir}/liblapack.so.3
|
|
|
|
%files -n blas
|
|
%defattr(-,root,root)
|
|
%{_libdir}/libblas.so
|
|
%{_libdir}/libblas.a
|
|
%{_libdir}/libblas_pic.a
|
|
|
|
%files -n libblas3
|
|
%defattr(-,root,root)
|
|
%{_libdir}/libblas.so.%version
|
|
%{_libdir}/libblas.so.3
|
|
|
|
%files -n blas-man -f blasmans
|
|
%defattr(-,root,root)
|
|
|
|
%files man -f lapackmans
|
|
%defattr(-,root,root)
|
|
|
|
%changelog
|