e2d6d6
%global shortver	3
e2d6d6
%global mediumver	%{shortver}.4
e2d6d6
e2d6d6
%if %{__isa_bits} == 64
e2d6d6
%global arch64 1
e2d6d6
%else
e2d6d6
%global arch64 0
e2d6d6
%endif
e2d6d6
e2d6d6
Summary: Numerical linear algebra package libraries
e2d6d6
Name: lapack
e2d6d6
Version: %{mediumver}.2
e2d6d6
Release: 5%{?dist}
e2d6d6
License: BSD
e2d6d6
Group: Development/Libraries
e2d6d6
URL: http://www.netlib.org/lapack/
e2d6d6
# Upstream contains two non-free files with no permission to redistribute
e2d6d6
# lapacke/examples/example_DGESV_rowmajor.c and
e2d6d6
# lapacke/examples/example_ZGESV_rowmajor.c.
e2d6d6
# They have been removed from the source tarball.
e2d6d6
# Source0: http://www.netlib.org/lapack/lapack-%{version}.tgz
e2d6d6
Source0: lapack-%{version}-clean.tgz
e2d6d6
Source1: http://www.netlib.org/lapack/manpages.tgz
e2d6d6
Source2: Makefile.blas
e2d6d6
Source3: Makefile.lapack
e2d6d6
Source4: http://www.netlib.org/lapack/lapackqref.ps
e2d6d6
Source5: http://www.netlib.org/blas/blasqr.ps
e2d6d6
Patch3: lapack-3.4.0-make.inc.patch
e2d6d6
Patch4: lapack-3.4.1-lapacke-shared.patch
e2d6d6
Patch5: lapack-3.4.1-lapacke-disable-testing-functions.patch
e2d6d6
BuildRequires: gcc-gfortran
e2d6d6
e2d6d6
%description
e2d6d6
LAPACK (Linear Algebra PACKage) is a standard library for numerical
e2d6d6
linear algebra. LAPACK provides routines for solving systems of
e2d6d6
simultaneous linear equations, least-squares solutions of linear
e2d6d6
systems of equations, eigenvalue problems, and singular value
e2d6d6
problems. Associated matrix factorizations (LU, Cholesky, QR, SVD,
e2d6d6
Schur, and generalized Schur) and related computations (i.e.,
e2d6d6
reordering of Schur factorizations and estimating condition numbers)
e2d6d6
are also included. LAPACK can handle dense and banded matrices, but
e2d6d6
not general sparse matrices. Similar functionality is provided for
e2d6d6
real and complex matrices in both single and double precision. LAPACK
e2d6d6
is coded in Fortran90 and built with gcc.
e2d6d6
e2d6d6
%package devel
e2d6d6
Summary: LAPACK development libraries
e2d6d6
Group: Development/Libraries
e2d6d6
Requires: %{name}%{?_isa} = %{version}-%{release}
e2d6d6
Requires: blas-devel%{?_isa} = %{version}-%{release}
e2d6d6
e2d6d6
%description devel
e2d6d6
LAPACK development libraries (shared).
e2d6d6
e2d6d6
%package static
e2d6d6
Summary: LAPACK static libraries
e2d6d6
Group: Development/Libraries
e2d6d6
Requires: lapack-devel%{?_isa} = %{version}-%{release}
e2d6d6
e2d6d6
%description static
e2d6d6
LAPACK static libraries.
e2d6d6
e2d6d6
%package -n blas
e2d6d6
Summary: The Basic Linear Algebra Subprograms library
e2d6d6
Group: Development/Libraries
e2d6d6
e2d6d6
%description -n blas
e2d6d6
BLAS (Basic Linear Algebra Subprograms) is a standard library which
e2d6d6
provides a number of basic algorithms for numerical algebra. 
e2d6d6
e2d6d6
%package -n blas-devel
e2d6d6
Summary: BLAS development libraries
e2d6d6
Group: Development/Libraries
e2d6d6
Requires: blas%{?_isa} = %{version}-%{release}
e2d6d6
Requires: gcc-gfortran
e2d6d6
e2d6d6
%description -n blas-devel
e2d6d6
BLAS development libraries (shared).
e2d6d6
e2d6d6
%package -n blas-static
e2d6d6
Summary: BLAS static libraries
e2d6d6
Group: Development/Libraries
e2d6d6
Requires: blas-devel%{?_isa} = %{version}-%{release}
e2d6d6
e2d6d6
%description -n blas-static
e2d6d6
BLAS static libraries.
e2d6d6
e2d6d6
%if 0%{?arch64}
e2d6d6
%package -n lapack64
e2d6d6
Summary: Numerical linear algebra package libraries
e2d6d6
Group: Development/Libraries
e2d6d6
e2d6d6
%description -n lapack64
e2d6d6
LAPACK (Linear Algebra PACKage) is a standard library for numerical
e2d6d6
linear algebra. LAPACK provides routines for solving systems of
e2d6d6
simultaneous linear equations, least-squares solutions of linear
e2d6d6
systems of equations, eigenvalue problems, and singular value
e2d6d6
problems. Associated matrix factorizations (LU, Cholesky, QR, SVD,
e2d6d6
Schur, and generalized Schur) and related computations (i.e.,
e2d6d6
reordering of Schur factorizations and estimating condition numbers)
e2d6d6
are also included. LAPACK can handle dense and banded matrices, but
e2d6d6
not general sparse matrices. Similar functionality is provided for
e2d6d6
real and complex matrices in both single and double precision. LAPACK
e2d6d6
is coded in Fortran90 and built with gcc.
e2d6d6
This build has 64bit INTEGER support.
e2d6d6
e2d6d6
%package -n lapack64-devel
e2d6d6
Summary: LAPACK development libraries (64bit INTEGER)
e2d6d6
Group: Development/Libraries
e2d6d6
Requires: lapack-devel%{?_isa} = %{version}-%{release}
e2d6d6
Requires: blas64-devel%{?_isa} = %{version}-%{release}
e2d6d6
e2d6d6
%description -n lapack64-devel
e2d6d6
LAPACK development libraries (shared, 64bit INTEGER).
e2d6d6
e2d6d6
%package -n lapack64-static
e2d6d6
Summary: LAPACK static libraries (64bit INTEGER)
e2d6d6
Group: Development/Libraries
e2d6d6
Requires: lapack64-devel%{?_isa} = %{version}-%{release}
e2d6d6
e2d6d6
%description -n lapack64-static
e2d6d6
LAPACK static libraries (64bit INTEGER).
e2d6d6
e2d6d6
%package -n blas64
e2d6d6
Summary: The Basic Linear Algebra Subprograms library (64bit INTEGER)
e2d6d6
Group: Development/Libraries
e2d6d6
e2d6d6
%description -n blas64
e2d6d6
BLAS (Basic Linear Algebra Subprograms) is a standard library which
e2d6d6
provides a number of basic algorithms for numerical algebra. This build
e2d6d6
has 64bit INTEGER support.
e2d6d6
e2d6d6
%package -n blas64-devel
e2d6d6
Summary: BLAS development libraries
e2d6d6
Group: Development/Libraries
e2d6d6
Requires: blas-devel%{?_isa} = %{version}-%{release}
e2d6d6
Requires: gcc-gfortran
e2d6d6
e2d6d6
%description -n blas64-devel
e2d6d6
BLAS development libraries (shared).
e2d6d6
e2d6d6
%package -n blas64-static
e2d6d6
Summary: BLAS static libraries (64bit INTEGER)
e2d6d6
Group: Development/Libraries
e2d6d6
Requires: blas64-devel%{?_isa} = %{version}-%{release}
e2d6d6
e2d6d6
%description -n blas64-static
e2d6d6
BLAS static libraries (64bit INTEGER).
e2d6d6
%endif
e2d6d6
e2d6d6
%prep
e2d6d6
%setup -q 
e2d6d6
%setup -q -D -T -a1
e2d6d6
%patch3 -p1 -b .fedora
e2d6d6
%patch4 -p1 -b .shared
e2d6d6
%patch5 -p1 -b .disable-functions
e2d6d6
e2d6d6
mkdir manpages
e2d6d6
mv man/ manpages/
e2d6d6
e2d6d6
cp -f INSTALL/make.inc.gfortran make.inc
e2d6d6
cp -f %{SOURCE2} BLAS/SRC/Makefile
e2d6d6
cp -f %{SOURCE3} SRC/Makefile
e2d6d6
e2d6d6
sed -i "s|@SHORTVER@|%{shortver}|g" BLAS/SRC/Makefile
e2d6d6
sed -i "s|@SHORTVER@|%{shortver}|g" SRC/Makefile
e2d6d6
sed -i "s|@SHORTVER@|%{shortver}|g" lapacke/Makefile
e2d6d6
sed -i "s|@LONGVER@|%{version}|g" BLAS/SRC/Makefile
e2d6d6
sed -i "s|@LONGVER@|%{version}|g" SRC/Makefile
e2d6d6
sed -i "s|@LONGVER@|%{version}|g" lapacke/Makefile
e2d6d6
e2d6d6
%build
e2d6d6
RPM_OPT_O_FLAGS=$(echo $RPM_OPT_FLAGS | sed 's|-O2|-O0|')
e2d6d6
export FC=gfortran
e2d6d6
e2d6d6
# Build BLAS
e2d6d6
pushd BLAS/SRC
e2d6d6
FFLAGS="$RPM_OPT_O_FLAGS" make dcabs1.o
e2d6d6
FFLAGS="$RPM_OPT_FLAGS" CFLAGS="$RPM_OPT_FLAGS" make static
e2d6d6
cp libblas.a ${RPM_BUILD_DIR}/%{name}-%{version}/
e2d6d6
make clean
e2d6d6
FFLAGS="$RPM_OPT_O_FLAGS -fPIC" make dcabs1.o
e2d6d6
FFLAGS="$RPM_OPT_FLAGS -fPIC" CFLAGS="$RPM_OPT_FLAGS -fPIC" make shared
e2d6d6
cp libblas.so.%{version} ${RPM_BUILD_DIR}/%{name}-%{version}/
e2d6d6
%if 0%{?arch64}
e2d6d6
make clean
e2d6d6
FFLAGS="$RPM_OPT_O_FLAGS -fdefault-integer-8" make dcabs1.o
e2d6d6
FFLAGS="$RPM_OPT_FLAGS -fdefault-integer-8" CFLAGS="$RPM_OPT_FLAGS" make static
e2d6d6
cp libblas.a ${RPM_BUILD_DIR}/%{name}-%{version}/libblas64.a
e2d6d6
make clean
e2d6d6
FFLAGS="$RPM_OPT_O_FLAGS -fPIC -fdefault-integer-8" make dcabs1.o
e2d6d6
sed -i 's|-soname,libblas|-soname,libblas64|g' Makefile
e2d6d6
FFLAGS="$RPM_OPT_FLAGS -fPIC -fdefault-integer-8" CFLAGS="$RPM_OPT_FLAGS -fPIC" make shared
e2d6d6
sed -i 's|-soname,libblas64|-soname,libblas|g' Makefile
e2d6d6
cp libblas.so.%{version} ${RPM_BUILD_DIR}/%{name}-%{version}/libblas64.so.%{version}
e2d6d6
%endif
e2d6d6
popd
e2d6d6
e2d6d6
ln -s libblas.so.%{version} libblas.so
e2d6d6
%if 0%{?arch64}
e2d6d6
ln -s libblas64.so.%{version} libblas64.so
e2d6d6
%endif
e2d6d6
e2d6d6
# Build the static dlamch, dsecnd, lsame, second, slamch bits
e2d6d6
pushd INSTALL
e2d6d6
make NOOPT="$RPM_OPT_O_FLAGS" OPTS="$RPM_OPT_FLAGS"
e2d6d6
popd
e2d6d6
e2d6d6
# Build the static lapack library
e2d6d6
pushd SRC
e2d6d6
make FFLAGS="$RPM_OPT_FLAGS" CFLAGS="$RPM_OPT_FLAGS" static
e2d6d6
cp liblapack.a ${RPM_BUILD_DIR}/%{name}-%{version}/
e2d6d6
popd
e2d6d6
e2d6d6
# Build the static with pic dlamch, dsecnd, lsame, second, slamch bits
e2d6d6
pushd INSTALL
e2d6d6
make clean
e2d6d6
make NOOPT="$RPM_OPT_O_FLAGS -fPIC" OPTS="$RPM_OPT_FLAGS -fPIC"
e2d6d6
popd
e2d6d6
e2d6d6
# Build the static with pic lapack library
e2d6d6
pushd SRC
e2d6d6
make clean
e2d6d6
make FFLAGS="$RPM_OPT_FLAGS -fPIC" CFLAGS="$RPM_OPT_FLAGS -fPIC" static
e2d6d6
cp liblapack.a ${RPM_BUILD_DIR}/%{name}-%{version}/liblapack_pic.a
e2d6d6
popd
e2d6d6
e2d6d6
%if 0%{?arch64}
e2d6d6
# Build the static dlamch, dsecnd, lsame, second, slamch bits
e2d6d6
pushd INSTALL
e2d6d6
make NOOPT="$RPM_OPT_O_FLAGS -fdefault-integer-8" OPTS="$RPM_OPT_FLAGS -fdefault-integer-8"
e2d6d6
popd
e2d6d6
e2d6d6
# Build the static lapack library
e2d6d6
pushd SRC
e2d6d6
make FFLAGS="$RPM_OPT_FLAGS -fdefault-integer-8" CFLAGS="$RPM_OPT_FLAGS" static
e2d6d6
cp liblapack.a ${RPM_BUILD_DIR}/%{name}-%{version}/liblapack64.a
e2d6d6
popd
e2d6d6
e2d6d6
# Build the static with pic dlamch, dsecnd, lsame, second, slamch bits (64bit INTEGER)
e2d6d6
pushd INSTALL
e2d6d6
make clean
e2d6d6
make NOOPT="$RPM_OPT_O_FLAGS -fPIC -fdefault-integer-8" OPTS="$RPM_OPT_FLAGS -fPIC -fdefault-integer-8"
e2d6d6
popd
e2d6d6
e2d6d6
# Build the static with pic lapack library (64bit INTEGER)
e2d6d6
pushd SRC
e2d6d6
make clean
e2d6d6
make FFLAGS="$RPM_OPT_FLAGS -fPIC -fdefault-integer-8" CFLAGS="$RPM_OPT_FLAGS -fPIC" static
e2d6d6
cp liblapack.a ${RPM_BUILD_DIR}/%{name}-%{version}/liblapack64_pic.a
e2d6d6
popd
e2d6d6
%endif
e2d6d6
e2d6d6
# Build the shared dlamch, dsecnd, lsame, second, slamch bits
e2d6d6
pushd INSTALL
e2d6d6
make clean
e2d6d6
make NOOPT="$RPM_OPT_O_FLAGS -fPIC" OPTS="$RPM_OPT_FLAGS -fPIC"
e2d6d6
popd
e2d6d6
e2d6d6
# Build the shared lapack library
e2d6d6
pushd SRC
e2d6d6
make clean
e2d6d6
make FFLAGS="$RPM_OPT_FLAGS -fPIC" CFLAGS="$RPM_OPT_FLAGS -fPIC" shared
e2d6d6
cp liblapack.so.%{version} ${RPM_BUILD_DIR}/%{name}-%{version}/
e2d6d6
popd
e2d6d6
e2d6d6
%if 0%{?arch64}
e2d6d6
# Build the shared dlamch, dsecnd, lsame, second, slamch bits
e2d6d6
pushd INSTALL
e2d6d6
make clean
e2d6d6
make NOOPT="$RPM_OPT_O_FLAGS -fPIC -fdefault-integer-8" OPTS="$RPM_OPT_FLAGS -fPIC -fdefault-integer-8"
e2d6d6
popd
e2d6d6
e2d6d6
# Build the shared lapack library
e2d6d6
pushd SRC
e2d6d6
make clean
e2d6d6
sed -i 's|-soname,liblapack|-soname,liblapack64|g' Makefile
e2d6d6
make FFLAGS="$RPM_OPT_FLAGS -fPIC -fdefault-integer-8" CFLAGS="$RPM_OPT_FLAGS -fPIC -fdefault-integer-8" shared
e2d6d6
cp liblapack.so.%{version} ${RPM_BUILD_DIR}/%{name}-%{version}/liblapack64.so.%{version}
e2d6d6
sed -i 's|-soname,liblapack64|-soname,liblapack|g' Makefile
e2d6d6
popd
e2d6d6
%endif
e2d6d6
e2d6d6
ln -s liblapack.so.%{version} liblapack.so
e2d6d6
%if 0%{?arch64}
e2d6d6
ln -s liblapack64.so.%{version} liblapack64.so
e2d6d6
%endif
e2d6d6
e2d6d6
# Build the lapacke libraries
e2d6d6
pushd lapacke
e2d6d6
make clean
e2d6d6
make CFLAGS="$RPM_OPT_FLAGS" lapacke
e2d6d6
make clean
e2d6d6
make CFLAGS="$RPM_OPT_FLAGS -fPIC" shlib
e2d6d6
cp liblapacke.so.%{version} ${RPM_BUILD_DIR}/%{name}-%{version}/
e2d6d6
popd
e2d6d6
e2d6d6
cp -p %{SOURCE4} lapackqref.ps
e2d6d6
cp -p %{SOURCE5} blasqr.ps
e2d6d6
e2d6d6
%install
e2d6d6
mkdir -p ${RPM_BUILD_ROOT}%{_libdir}
e2d6d6
mkdir -p ${RPM_BUILD_ROOT}%{_mandir}/man3
e2d6d6
chmod 755 ${RPM_BUILD_ROOT}%{_mandir}/man3
e2d6d6
e2d6d6
for f in liblapack.so.%{version} libblas.so.%{version} liblapacke.so.%{version} libblas.a liblapack.a liblapack_pic.a liblapacke.a; do
e2d6d6
  cp -f $f ${RPM_BUILD_ROOT}%{_libdir}/$f
e2d6d6
done
e2d6d6
e2d6d6
%if 0%{?arch64}
e2d6d6
for f in liblapack64.so.%{version} libblas64.so.%{version} libblas64.a liblapack64.a liblapack64_pic.a; do
e2d6d6
  cp -f $f ${RPM_BUILD_ROOT}%{_libdir}/$f
e2d6d6
done
e2d6d6
%endif
e2d6d6
e2d6d6
# Blas manpages
e2d6d6
pushd manpages/
e2d6d6
mkdir -p blas/man/man3
e2d6d6
cd man/man3/
e2d6d6
mv caxpy.f.3 CAXPY.3 ccopy.f.3 CCOPY.3 cdotc.f.3 CDOTC.3 cdotu.f.3 CDOTU.3 cgbmv.f.3 CGBMV.3 \
e2d6d6
cgemm.f.3 CGEMM.3 cgemv.f.3 CGEMV.3 cgerc.f.3 CGERC.3 cgeru.f.3 CGERU.3 chbmv.f.3 CHBMV.3 \
e2d6d6
chemm.f.3 CHEMM.3 chemv.f.3 CHEMV.3 cher.f.3 CHER.3 cher2.f.3 CHER2.3 cher2k.f.3 CHER2K.3 \
e2d6d6
cherk.f.3 CHERK.3 chpmv.f.3 CHPMV.3 chpr.f.3 CHPR.3 chpr2.f.3 CHPR2.3 crotg.f.3 CROTG.3 \
e2d6d6
cscal.f.3 CSCAL.3 csrot.f.3 CSROT.3 csscal.f.3 CSSCAL.3 cswap.f.3 CSWAP.3 csymm.f.3 \
e2d6d6
CSYMM.3 csyr2k.f.3 CSYR2K.3 csyrk.f.3 CSYRK.3 ctbmv.f.3 CTBMV.3 ctbsv.f.3 CTBSV.3 ctpmv.f.3 \
e2d6d6
CTPMV.3 ctpsv.f.3 CTPSV.3 ctrmm.f.3 CTRMM.3 ctrmv.f.3 CTRMV.3 ctrsm.f.3 CTRSM.3 ctrsv.f.3 \
e2d6d6
CTRSV.3 dasum.f.3 DASUM.3 daxpy.f.3 DAXPY.3 dcabs1.f.3 DCABS1.3 dcopy.f.3 DCOPY.3 ddot.f.3 \
e2d6d6
DDOT.3 dgbmv.f.3 DGBMV.3 dgemm.f.3 DGEMM.3 dgemv.f.3 DGEMV.3 dger.f.3 DGER.3 dnrm2.f.3 \
e2d6d6
DNRM2.3 drot.f.3 DROT.3 drotg.f.3 DROTG.3 drotm.f.3 DROTM.3 drotmg.f.3 DROTMG.3 dsbmv.f.3 \
e2d6d6
DSBMV.3 dscal.f.3 DSCAL.3 dsdot.f.3 DSDOT.3 dspmv.f.3 DSPMV.3 dspr.f.3 DSPR.3 dspr2.f.3 \
e2d6d6
DSPR2.3 dswap.f.3 DSWAP.3 dsymm.f.3 DSYMM.3 dsymv.f.3 DSYMV.3 dsyr.f.3 DSYR.3 dsyr2.f.3 \
e2d6d6
DSYR2.3 dsyr2k.f.3 DSYR2K.3 dsyrk.f.3 DSYRK.3 dtbmv.f.3 DTBMV.3 dtbsv.f.3 DTBSV.3 dtpmv.f.3 \
e2d6d6
DTPMV.3 dtpsv.f.3 DTPSV.3 dtrmm.f.3 DTRMM.3 dtrmv.f.3 DTRMV.3 dtrsm.f.3 DTRSM.3 dtrsv.f.3 \
e2d6d6
DTRSV.3 dzasum.f.3 DZASUM.3 dznrm2.f.3 DZNRM2.3 icamax.f.3 ICAMAX.3 idamax.f.3 IDAMAX.3 \
e2d6d6
isamax.f.3 ISAMAX.3 izamax.f.3 IZAMAX.3 LSAME.3 sasum.f.3 SASUM.3 saxpy.f.3 SAXPY.3 \
e2d6d6
scabs1.f.3 SCABS1.3 scasum.f.3 SCASUM.3 scnrm2.f.3 SCNRM2.3 scopy.f.3 SCOPY.3 sdot.f.3 SDOT.3 \
e2d6d6
sdsdot.f.3 SDSDOT.3 sgbmv.f.3 SGBMV.3 sgemm.f.3 SGEMM.3 sgemv.f.3 SGEMV.3 sger.f.3 SGER.3 \
e2d6d6
snrm2.f.3 SNRM2.3 srot.f.3 SROT.3 srotg.f.3 SROTG.3 srotm.f.3 SROTM.3 srotmg.f.3 SROTMG.3 \
e2d6d6
ssbmv.f.3 SSBMV.3 sscal.f.3 SSCAL.3 sspmv.f.3 SSPMV.3 sspr.f.3 SSPR.3 sspr2.f.3 SSPR2.3 \
e2d6d6
sswap.f.3 SSWAP.3 ssymm.f.3 SSYMM.3 ssymv.f.3 SSYMV.3 ssyr.f.3 SSYR.3 ssyr2.f.3 SSYR2.3 \
e2d6d6
ssyr2k.f.3 SSYR2K.3 ssyrk.f.3 SSYRK.3 stbmv.f.3 STBMV.3 stbsv.f.3 STBSV.3 stpmv.f.3 STPMV.3 \
e2d6d6
stpsv.f.3 STPSV.3 strmm.f.3 STRMM.3 strmv.f.3 STRMV.3 strsm.f.3 STRSM.3 strsv.f.3 STRSV.3 \
e2d6d6
XERBLA.3 XERBLA_ARRAY.3 zaxpy.f.3 ZAXPY.3 zcopy.f.3 ZCOPY.3 \
e2d6d6
zdotc.f.3 ZDOTC.3 zdotu.f.3 ZDOTU.3 zdrot.f.3 ZDROT.3 zdscal.f.3 ZDSCAL.3 zgbmv.f.3 ZGBMV.3 \
e2d6d6
zgemm.f.3 ZGEMM.3 zgemv.f.3 ZGEMV.3 zgerc.f.3 ZGERC.3 zgeru.f.3 ZGERU.3 zhbmv.f.3 ZHBMV.3 \
e2d6d6
zhemm.f.3 ZHEMM.3 zhemv.f.3 ZHEMV.3 zher.f.3 ZHER.3 zher2.f.3 ZHER2.3 zher2k.f.3 ZHER2K.3 \
e2d6d6
zherk.f.3 ZHERK.3 zhpmv.f.3 ZHPMV.3 zhpr.f.3 ZHPR.3 zhpr2.f.3 ZHPR2.3 zrotg.f.3 ZROTG.3 \
e2d6d6
zscal.f.3 ZSCAL.3 zswap.f.3 ZSWAP.3 zsymm.f.3 ZSYMM.3 zsyr2k.f.3 ZSYR2K.3 zsyrk.f.3 ZSYRK.3 \
e2d6d6
ztbmv.f.3 ZTBMV.3 ztbsv.f.3 ZTBSV.3 ztpmv.f.3 ZTPMV.3 ztpsv.f.3 ZTPSV.3 ztrmm.f.3 ZTRMM.3 \
e2d6d6
ztrmv.f.3 ZTRMV.3 ztrsm.f.3 ZTRSM.3 ztrsv.f.3 ZTRSV.3 ../../blas/man/man3
e2d6d6
cd ../..
e2d6d6
popd
e2d6d6
e2d6d6
find manpages/blas/man/man3 -type f -printf "%{_mandir}/man3/%f*\n" > blasmans
e2d6d6
e2d6d6
find manpages/man/man3 -type f -printf "%{_mandir}/man3/%f*\n" > lapackmans
e2d6d6
e2d6d6
cp -f manpages/blas/man/man3/* ${RPM_BUILD_ROOT}%{_mandir}/man3
e2d6d6
cp -f manpages/man/man3/* ${RPM_BUILD_ROOT}%{_mandir}/man3
e2d6d6
e2d6d6
# Lapacke headers
e2d6d6
mkdir -p %{buildroot}%{_includedir}/lapacke/
e2d6d6
cp -a lapacke/include/*.h %{buildroot}%{_includedir}/lapacke/
e2d6d6
e2d6d6
cd ${RPM_BUILD_ROOT}%{_libdir}
e2d6d6
ln -sf liblapack.so.%{version} liblapack.so
e2d6d6
ln -sf liblapack.so.%{version} liblapack.so.%{shortver}
e2d6d6
ln -sf liblapack.so.%{version} liblapack.so.%{mediumver}
e2d6d6
ln -sf libblas.so.%{version} libblas.so
e2d6d6
ln -sf libblas.so.%{version} libblas.so.%{shortver}
e2d6d6
ln -sf libblas.so.%{version} libblas.so.%{mediumver}
e2d6d6
ln -sf liblapacke.so.%{version} liblapacke.so
e2d6d6
ln -sf liblapacke.so.%{version} liblapacke.so.%{shortver}
e2d6d6
ln -sf liblapacke.so.%{version} liblapacke.so.%{mediumver}
e2d6d6
%if 0%{?arch64}
e2d6d6
ln -sf liblapack64.so.%{version} liblapack64.so
e2d6d6
ln -sf liblapack64.so.%{version} liblapack64.so.%{shortver}
e2d6d6
ln -sf liblapack64.so.%{version} liblapack64.so.%{mediumver}
e2d6d6
ln -sf libblas64.so.%{version} libblas64.so
e2d6d6
ln -sf libblas64.so.%{version} libblas64.so.%{shortver}
e2d6d6
ln -sf libblas64.so.%{version} libblas64.so.%{mediumver}
e2d6d6
%endif
e2d6d6
e2d6d6
%post -p /sbin/ldconfig
e2d6d6
e2d6d6
%postun -p /sbin/ldconfig
e2d6d6
e2d6d6
%post -n blas -p /sbin/ldconfig
e2d6d6
e2d6d6
%postun -n blas -p /sbin/ldconfig
e2d6d6
e2d6d6
%if 0%{?arch64}
e2d6d6
%post -n lapack64 -p /sbin/ldconfig
e2d6d6
e2d6d6
%postun -n lapack64 -p /sbin/ldconfig
e2d6d6
e2d6d6
%post -n blas64 -p /sbin/ldconfig
e2d6d6
e2d6d6
%postun -n blas64 -p /sbin/ldconfig
e2d6d6
%endif
e2d6d6
e2d6d6
%files -f lapackmans
e2d6d6
%doc README LICENSE lapackqref.ps
e2d6d6
%dir %{_mandir}/man3/
e2d6d6
%{_libdir}/liblapack.so.*
e2d6d6
%{_libdir}/liblapacke.so.*
e2d6d6
e2d6d6
%files devel
e2d6d6
%{_includedir}/lapacke/
e2d6d6
%{_libdir}/liblapack.so
e2d6d6
%{_libdir}/liblapacke.so
e2d6d6
e2d6d6
%files static
e2d6d6
%{_libdir}/liblapack.a
e2d6d6
%{_libdir}/liblapack_pic.a
e2d6d6
%{_libdir}/liblapacke.a
e2d6d6
e2d6d6
%files -n blas -f blasmans
e2d6d6
%doc blasqr.ps LICENSE
e2d6d6
%dir %{_mandir}/man3/
e2d6d6
%{_libdir}/libblas.so.*
e2d6d6
e2d6d6
%files -n blas-devel
e2d6d6
%{_libdir}/libblas.so
e2d6d6
e2d6d6
%files -n blas-static
e2d6d6
%{_libdir}/libblas.a
e2d6d6
e2d6d6
%if 0%{?arch64}
e2d6d6
%files -n blas64
e2d6d6
%doc LICENSE
e2d6d6
%{_libdir}/libblas64.so.*
e2d6d6
e2d6d6
%files -n blas64-devel
e2d6d6
%{_libdir}/libblas64.so
e2d6d6
e2d6d6
%files -n blas64-static
e2d6d6
%{_libdir}/libblas64.a
e2d6d6
e2d6d6
%files -n lapack64
e2d6d6
%doc README LICENSE
e2d6d6
%{_libdir}/liblapack64.so.*
e2d6d6
e2d6d6
%files -n lapack64-devel
e2d6d6
%{_libdir}/liblapack64.so
e2d6d6
e2d6d6
%files -n lapack64-static
e2d6d6
%{_libdir}/liblapack64.a
e2d6d6
%{_libdir}/liblapack64_pic.a
e2d6d6
%endif
e2d6d6
e2d6d6
%changelog
e2d6d6
* Wed Oct 22 2014 Frantisek Kluknavsky <fkluknav@redhat.com> - 3.4.2-5
e2d6d6
- Use generic macro to detect 64 bit platforms (fix ppc64le/aarch64)
e2d6d6
- Resolves: rhbz#1152634
e2d6d6
e2d6d6
* Fri Jan 24 2014 Daniel Mach <dmach@redhat.com> - 3.4.2-4
e2d6d6
- Mass rebuild 2014-01-24
e2d6d6
e2d6d6
* Fri Dec 27 2013 Daniel Mach <dmach@redhat.com> - 3.4.2-3
e2d6d6
- Mass rebuild 2013-12-27
e2d6d6
e2d6d6
* Mon Mar 25 2013 Tom Callaway <spot@fedoraproject.org> - 3.4.2-2
e2d6d6
- clean out non-free example files from source tarball
e2d6d6
e2d6d6
* Thu Feb 21 2013 Tom Callaway <spot@fedoraproject.org> - 3.4.2-1
e2d6d6
- update to 3.4.2
e2d6d6
e2d6d6
* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.4.1-5
e2d6d6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
e2d6d6
e2d6d6
* Mon Jan  7 2013 Tom Callaway <spot@fedoraproject.org> - 3.4.1-4
e2d6d6
- fix 64bit sonames
e2d6d6
e2d6d6
* Fri Jan  4 2013 Tom Callaway <spot@fedoraproject.org> - 3.4.1-3
e2d6d6
- enable 64bit INTEGER variant subpackages
e2d6d6
e2d6d6
* Wed Oct 24 2012 Tom Callaway <spot@fedoraproject.org> - 3.4.1-2
e2d6d6
- fix issue where lapacke was linking to testing functions (bz860332)
e2d6d6
e2d6d6
* Thu Sep 06 2012 Orion Poplawski <orion@cora.nwra.com> - 3.4.1-1
e2d6d6
- Update to 3.4.1
e2d6d6
- Rebase lapacke shared lib patch
e2d6d6
e2d6d6
* Thu Jul 19 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.4.0-3
e2d6d6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
e2d6d6
e2d6d6
* Fri Jan 13 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.4.0-2
e2d6d6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
e2d6d6
e2d6d6
* Mon Nov 28 2011 Tom Callaway <spot@fedoraproject.org> - 3.4.0-1
e2d6d6
- update to 3.4.0
e2d6d6
- build and include lapacke
e2d6d6
e2d6d6
* Thu Jun 02 2011 Tom Callaway <spot@fedoraproject.org> - 3.3.1-1
e2d6d6
- update to 3.3.1
e2d6d6
- create /usr/share/man/manl/ as 0755 and own it in lapack and blas (bz634369)
e2d6d6
- spec file cleanup
e2d6d6
e2d6d6
* Mon Feb 07 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.2.2-3
e2d6d6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
e2d6d6
e2d6d6
* Sat Jul 17 2010 Dan Horák <dan[at]danny.cz> - 3.2.2-2
e2d6d6
- fix a typo in Makefile.lapack causing #615618
e2d6d6
e2d6d6
* Wed Jul  7 2010 Tom "spot" Callaway <tcallawa@redhat.com> - 3.2.2-1
e2d6d6
- update to 3.2.2
e2d6d6
- properly include license text
e2d6d6
- static subpackages depend on -devel (they're not useful without it)
e2d6d6
- clean up makefiles
e2d6d6
- pass on version into makefiles, rather than manually hacking on each update
e2d6d6
e2d6d6
* Wed Dec  9 2009 Tom "spot" Callaway <tcallawa@redhat.com> - 3.2.1-4
e2d6d6
- Move static libs to static subpackages (resolves bz 545143)
e2d6d6
e2d6d6
* Fri Sep  4 2009 Tom "spot" Callaway <tcallawa@redhat.com> - 3.2.1-3
e2d6d6
- use RPM_OPT_O_FLAGS (-O0) everywhere necessary, drop RPM_OPT_SIZE_FLAGS (-Os) (bz 520518)
e2d6d6
e2d6d6
* Thu Aug 20 2009 Tom "spot" Callaway <tcallawa@redhat.com> - 3.2.1-2
e2d6d6
- don't enable xblas yet
e2d6d6
e2d6d6
* Fri Aug 14 2009 Tom "spot" Callaway <tcallawa@redhat.com> - 3.2.1-1
e2d6d6
- update to 3.2.1, spec file cleanups
e2d6d6
e2d6d6
* Mon Aug 10 2009 Ville Skyttä <ville.skytta@iki.fi> - 3.1.1-7
e2d6d6
- Convert specfile to UTF-8.
e2d6d6
e2d6d6
* Fri Jul 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.1.1-6
e2d6d6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
e2d6d6
e2d6d6
* Wed Feb 25 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.1.1-5
e2d6d6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
e2d6d6
e2d6d6
* Tue Jul  8 2008 Tom "spot" Callaway <tcallawa@redhat.com> 3.1.1-4
e2d6d6
- fix missing dependencies (bz 442915)
e2d6d6
e2d6d6
* Tue Feb 19 2008 Fedora Release Engineering <rel-eng@fedoraproject.org> - 3.1.1-3
e2d6d6
- Autorebuild for GCC 4.3
e2d6d6
e2d6d6
* Thu Aug 23 2007 Tom "spot" Callaway <tcallawa@redhat.com> 3.1.1-2
e2d6d6
- fix license (BSD)
e2d6d6
- rebuild for BuildID
e2d6d6
e2d6d6
* Fri May 25 2007 Tom "spot" Callaway <tcallawa@redhat.com> 3.1.1-1
e2d6d6
- bump to 3.1.1
e2d6d6
e2d6d6
* Fri Jan  5 2007 Tom "spot" Callaway <tcallawa@redhat.com> 3.1.0-4
e2d6d6
- fix bugzillas 219740,219741
e2d6d6
e2d6d6
* Wed Dec 20 2006 Tom "spot" Callaway <tcallawa@redhat.com> 3.1.0-3
e2d6d6
- make clean everywhere
e2d6d6
e2d6d6
* Wed Dec 20 2006 Tom "spot" Callaway <tcallawa@redhat.com> 3.1.0-2
e2d6d6
- fix the Makefiles
e2d6d6
e2d6d6
* Tue Nov 14 2006 Tom "spot" Callaway <tcallawa@redhat.com> 3.1.0-1
e2d6d6
- bump to 3.1.0
e2d6d6
e2d6d6
* Thu Sep 14 2006 Tom "spot" Callaway <tcallawa@redhat.com> 3.0-38
e2d6d6
- bump for fc-6
e2d6d6
e2d6d6
* Tue Feb 28 2006 Tom "spot" Callaway <tcallawa@redhat.com> 3.0-37
e2d6d6
- bump for FC5
e2d6d6
e2d6d6
* Mon Dec 19 2005 Tom "spot" Callaway <tcallawa@redhat.com> 3.0-36
e2d6d6
- bump for gcc4.1
e2d6d6
e2d6d6
* Tue Nov 15 2005 Tom "spot" Callaway <tcallawa@redhat.com> 3.0-35
e2d6d6
- try not to patch files that do not exist
e2d6d6
e2d6d6
* Tue Nov 15 2005 Tom "spot" Callaway <tcallawa@redhat.com> 3.0-34
e2d6d6
- finish fixing bz 143340
e2d6d6
e2d6d6
* Thu Oct  6 2005 Tom "spot" Callaway <tcallawa@redhat.com> 3.0-33
e2d6d6
- fix bz 169558
e2d6d6
e2d6d6
* Wed Sep 28 2005 Tom "spot" Callaway <tcallawa@redhat.com> 3.0-32
e2d6d6
- move to latest upstream 3.0 tarballs
e2d6d6
- add 8 missing BLAS functions from upstream blas tarball (bz 143340)
e2d6d6
e2d6d6
* Thu Sep 22 2005 Tom "spot" Callaway <tcallawa@redhat.com> 3.0-31
e2d6d6
- actually install liblapack_pic.a
e2d6d6
e2d6d6
* Wed Sep 14 2005 Tom "spot" Callaway <tcallawa@redhat.com> 3.0-30
e2d6d6
- make -devel packages
e2d6d6
- make liblapack_pic.a package
e2d6d6
- use dist tag
e2d6d6
e2d6d6
* Thu Apr 14 2005 Tom "spot" Callaway <tcallawa@redhat.com> 3.0-29
e2d6d6
- package moves to Fedora Extras, gcc4
e2d6d6
e2d6d6
* Tue Dec 21 2004 Ivana Varekova <varekova@redhat.com>
e2d6d6
- fix bug #143420 problem with compiler optimalizations
e2d6d6
e2d6d6
* Tue Nov 30 2004 Ivana Varekova <varekova@redhat.com>
e2d6d6
- fix bug #138683 problem with compilation
e2d6d6
e2d6d6
* Thu Nov 11 2004 Ivana Varekova <varekova@redhat.com>
e2d6d6
- fix build problem bug #138447
e2d6d6
e2d6d6
* Tue Jun 15 2004 Elliot Lee <sopwith@redhat.com>
e2d6d6
- rebuilt
e2d6d6
e2d6d6
* Tue Mar 02 2004 Elliot Lee <sopwith@redhat.com>
e2d6d6
- rebuilt
e2d6d6
e2d6d6
* Fri Feb 13 2004 Elliot Lee <sopwith@redhat.com>
e2d6d6
- rebuilt
e2d6d6
e2d6d6
* Wed Dec 31 2003 Jeff Johnson <jbj@jbj.org> 3.0-23
e2d6d6
- link -lg2c explicitly into liblapack and libblas (#109079).
e2d6d6
e2d6d6
* Wed Aug 20 2003 Jeremy Katz <katzj@redhat.com> 3.0-22
e2d6d6
- nuke -man subpackages (#97506)
e2d6d6
e2d6d6
* Wed Jun 04 2003 Elliot Lee <sopwith@redhat.com>
e2d6d6
- rebuilt
e2d6d6
e2d6d6
* Wed Jan 22 2003 Tim Powers <timp@redhat.com>
e2d6d6
- rebuilt
e2d6d6
e2d6d6
* Sun Nov 10 2002 Jeff Johnson <jbj@redhat.com> 3.0-19
e2d6d6
- rebuild with x86_64.
e2d6d6
e2d6d6
* Thu Jul 18 2002 Trond Eivind Glomsrod <teg@redhat.com> 3.0-18
e2d6d6
- Remove an empty man page (#63569)
e2d6d6
e2d6d6
* Fri Jun 21 2002 Tim Powers <timp@redhat.com>
e2d6d6
- automated rebuild
e2d6d6
e2d6d6
* Thu May 23 2002 Tim Powers <timp@redhat.com>
e2d6d6
- automated rebuild
e2d6d6
e2d6d6
* Wed May  1 2002 Trond Eivind Glomsrod <teg@redhat.com> 3.0-15
e2d6d6
- Rebuild
e2d6d6
e2d6d6
* Thu Feb 21 2002 Trond Eivind Glomsrod <teg@redhat.com> 3.0-14
e2d6d6
- Rebuild
e2d6d6
e2d6d6
* Wed Jan 09 2002 Tim Powers <timp@redhat.com>
e2d6d6
- automated rebuild
e2d6d6
e2d6d6
* Mon Aug 13 2001 Trond Eivind Glomsrod <teg@redhat.com> 3.0-12
e2d6d6
- The man-pages for xerbla and lsame were in blas-man and lapack-man (#51605)
e2d6d6
e2d6d6
* Fri Jun  8 2001 Trond Eivind Glomsrod <teg@redhat.com>
e2d6d6
- Reenable optimization for IA64
e2d6d6
e2d6d6
* Fri May 25 2001 Trond Eivind Glomsrod <teg@redhat.com>
e2d6d6
- Add all patches from the LAPACK site as of 2001-05-25
e2d6d6
- Use this workaround for IA64 instead
e2d6d6
- Remove SPARC workaround
e2d6d6
- Don't exclude IA64
e2d6d6
e2d6d6
* Thu Dec 07 2000 Trond Eivind Glomsrod <teg@redhat.com>
e2d6d6
- rebuild for main distribution
e2d6d6
e2d6d6
* Mon Nov 20 2000 Trond Eivind Glomsrod <teg@redhat.com>
e2d6d6
- add the LAPACK Quick Reference Guide to the docs
e2d6d6
- add the BLAS Quick Reference Guide to the docs
e2d6d6
e2d6d6
* Tue Aug 01 2000 Trond Eivind Glomsrod <teg@redhat.com>
e2d6d6
- fix lack of ldconfig in postuninstall script
e2d6d6
e2d6d6
* Mon Jul 24 2000 Prospector <prospector@redhat.com>
e2d6d6
- rebuilt
e2d6d6
e2d6d6
* Mon Jul 10 2000 Trond Eivind Glomsrod <teg@redhat.com>
e2d6d6
- updated with the latest updates (new tarfile..) from netlib 
e2d6d6
e2d6d6
* Thu Jun 15 2000 Trond Eivind Glomsrod <teg@redhat.com>
e2d6d6
- use %%{_mandir}
e2d6d6
- added some flags to work around SPARC compiler bug
e2d6d6
e2d6d6
* Wed Jan 19 2000 Tim Powers <timp@redhat.com>
e2d6d6
- bzipped sources to conserve space
e2d6d6
e2d6d6
* Tue Jan  4 2000 Jeff Johnson <jbj@redhat.com>
e2d6d6
- build for PowerTools 6.2.
e2d6d6
e2d6d6
* Sat Dec 25 1999 Joachim Frieben <jfrieben@hotmail.com>
e2d6d6
- updated to version v3.0 + update as of Tue Nov 30 1999
e2d6d6
e2d6d6
* Sat Oct 23 1999 Joachim Frieben <jfrieben@hotmail.com>
e2d6d6
- updated Red Hat makefiles to v3.0
e2d6d6
e2d6d6
* Mon Aug 2 1999 Tim Powers <timp@redhat.com>
e2d6d6
- updated to v3.0
e2d6d6
- built for 6.1
e2d6d6
e2d6d6
* Mon Apr 12 1999 Michael Maher <mike@redhat.com>
e2d6d6
- built package for 6.0
e2d6d6
e2d6d6
* Sat Oct 24 1998 Jeff Johnson <jbj@redhat.com>
e2d6d6
- new description/summary text.
e2d6d6
e2d6d6
* Fri Jul 17 1998 Jeff Johnson <jbj@redhat.com>
e2d6d6
- repackage for powertools.
e2d6d6
e2d6d6
* Sun Feb 15 1998 Trond Eivind Glomsrod <teg@pvv.ntnu.no>
e2d6d6
 [lapack-2.0-9]
e2d6d6
 - No code updates, just built with a customized rpm -
e2d6d6
   this should make dependencies right.
e2d6d6
e2d6d6
* Sat Feb 07 1998 Trond Eivind Glomsrod <teg@pvv.ntnu.no>
e2d6d6
 [lapack-2.0-8]
e2d6d6
 - Total rewrite of the spec file
e2d6d6
 - Added my own makefiles - libs should build better,
e2d6d6
   static libs should work (and be faster than they
e2d6d6
	would be if they had worked earlier ;)
e2d6d6
 - No patch necessary anymore.
e2d6d6
 - Renamed lapack-blas and lapack-blas-man to
e2d6d6
   blas and blas-man. "Obsoletes:" tag added.
e2d6d6
   (oh - and as always: Dedicated to the girl I
e2d6d6
   love, Eline Skirnisdottir)
e2d6d6
e2d6d6
* Sat Dec 06 1997 Trond Eivind Glomsrod <teg@pvv.ntnu.no>
e2d6d6
 [lapack-2.0-7]
e2d6d6
  - added a dependency to glibc, so people don't try with libc5
e2d6d6
e2d6d6
* Thu Nov 20 1997 Trond Eivind Glomsrod <teg@pvv.ntnu.no>
e2d6d6
  [lapack-2.0-6]
e2d6d6
  - removed etime.c
e2d6d6
  - compiled with egcs, and for glibc 2.0
e2d6d6
e2d6d6
* Sun Oct 12 1997 Trond Eivind Glomsrod <teg@pvv.ntnu.no>
e2d6d6
  [lapack-2.0-5]
e2d6d6
  - added a changelog
e2d6d6
  - cleaned up building of shared libs
e2d6d6
  - now uses a BuildRoot
e2d6d6
  - cleaned up the specfile