4ea501
%global shortver	3
4ea501
%global mediumver	%{shortver}.4
4ea501
4ea501
%if %{__isa_bits} == 64
4ea501
%global arch64 1
4ea501
%else
4ea501
%global arch64 0
4ea501
%endif
4ea501
4ea501
Summary: Numerical linear algebra package libraries
4ea501
Name: lapack
4ea501
Version: %{mediumver}.2
4ea501
Release: 5%{?dist}
4ea501
License: BSD
4ea501
Group: Development/Libraries
4ea501
URL: http://www.netlib.org/lapack/
4ea501
# Upstream contains two non-free files with no permission to redistribute
4ea501
# lapacke/examples/example_DGESV_rowmajor.c and
4ea501
# lapacke/examples/example_ZGESV_rowmajor.c.
4ea501
# They have been removed from the source tarball.
4ea501
# Source0: http://www.netlib.org/lapack/lapack-%{version}.tgz
4ea501
Source0: lapack-%{version}-clean.tgz
4ea501
Source1: http://www.netlib.org/lapack/manpages.tgz
4ea501
Source2: Makefile.blas
4ea501
Source3: Makefile.lapack
4ea501
Source4: http://www.netlib.org/lapack/lapackqref.ps
4ea501
Source5: http://www.netlib.org/blas/blasqr.ps
4ea501
Patch3: lapack-3.4.0-make.inc.patch
4ea501
Patch4: lapack-3.4.1-lapacke-shared.patch
4ea501
Patch5: lapack-3.4.1-lapacke-disable-testing-functions.patch
4ea501
BuildRequires: gcc-gfortran
4ea501
4ea501
%description
4ea501
LAPACK (Linear Algebra PACKage) is a standard library for numerical
4ea501
linear algebra. LAPACK provides routines for solving systems of
4ea501
simultaneous linear equations, least-squares solutions of linear
4ea501
systems of equations, eigenvalue problems, and singular value
4ea501
problems. Associated matrix factorizations (LU, Cholesky, QR, SVD,
4ea501
Schur, and generalized Schur) and related computations (i.e.,
4ea501
reordering of Schur factorizations and estimating condition numbers)
4ea501
are also included. LAPACK can handle dense and banded matrices, but
4ea501
not general sparse matrices. Similar functionality is provided for
4ea501
real and complex matrices in both single and double precision. LAPACK
4ea501
is coded in Fortran90 and built with gcc.
4ea501
4ea501
%package devel
4ea501
Summary: LAPACK development libraries
4ea501
Group: Development/Libraries
4ea501
Requires: %{name}%{?_isa} = %{version}-%{release}
4ea501
Requires: blas-devel%{?_isa} = %{version}-%{release}
4ea501
4ea501
%description devel
4ea501
LAPACK development libraries (shared).
4ea501
4ea501
%package static
4ea501
Summary: LAPACK static libraries
4ea501
Group: Development/Libraries
4ea501
Requires: lapack-devel%{?_isa} = %{version}-%{release}
4ea501
4ea501
%description static
4ea501
LAPACK static libraries.
4ea501
4ea501
%package -n blas
4ea501
Summary: The Basic Linear Algebra Subprograms library
4ea501
Group: Development/Libraries
4ea501
4ea501
%description -n blas
4ea501
BLAS (Basic Linear Algebra Subprograms) is a standard library which
4ea501
provides a number of basic algorithms for numerical algebra. 
4ea501
4ea501
%package -n blas-devel
4ea501
Summary: BLAS development libraries
4ea501
Group: Development/Libraries
4ea501
Requires: blas%{?_isa} = %{version}-%{release}
4ea501
Requires: gcc-gfortran
4ea501
4ea501
%description -n blas-devel
4ea501
BLAS development libraries (shared).
4ea501
4ea501
%package -n blas-static
4ea501
Summary: BLAS static libraries
4ea501
Group: Development/Libraries
4ea501
Requires: blas-devel%{?_isa} = %{version}-%{release}
4ea501
4ea501
%description -n blas-static
4ea501
BLAS static libraries.
4ea501
4ea501
%if 0%{?arch64}
4ea501
%package -n lapack64
4ea501
Summary: Numerical linear algebra package libraries
4ea501
Group: Development/Libraries
4ea501
4ea501
%description -n lapack64
4ea501
LAPACK (Linear Algebra PACKage) is a standard library for numerical
4ea501
linear algebra. LAPACK provides routines for solving systems of
4ea501
simultaneous linear equations, least-squares solutions of linear
4ea501
systems of equations, eigenvalue problems, and singular value
4ea501
problems. Associated matrix factorizations (LU, Cholesky, QR, SVD,
4ea501
Schur, and generalized Schur) and related computations (i.e.,
4ea501
reordering of Schur factorizations and estimating condition numbers)
4ea501
are also included. LAPACK can handle dense and banded matrices, but
4ea501
not general sparse matrices. Similar functionality is provided for
4ea501
real and complex matrices in both single and double precision. LAPACK
4ea501
is coded in Fortran90 and built with gcc.
4ea501
This build has 64bit INTEGER support.
4ea501
4ea501
%package -n lapack64-devel
4ea501
Summary: LAPACK development libraries (64bit INTEGER)
4ea501
Group: Development/Libraries
4ea501
Requires: lapack-devel%{?_isa} = %{version}-%{release}
4ea501
Requires: blas64-devel%{?_isa} = %{version}-%{release}
4ea501
4ea501
%description -n lapack64-devel
4ea501
LAPACK development libraries (shared, 64bit INTEGER).
4ea501
4ea501
%package -n lapack64-static
4ea501
Summary: LAPACK static libraries (64bit INTEGER)
4ea501
Group: Development/Libraries
4ea501
Requires: lapack64-devel%{?_isa} = %{version}-%{release}
4ea501
4ea501
%description -n lapack64-static
4ea501
LAPACK static libraries (64bit INTEGER).
4ea501
4ea501
%package -n blas64
4ea501
Summary: The Basic Linear Algebra Subprograms library (64bit INTEGER)
4ea501
Group: Development/Libraries
4ea501
4ea501
%description -n blas64
4ea501
BLAS (Basic Linear Algebra Subprograms) is a standard library which
4ea501
provides a number of basic algorithms for numerical algebra. This build
4ea501
has 64bit INTEGER support.
4ea501
4ea501
%package -n blas64-devel
4ea501
Summary: BLAS development libraries
4ea501
Group: Development/Libraries
4ea501
Requires: blas-devel%{?_isa} = %{version}-%{release}
4ea501
Requires: gcc-gfortran
4ea501
4ea501
%description -n blas64-devel
4ea501
BLAS development libraries (shared).
4ea501
4ea501
%package -n blas64-static
4ea501
Summary: BLAS static libraries (64bit INTEGER)
4ea501
Group: Development/Libraries
4ea501
Requires: blas64-devel%{?_isa} = %{version}-%{release}
4ea501
4ea501
%description -n blas64-static
4ea501
BLAS static libraries (64bit INTEGER).
4ea501
%endif
4ea501
4ea501
%prep
4ea501
%setup -q 
4ea501
%setup -q -D -T -a1
4ea501
%patch3 -p1 -b .fedora
4ea501
%patch4 -p1 -b .shared
4ea501
%patch5 -p1 -b .disable-functions
4ea501
4ea501
mkdir manpages
4ea501
mv man/ manpages/
4ea501
4ea501
cp -f INSTALL/make.inc.gfortran make.inc
4ea501
cp -f %{SOURCE2} BLAS/SRC/Makefile
4ea501
cp -f %{SOURCE3} SRC/Makefile
4ea501
4ea501
sed -i "s|@SHORTVER@|%{shortver}|g" BLAS/SRC/Makefile
4ea501
sed -i "s|@SHORTVER@|%{shortver}|g" SRC/Makefile
4ea501
sed -i "s|@SHORTVER@|%{shortver}|g" lapacke/Makefile
4ea501
sed -i "s|@LONGVER@|%{version}|g" BLAS/SRC/Makefile
4ea501
sed -i "s|@LONGVER@|%{version}|g" SRC/Makefile
4ea501
sed -i "s|@LONGVER@|%{version}|g" lapacke/Makefile
4ea501
4ea501
%build
4ea501
RPM_OPT_O_FLAGS=$(echo $RPM_OPT_FLAGS | sed 's|-O2|-O0|')
4ea501
export FC=gfortran
4ea501
4ea501
# Build BLAS
4ea501
pushd BLAS/SRC
4ea501
FFLAGS="$RPM_OPT_O_FLAGS" make dcabs1.o
4ea501
FFLAGS="$RPM_OPT_FLAGS" CFLAGS="$RPM_OPT_FLAGS" make static
4ea501
cp libblas.a ${RPM_BUILD_DIR}/%{name}-%{version}/
4ea501
make clean
4ea501
FFLAGS="$RPM_OPT_O_FLAGS -fPIC" make dcabs1.o
4ea501
FFLAGS="$RPM_OPT_FLAGS -fPIC" CFLAGS="$RPM_OPT_FLAGS -fPIC" make shared
4ea501
cp libblas.so.%{version} ${RPM_BUILD_DIR}/%{name}-%{version}/
4ea501
%if 0%{?arch64}
4ea501
make clean
4ea501
FFLAGS="$RPM_OPT_O_FLAGS -fdefault-integer-8" make dcabs1.o
4ea501
FFLAGS="$RPM_OPT_FLAGS -fdefault-integer-8" CFLAGS="$RPM_OPT_FLAGS" make static
4ea501
cp libblas.a ${RPM_BUILD_DIR}/%{name}-%{version}/libblas64.a
4ea501
make clean
4ea501
FFLAGS="$RPM_OPT_O_FLAGS -fPIC -fdefault-integer-8" make dcabs1.o
4ea501
sed -i 's|-soname,libblas|-soname,libblas64|g' Makefile
4ea501
FFLAGS="$RPM_OPT_FLAGS -fPIC -fdefault-integer-8" CFLAGS="$RPM_OPT_FLAGS -fPIC" make shared
4ea501
sed -i 's|-soname,libblas64|-soname,libblas|g' Makefile
4ea501
cp libblas.so.%{version} ${RPM_BUILD_DIR}/%{name}-%{version}/libblas64.so.%{version}
4ea501
%endif
4ea501
popd
4ea501
4ea501
ln -s libblas.so.%{version} libblas.so
4ea501
%if 0%{?arch64}
4ea501
ln -s libblas64.so.%{version} libblas64.so
4ea501
%endif
4ea501
4ea501
# Build the static dlamch, dsecnd, lsame, second, slamch bits
4ea501
pushd INSTALL
4ea501
make NOOPT="$RPM_OPT_O_FLAGS" OPTS="$RPM_OPT_FLAGS"
4ea501
popd
4ea501
4ea501
# Build the static lapack library
4ea501
pushd SRC
4ea501
make FFLAGS="$RPM_OPT_FLAGS" CFLAGS="$RPM_OPT_FLAGS" static
4ea501
cp liblapack.a ${RPM_BUILD_DIR}/%{name}-%{version}/
4ea501
popd
4ea501
4ea501
# Build the static with pic dlamch, dsecnd, lsame, second, slamch bits
4ea501
pushd INSTALL
4ea501
make clean
4ea501
make NOOPT="$RPM_OPT_O_FLAGS -fPIC" OPTS="$RPM_OPT_FLAGS -fPIC"
4ea501
popd
4ea501
4ea501
# Build the static with pic lapack library
4ea501
pushd SRC
4ea501
make clean
4ea501
make FFLAGS="$RPM_OPT_FLAGS -fPIC" CFLAGS="$RPM_OPT_FLAGS -fPIC" static
4ea501
cp liblapack.a ${RPM_BUILD_DIR}/%{name}-%{version}/liblapack_pic.a
4ea501
popd
4ea501
4ea501
%if 0%{?arch64}
4ea501
# Build the static dlamch, dsecnd, lsame, second, slamch bits
4ea501
pushd INSTALL
4ea501
make NOOPT="$RPM_OPT_O_FLAGS -fdefault-integer-8" OPTS="$RPM_OPT_FLAGS -fdefault-integer-8"
4ea501
popd
4ea501
4ea501
# Build the static lapack library
4ea501
pushd SRC
4ea501
make FFLAGS="$RPM_OPT_FLAGS -fdefault-integer-8" CFLAGS="$RPM_OPT_FLAGS" static
4ea501
cp liblapack.a ${RPM_BUILD_DIR}/%{name}-%{version}/liblapack64.a
4ea501
popd
4ea501
4ea501
# Build the static with pic dlamch, dsecnd, lsame, second, slamch bits (64bit INTEGER)
4ea501
pushd INSTALL
4ea501
make clean
4ea501
make NOOPT="$RPM_OPT_O_FLAGS -fPIC -fdefault-integer-8" OPTS="$RPM_OPT_FLAGS -fPIC -fdefault-integer-8"
4ea501
popd
4ea501
4ea501
# Build the static with pic lapack library (64bit INTEGER)
4ea501
pushd SRC
4ea501
make clean
4ea501
make FFLAGS="$RPM_OPT_FLAGS -fPIC -fdefault-integer-8" CFLAGS="$RPM_OPT_FLAGS -fPIC" static
4ea501
cp liblapack.a ${RPM_BUILD_DIR}/%{name}-%{version}/liblapack64_pic.a
4ea501
popd
4ea501
%endif
4ea501
4ea501
# Build the shared dlamch, dsecnd, lsame, second, slamch bits
4ea501
pushd INSTALL
4ea501
make clean
4ea501
make NOOPT="$RPM_OPT_O_FLAGS -fPIC" OPTS="$RPM_OPT_FLAGS -fPIC"
4ea501
popd
4ea501
4ea501
# Build the shared lapack library
4ea501
pushd SRC
4ea501
make clean
4ea501
make FFLAGS="$RPM_OPT_FLAGS -fPIC" CFLAGS="$RPM_OPT_FLAGS -fPIC" shared
4ea501
cp liblapack.so.%{version} ${RPM_BUILD_DIR}/%{name}-%{version}/
4ea501
popd
4ea501
4ea501
%if 0%{?arch64}
4ea501
# Build the shared dlamch, dsecnd, lsame, second, slamch bits
4ea501
pushd INSTALL
4ea501
make clean
4ea501
make NOOPT="$RPM_OPT_O_FLAGS -fPIC -fdefault-integer-8" OPTS="$RPM_OPT_FLAGS -fPIC -fdefault-integer-8"
4ea501
popd
4ea501
4ea501
# Build the shared lapack library
4ea501
pushd SRC
4ea501
make clean
4ea501
sed -i 's|-soname,liblapack|-soname,liblapack64|g' Makefile
4ea501
make FFLAGS="$RPM_OPT_FLAGS -fPIC -fdefault-integer-8" CFLAGS="$RPM_OPT_FLAGS -fPIC -fdefault-integer-8" shared
4ea501
cp liblapack.so.%{version} ${RPM_BUILD_DIR}/%{name}-%{version}/liblapack64.so.%{version}
4ea501
sed -i 's|-soname,liblapack64|-soname,liblapack|g' Makefile
4ea501
popd
4ea501
%endif
4ea501
4ea501
ln -s liblapack.so.%{version} liblapack.so
4ea501
%if 0%{?arch64}
4ea501
ln -s liblapack64.so.%{version} liblapack64.so
4ea501
%endif
4ea501
4ea501
# Build the lapacke libraries
4ea501
pushd lapacke
4ea501
make clean
4ea501
make CFLAGS="$RPM_OPT_FLAGS" lapacke
4ea501
make clean
4ea501
make CFLAGS="$RPM_OPT_FLAGS -fPIC" shlib
4ea501
cp liblapacke.so.%{version} ${RPM_BUILD_DIR}/%{name}-%{version}/
4ea501
popd
4ea501
4ea501
cp -p %{SOURCE4} lapackqref.ps
4ea501
cp -p %{SOURCE5} blasqr.ps
4ea501
4ea501
%install
4ea501
mkdir -p ${RPM_BUILD_ROOT}%{_libdir}
4ea501
mkdir -p ${RPM_BUILD_ROOT}%{_mandir}/man3
4ea501
chmod 755 ${RPM_BUILD_ROOT}%{_mandir}/man3
4ea501
4ea501
for f in liblapack.so.%{version} libblas.so.%{version} liblapacke.so.%{version} libblas.a liblapack.a liblapack_pic.a liblapacke.a; do
4ea501
  cp -f $f ${RPM_BUILD_ROOT}%{_libdir}/$f
4ea501
done
4ea501
4ea501
%if 0%{?arch64}
4ea501
for f in liblapack64.so.%{version} libblas64.so.%{version} libblas64.a liblapack64.a liblapack64_pic.a; do
4ea501
  cp -f $f ${RPM_BUILD_ROOT}%{_libdir}/$f
4ea501
done
4ea501
%endif
4ea501
4ea501
# Blas manpages
4ea501
pushd manpages/
4ea501
mkdir -p blas/man/man3
4ea501
cd man/man3/
4ea501
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 \
4ea501
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 \
4ea501
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 \
4ea501
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 \
4ea501
cscal.f.3 CSCAL.3 csrot.f.3 CSROT.3 csscal.f.3 CSSCAL.3 cswap.f.3 CSWAP.3 csymm.f.3 \
4ea501
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 \
4ea501
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 \
4ea501
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 \
4ea501
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 \
4ea501
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 \
4ea501
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 \
4ea501
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 \
4ea501
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 \
4ea501
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 \
4ea501
DTRSV.3 dzasum.f.3 DZASUM.3 dznrm2.f.3 DZNRM2.3 icamax.f.3 ICAMAX.3 idamax.f.3 IDAMAX.3 \
4ea501
isamax.f.3 ISAMAX.3 izamax.f.3 IZAMAX.3 LSAME.3 sasum.f.3 SASUM.3 saxpy.f.3 SAXPY.3 \
4ea501
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 \
4ea501
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 \
4ea501
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 \
4ea501
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 \
4ea501
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 \
4ea501
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 \
4ea501
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 \
4ea501
XERBLA.3 XERBLA_ARRAY.3 zaxpy.f.3 ZAXPY.3 zcopy.f.3 ZCOPY.3 \
4ea501
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 \
4ea501
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 \
4ea501
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 \
4ea501
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 \
4ea501
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 \
4ea501
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 \
4ea501
ztrmv.f.3 ZTRMV.3 ztrsm.f.3 ZTRSM.3 ztrsv.f.3 ZTRSV.3 ../../blas/man/man3
4ea501
cd ../..
4ea501
popd
4ea501
4ea501
find manpages/blas/man/man3 -type f -printf "%{_mandir}/man3/%f*\n" > blasmans
4ea501
4ea501
find manpages/man/man3 -type f -printf "%{_mandir}/man3/%f*\n" > lapackmans
4ea501
4ea501
cp -f manpages/blas/man/man3/* ${RPM_BUILD_ROOT}%{_mandir}/man3
4ea501
cp -f manpages/man/man3/* ${RPM_BUILD_ROOT}%{_mandir}/man3
4ea501
4ea501
# Lapacke headers
4ea501
mkdir -p %{buildroot}%{_includedir}/lapacke/
4ea501
cp -a lapacke/include/*.h %{buildroot}%{_includedir}/lapacke/
4ea501
4ea501
cd ${RPM_BUILD_ROOT}%{_libdir}
4ea501
ln -sf liblapack.so.%{version} liblapack.so
4ea501
ln -sf liblapack.so.%{version} liblapack.so.%{shortver}
4ea501
ln -sf liblapack.so.%{version} liblapack.so.%{mediumver}
4ea501
ln -sf libblas.so.%{version} libblas.so
4ea501
ln -sf libblas.so.%{version} libblas.so.%{shortver}
4ea501
ln -sf libblas.so.%{version} libblas.so.%{mediumver}
4ea501
ln -sf liblapacke.so.%{version} liblapacke.so
4ea501
ln -sf liblapacke.so.%{version} liblapacke.so.%{shortver}
4ea501
ln -sf liblapacke.so.%{version} liblapacke.so.%{mediumver}
4ea501
%if 0%{?arch64}
4ea501
ln -sf liblapack64.so.%{version} liblapack64.so
4ea501
ln -sf liblapack64.so.%{version} liblapack64.so.%{shortver}
4ea501
ln -sf liblapack64.so.%{version} liblapack64.so.%{mediumver}
4ea501
ln -sf libblas64.so.%{version} libblas64.so
4ea501
ln -sf libblas64.so.%{version} libblas64.so.%{shortver}
4ea501
ln -sf libblas64.so.%{version} libblas64.so.%{mediumver}
4ea501
%endif
4ea501
4ea501
%post -p /sbin/ldconfig
4ea501
4ea501
%postun -p /sbin/ldconfig
4ea501
4ea501
%post -n blas -p /sbin/ldconfig
4ea501
4ea501
%postun -n blas -p /sbin/ldconfig
4ea501
4ea501
%if 0%{?arch64}
4ea501
%post -n lapack64 -p /sbin/ldconfig
4ea501
4ea501
%postun -n lapack64 -p /sbin/ldconfig
4ea501
4ea501
%post -n blas64 -p /sbin/ldconfig
4ea501
4ea501
%postun -n blas64 -p /sbin/ldconfig
4ea501
%endif
4ea501
4ea501
%files -f lapackmans
4ea501
%doc README LICENSE lapackqref.ps
4ea501
%dir %{_mandir}/man3/
4ea501
%{_libdir}/liblapack.so.*
4ea501
%{_libdir}/liblapacke.so.*
4ea501
4ea501
%files devel
4ea501
%{_includedir}/lapacke/
4ea501
%{_libdir}/liblapack.so
4ea501
%{_libdir}/liblapacke.so
4ea501
4ea501
%files static
4ea501
%{_libdir}/liblapack.a
4ea501
%{_libdir}/liblapack_pic.a
4ea501
%{_libdir}/liblapacke.a
4ea501
4ea501
%files -n blas -f blasmans
4ea501
%doc blasqr.ps LICENSE
4ea501
%dir %{_mandir}/man3/
4ea501
%{_libdir}/libblas.so.*
4ea501
4ea501
%files -n blas-devel
4ea501
%{_libdir}/libblas.so
4ea501
4ea501
%files -n blas-static
4ea501
%{_libdir}/libblas.a
4ea501
4ea501
%if 0%{?arch64}
4ea501
%files -n blas64
4ea501
%doc LICENSE
4ea501
%{_libdir}/libblas64.so.*
4ea501
4ea501
%files -n blas64-devel
4ea501
%{_libdir}/libblas64.so
4ea501
4ea501
%files -n blas64-static
4ea501
%{_libdir}/libblas64.a
4ea501
4ea501
%files -n lapack64
4ea501
%doc README LICENSE
4ea501
%{_libdir}/liblapack64.so.*
4ea501
4ea501
%files -n lapack64-devel
4ea501
%{_libdir}/liblapack64.so
4ea501
4ea501
%files -n lapack64-static
4ea501
%{_libdir}/liblapack64.a
4ea501
%{_libdir}/liblapack64_pic.a
4ea501
%endif
4ea501
4ea501
%changelog
4ea501
* Wed Oct 22 2014 Frantisek Kluknavsky <fkluknav@redhat.com> - 3.4.2-5
4ea501
- Use generic macro to detect 64 bit platforms (fix ppc64le/aarch64)
4ea501
- Resolves: rhbz#1152634
4ea501
4ea501
* Fri Jan 24 2014 Daniel Mach <dmach@redhat.com> - 3.4.2-4
4ea501
- Mass rebuild 2014-01-24
4ea501
4ea501
* Fri Dec 27 2013 Daniel Mach <dmach@redhat.com> - 3.4.2-3
4ea501
- Mass rebuild 2013-12-27
4ea501
4ea501
* Mon Mar 25 2013 Tom Callaway <spot@fedoraproject.org> - 3.4.2-2
4ea501
- clean out non-free example files from source tarball
4ea501
4ea501
* Thu Feb 21 2013 Tom Callaway <spot@fedoraproject.org> - 3.4.2-1
4ea501
- update to 3.4.2
4ea501
4ea501
* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.4.1-5
4ea501
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
4ea501
4ea501
* Mon Jan  7 2013 Tom Callaway <spot@fedoraproject.org> - 3.4.1-4
4ea501
- fix 64bit sonames
4ea501
4ea501
* Fri Jan  4 2013 Tom Callaway <spot@fedoraproject.org> - 3.4.1-3
4ea501
- enable 64bit INTEGER variant subpackages
4ea501
4ea501
* Wed Oct 24 2012 Tom Callaway <spot@fedoraproject.org> - 3.4.1-2
4ea501
- fix issue where lapacke was linking to testing functions (bz860332)
4ea501
4ea501
* Thu Sep 06 2012 Orion Poplawski <orion@cora.nwra.com> - 3.4.1-1
4ea501
- Update to 3.4.1
4ea501
- Rebase lapacke shared lib patch
4ea501
4ea501
* Thu Jul 19 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.4.0-3
4ea501
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
4ea501
4ea501
* Fri Jan 13 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.4.0-2
4ea501
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
4ea501
4ea501
* Mon Nov 28 2011 Tom Callaway <spot@fedoraproject.org> - 3.4.0-1
4ea501
- update to 3.4.0
4ea501
- build and include lapacke
4ea501
4ea501
* Thu Jun 02 2011 Tom Callaway <spot@fedoraproject.org> - 3.3.1-1
4ea501
- update to 3.3.1
4ea501
- create /usr/share/man/manl/ as 0755 and own it in lapack and blas (bz634369)
4ea501
- spec file cleanup
4ea501
4ea501
* Mon Feb 07 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.2.2-3
4ea501
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
4ea501
4ea501
* Sat Jul 17 2010 Dan Horák <dan[at]danny.cz> - 3.2.2-2
4ea501
- fix a typo in Makefile.lapack causing #615618
4ea501
4ea501
* Wed Jul  7 2010 Tom "spot" Callaway <tcallawa@redhat.com> - 3.2.2-1
4ea501
- update to 3.2.2
4ea501
- properly include license text
4ea501
- static subpackages depend on -devel (they're not useful without it)
4ea501
- clean up makefiles
4ea501
- pass on version into makefiles, rather than manually hacking on each update
4ea501
4ea501
* Wed Dec  9 2009 Tom "spot" Callaway <tcallawa@redhat.com> - 3.2.1-4
4ea501
- Move static libs to static subpackages (resolves bz 545143)
4ea501
4ea501
* Fri Sep  4 2009 Tom "spot" Callaway <tcallawa@redhat.com> - 3.2.1-3
4ea501
- use RPM_OPT_O_FLAGS (-O0) everywhere necessary, drop RPM_OPT_SIZE_FLAGS (-Os) (bz 520518)
4ea501
4ea501
* Thu Aug 20 2009 Tom "spot" Callaway <tcallawa@redhat.com> - 3.2.1-2
4ea501
- don't enable xblas yet
4ea501
4ea501
* Fri Aug 14 2009 Tom "spot" Callaway <tcallawa@redhat.com> - 3.2.1-1
4ea501
- update to 3.2.1, spec file cleanups
4ea501
4ea501
* Mon Aug 10 2009 Ville Skyttä <ville.skytta@iki.fi> - 3.1.1-7
4ea501
- Convert specfile to UTF-8.
4ea501
4ea501
* Fri Jul 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.1.1-6
4ea501
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
4ea501
4ea501
* Wed Feb 25 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.1.1-5
4ea501
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
4ea501
4ea501
* Tue Jul  8 2008 Tom "spot" Callaway <tcallawa@redhat.com> 3.1.1-4
4ea501
- fix missing dependencies (bz 442915)
4ea501
4ea501
* Tue Feb 19 2008 Fedora Release Engineering <rel-eng@fedoraproject.org> - 3.1.1-3
4ea501
- Autorebuild for GCC 4.3
4ea501
4ea501
* Thu Aug 23 2007 Tom "spot" Callaway <tcallawa@redhat.com> 3.1.1-2
4ea501
- fix license (BSD)
4ea501
- rebuild for BuildID
4ea501
4ea501
* Fri May 25 2007 Tom "spot" Callaway <tcallawa@redhat.com> 3.1.1-1
4ea501
- bump to 3.1.1
4ea501
4ea501
* Fri Jan  5 2007 Tom "spot" Callaway <tcallawa@redhat.com> 3.1.0-4
4ea501
- fix bugzillas 219740,219741
4ea501
4ea501
* Wed Dec 20 2006 Tom "spot" Callaway <tcallawa@redhat.com> 3.1.0-3
4ea501
- make clean everywhere
4ea501
4ea501
* Wed Dec 20 2006 Tom "spot" Callaway <tcallawa@redhat.com> 3.1.0-2
4ea501
- fix the Makefiles
4ea501
4ea501
* Tue Nov 14 2006 Tom "spot" Callaway <tcallawa@redhat.com> 3.1.0-1
4ea501
- bump to 3.1.0
4ea501
4ea501
* Thu Sep 14 2006 Tom "spot" Callaway <tcallawa@redhat.com> 3.0-38
4ea501
- bump for fc-6
4ea501
4ea501
* Tue Feb 28 2006 Tom "spot" Callaway <tcallawa@redhat.com> 3.0-37
4ea501
- bump for FC5
4ea501
4ea501
* Mon Dec 19 2005 Tom "spot" Callaway <tcallawa@redhat.com> 3.0-36
4ea501
- bump for gcc4.1
4ea501
4ea501
* Tue Nov 15 2005 Tom "spot" Callaway <tcallawa@redhat.com> 3.0-35
4ea501
- try not to patch files that do not exist
4ea501
4ea501
* Tue Nov 15 2005 Tom "spot" Callaway <tcallawa@redhat.com> 3.0-34
4ea501
- finish fixing bz 143340
4ea501
4ea501
* Thu Oct  6 2005 Tom "spot" Callaway <tcallawa@redhat.com> 3.0-33
4ea501
- fix bz 169558
4ea501
4ea501
* Wed Sep 28 2005 Tom "spot" Callaway <tcallawa@redhat.com> 3.0-32
4ea501
- move to latest upstream 3.0 tarballs
4ea501
- add 8 missing BLAS functions from upstream blas tarball (bz 143340)
4ea501
4ea501
* Thu Sep 22 2005 Tom "spot" Callaway <tcallawa@redhat.com> 3.0-31
4ea501
- actually install liblapack_pic.a
4ea501
4ea501
* Wed Sep 14 2005 Tom "spot" Callaway <tcallawa@redhat.com> 3.0-30
4ea501
- make -devel packages
4ea501
- make liblapack_pic.a package
4ea501
- use dist tag
4ea501
4ea501
* Thu Apr 14 2005 Tom "spot" Callaway <tcallawa@redhat.com> 3.0-29
4ea501
- package moves to Fedora Extras, gcc4
4ea501
4ea501
* Tue Dec 21 2004 Ivana Varekova <varekova@redhat.com>
4ea501
- fix bug #143420 problem with compiler optimalizations
4ea501
4ea501
* Tue Nov 30 2004 Ivana Varekova <varekova@redhat.com>
4ea501
- fix bug #138683 problem with compilation
4ea501
4ea501
* Thu Nov 11 2004 Ivana Varekova <varekova@redhat.com>
4ea501
- fix build problem bug #138447
4ea501
4ea501
* Tue Jun 15 2004 Elliot Lee <sopwith@redhat.com>
4ea501
- rebuilt
4ea501
4ea501
* Tue Mar 02 2004 Elliot Lee <sopwith@redhat.com>
4ea501
- rebuilt
4ea501
4ea501
* Fri Feb 13 2004 Elliot Lee <sopwith@redhat.com>
4ea501
- rebuilt
4ea501
4ea501
* Wed Dec 31 2003 Jeff Johnson <jbj@jbj.org> 3.0-23
4ea501
- link -lg2c explicitly into liblapack and libblas (#109079).
4ea501
4ea501
* Wed Aug 20 2003 Jeremy Katz <katzj@redhat.com> 3.0-22
4ea501
- nuke -man subpackages (#97506)
4ea501
4ea501
* Wed Jun 04 2003 Elliot Lee <sopwith@redhat.com>
4ea501
- rebuilt
4ea501
4ea501
* Wed Jan 22 2003 Tim Powers <timp@redhat.com>
4ea501
- rebuilt
4ea501
4ea501
* Sun Nov 10 2002 Jeff Johnson <jbj@redhat.com> 3.0-19
4ea501
- rebuild with x86_64.
4ea501
4ea501
* Thu Jul 18 2002 Trond Eivind Glomsrod <teg@redhat.com> 3.0-18
4ea501
- Remove an empty man page (#63569)
4ea501
4ea501
* Fri Jun 21 2002 Tim Powers <timp@redhat.com>
4ea501
- automated rebuild
4ea501
4ea501
* Thu May 23 2002 Tim Powers <timp@redhat.com>
4ea501
- automated rebuild
4ea501
4ea501
* Wed May  1 2002 Trond Eivind Glomsrod <teg@redhat.com> 3.0-15
4ea501
- Rebuild
4ea501
4ea501
* Thu Feb 21 2002 Trond Eivind Glomsrod <teg@redhat.com> 3.0-14
4ea501
- Rebuild
4ea501
4ea501
* Wed Jan 09 2002 Tim Powers <timp@redhat.com>
4ea501
- automated rebuild
4ea501
4ea501
* Mon Aug 13 2001 Trond Eivind Glomsrod <teg@redhat.com> 3.0-12
4ea501
- The man-pages for xerbla and lsame were in blas-man and lapack-man (#51605)
4ea501
4ea501
* Fri Jun  8 2001 Trond Eivind Glomsrod <teg@redhat.com>
4ea501
- Reenable optimization for IA64
4ea501
4ea501
* Fri May 25 2001 Trond Eivind Glomsrod <teg@redhat.com>
4ea501
- Add all patches from the LAPACK site as of 2001-05-25
4ea501
- Use this workaround for IA64 instead
4ea501
- Remove SPARC workaround
4ea501
- Don't exclude IA64
4ea501
4ea501
* Thu Dec 07 2000 Trond Eivind Glomsrod <teg@redhat.com>
4ea501
- rebuild for main distribution
4ea501
4ea501
* Mon Nov 20 2000 Trond Eivind Glomsrod <teg@redhat.com>
4ea501
- add the LAPACK Quick Reference Guide to the docs
4ea501
- add the BLAS Quick Reference Guide to the docs
4ea501
4ea501
* Tue Aug 01 2000 Trond Eivind Glomsrod <teg@redhat.com>
4ea501
- fix lack of ldconfig in postuninstall script
4ea501
4ea501
* Mon Jul 24 2000 Prospector <prospector@redhat.com>
4ea501
- rebuilt
4ea501
4ea501
* Mon Jul 10 2000 Trond Eivind Glomsrod <teg@redhat.com>
4ea501
- updated with the latest updates (new tarfile..) from netlib 
4ea501
4ea501
* Thu Jun 15 2000 Trond Eivind Glomsrod <teg@redhat.com>
4ea501
- use %%{_mandir}
4ea501
- added some flags to work around SPARC compiler bug
4ea501
4ea501
* Wed Jan 19 2000 Tim Powers <timp@redhat.com>
4ea501
- bzipped sources to conserve space
4ea501
4ea501
* Tue Jan  4 2000 Jeff Johnson <jbj@redhat.com>
4ea501
- build for PowerTools 6.2.
4ea501
4ea501
* Sat Dec 25 1999 Joachim Frieben <jfrieben@hotmail.com>
4ea501
- updated to version v3.0 + update as of Tue Nov 30 1999
4ea501
4ea501
* Sat Oct 23 1999 Joachim Frieben <jfrieben@hotmail.com>
4ea501
- updated Red Hat makefiles to v3.0
4ea501
4ea501
* Mon Aug 2 1999 Tim Powers <timp@redhat.com>
4ea501
- updated to v3.0
4ea501
- built for 6.1
4ea501
4ea501
* Mon Apr 12 1999 Michael Maher <mike@redhat.com>
4ea501
- built package for 6.0
4ea501
4ea501
* Sat Oct 24 1998 Jeff Johnson <jbj@redhat.com>
4ea501
- new description/summary text.
4ea501
4ea501
* Fri Jul 17 1998 Jeff Johnson <jbj@redhat.com>
4ea501
- repackage for powertools.
4ea501
4ea501
* Sun Feb 15 1998 Trond Eivind Glomsrod <teg@pvv.ntnu.no>
4ea501
 [lapack-2.0-9]
4ea501
 - No code updates, just built with a customized rpm -
4ea501
   this should make dependencies right.
4ea501
4ea501
* Sat Feb 07 1998 Trond Eivind Glomsrod <teg@pvv.ntnu.no>
4ea501
 [lapack-2.0-8]
4ea501
 - Total rewrite of the spec file
4ea501
 - Added my own makefiles - libs should build better,
4ea501
   static libs should work (and be faster than they
4ea501
	would be if they had worked earlier ;)
4ea501
 - No patch necessary anymore.
4ea501
 - Renamed lapack-blas and lapack-blas-man to
4ea501
   blas and blas-man. "Obsoletes:" tag added.
4ea501
   (oh - and as always: Dedicated to the girl I
4ea501
   love, Eline Skirnisdottir)
4ea501
4ea501
* Sat Dec 06 1997 Trond Eivind Glomsrod <teg@pvv.ntnu.no>
4ea501
 [lapack-2.0-7]
4ea501
  - added a dependency to glibc, so people don't try with libc5
4ea501
4ea501
* Thu Nov 20 1997 Trond Eivind Glomsrod <teg@pvv.ntnu.no>
4ea501
  [lapack-2.0-6]
4ea501
  - removed etime.c
4ea501
  - compiled with egcs, and for glibc 2.0
4ea501
4ea501
* Sun Oct 12 1997 Trond Eivind Glomsrod <teg@pvv.ntnu.no>
4ea501
  [lapack-2.0-5]
4ea501
  - added a changelog
4ea501
  - cleaned up building of shared libs
4ea501
  - now uses a BuildRoot
4ea501
  - cleaned up the specfile