|
|
|
%bcond_without gfortran
|
|
|
|
|
|
|
|
Summary: Fortran77 subroutines for solving large scale eigenvalue problems
|
|
|
|
Name: arpack
|
|
|
|
Version: 2.1
|
|
|
|
Release: 12%{?dist}
|
|
|
|
License: BSD
|
|
|
|
Group: Development/Libraries
|
|
|
|
URL: http://www.caam.rice.edu/software/ARPACK/
|
|
|
|
Source0: http://www.caam.rice.edu/software/ARPACK/SRC/arpack96.tar.gz
|
|
|
|
Source1: http://www.caam.rice.edu/software/ARPACK/SRC/patch.tar.gz
|
|
|
|
Source2: http://www.caam.rice.edu/software/ARPACK/RiceBSD.txt
|
|
|
|
Patch0: arpack-2.1-redhat.patch
|
|
|
|
# see http://www.ann.jussieu.fr/pipermail/freefempp/2006/000213.html
|
|
|
|
Patch1: arpack-second-bug.patch
|
|
|
|
Patch2: arpack-etime.patch
|
|
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-buildroot
|
|
|
|
BuildRequires: %{?with_gfortran:gcc-gfortran}%{!?with_gfortran:/usr/bin/f77}
|
|
|
|
# The correct dependency would be the following, but it doesn't exist on RHEL4/3
|
|
|
|
#BuildRequires: lapack-devel
|
|
|
|
BuildRequires: %{_libdir}/liblapack.so
|
|
|
|
|
|
|
|
%description
|
|
|
|
ARPACK is a collection of Fortran77 subroutines designed to solve large
|
|
|
|
scale eigenvalue problems.
|
|
|
|
|
|
|
|
The package is designed to compute a few eigenvalues and corresponding
|
|
|
|
eigenvectors of a general n by n matrix A. It is most appropriate for
|
|
|
|
large sparse or structured matrices A where structured means that a
|
|
|
|
matrix-vector product w <- Av requires order n rather than the usual
|
|
|
|
order n**2 floating point operations. This software is based upon an
|
|
|
|
algorithmic variant of the Arnoldi process called the Implicitly
|
|
|
|
Restarted Arnoldi Method (IRAM).
|
|
|
|
|
|
|
|
%package devel
|
|
|
|
Summary: Files needed for developing arpack based applications
|
|
|
|
Group: Development/Libraries
|
|
|
|
Requires: arpack = %{version}-%{release}
|
|
|
|
|
|
|
|
%description devel
|
|
|
|
ARPACK is a collection of Fortran77 subroutines designed to solve
|
|
|
|
large scale eigenvalue problems. This package contains the so
|
|
|
|
library links used for building arpack based applications.
|
|
|
|
|
|
|
|
%package static
|
|
|
|
Summary: Static library for developing arpack based applications
|
|
|
|
Group: Development/Libraries
|
|
|
|
Requires: arpack-devel = %{version}-%{release}
|
|
|
|
|
|
|
|
%description static
|
|
|
|
ARPACK is a collection of Fortran77 subroutines designed to solve
|
|
|
|
large scale eigenvalue problems. This package contains the static
|
|
|
|
library and so links used for building arpack based applications.
|
|
|
|
|
|
|
|
%prep
|
|
|
|
%setup -q -b 1 -n ARPACK
|
|
|
|
%patch0 -p1 -b .rh
|
|
|
|
%patch1 -p1 -b .sb
|
|
|
|
%patch2 -p1 -b .etime
|
|
|
|
mkdir static shared
|
|
|
|
|
|
|
|
%build
|
|
|
|
cd shared
|
|
|
|
for dir in ../SRC ../UTIL; do
|
|
|
|
make -f $dir/Makefile VPATH=$dir srcdir=$dir \
|
|
|
|
%{?with_gfortran:FC=gfortran} FFLAGS="%{optflags} -fPIC" \
|
|
|
|
single double complex complex16
|
|
|
|
done
|
|
|
|
gcc -shared -llapack -Wl,-soname,libarpack.so.2 -o libarpack.so.2.1 *.o
|
|
|
|
cd ..
|
|
|
|
cd static
|
|
|
|
for dir in ../SRC ../UTIL; do
|
|
|
|
make -f $dir/Makefile VPATH=$dir srcdir=$dir \
|
|
|
|
%{?with_gfortran:FC=gfortran} FFLAGS="%{optflags}" LDFLAGS="-s" \
|
|
|
|
all
|
|
|
|
done
|
|
|
|
ar rv libarpack.a *.o
|
|
|
|
ranlib libarpack.a
|
|
|
|
cd ..
|
|
|
|
|
|
|
|
%install
|
|
|
|
rm -rf %{buildroot}
|
|
|
|
mkdir -p %{buildroot}%{_libdir}
|
|
|
|
install -p -m644 static/libarpack.a %{buildroot}%{_libdir}
|
|
|
|
install -p -m755 shared/libarpack.so.2.1 %{buildroot}%{_libdir}
|
|
|
|
ln -s libarpack.so.2.1 %{buildroot}%{_libdir}/libarpack.so.2
|
|
|
|
ln -s libarpack.so.2 %{buildroot}%{_libdir}/libarpack.so
|
|
|
|
cp -p %{SOURCE2} .
|
|
|
|
|
|
|
|
%clean
|
|
|
|
rm -rf %{buildroot}
|
|
|
|
|
|
|
|
%post -p /sbin/ldconfig
|
|
|
|
|
|
|
|
%postun -p /sbin/ldconfig
|
|
|
|
|
|
|
|
%files
|
|
|
|
%defattr(-,root,root,-)
|
|
|
|
%doc RiceBSD.txt
|
|
|
|
%{_libdir}/libarpack.so.*
|
|
|
|
|
|
|
|
%files devel
|
|
|
|
%defattr(-,root,root,-)
|
|
|
|
%doc DOCUMENTS EXAMPLES
|
|
|
|
%{_libdir}/libarpack.so
|
|
|
|
|
|
|
|
%files static
|
|
|
|
%{_libdir}/libarpack.a
|
|
|
|
|
|
|
|
%changelog
|
|
|
|
* Wed Jul 7 2010 Jussi Lehtola <jussilehtola@fedoraproject.org> - 2.1-12
|
|
|
|
- Bump spec to fix update path.
|
|
|
|
|
|
|
|
* Wed Apr 7 2010 Axel Thimm <Axel.Thimm@ATrpms.net> - 2.1-11
|
|
|
|
- Change license to BSD (see RH bugs #234191 and #578873).
|
|
|
|
|
|
|
|
* Wed Sep 24 2008 Dominik 'Rathann' Mierzejewski <rpm@greysector.net> 2.1-10
|
|
|
|
- fix libarpack.so: undefined reference to `etime_' with recent gfortran
|
|
|
|
|
|
|
|
* Mon Aug 25 2008 Axel Thimm <Axel.Thimm@ATrpms.net> - 2.1-9
|
|
|
|
- Patch0 and %%patch make recent rpm silenty fail.
|
|
|
|
|
|
|
|
* Wed May 21 2008 Tom "spot" Callaway <tcallawa@redhat.com> 2.1-8
|
|
|
|
- fix license tag
|
|
|
|
|
|
|
|
* Wed Oct 24 2007 Dominik 'Rathann' Mierzejewski <rpm@greysector.net> 2.1-7
|
|
|
|
- apply Frederic Hecht's patch for eigenvalue bug
|
|
|
|
- move static libs to separate package
|
|
|
|
|
|
|
|
* Mon Mar 26 2007 Axel Thimm <Axel.Thimm@ATrpms.net> - 2.1-6
|
|
|
|
- Add license and clarification note
|
|
|
|
- Add lapack support
|
|
|
|
|
|
|
|
* Thu Nov 9 2006 Axel Thimm <Axel.Thimm@ATrpms.net> - 2.1-4
|
|
|
|
- Freshen up for submitting to fedora extras.
|
|
|
|
- Fix permissions of so file.
|
|
|
|
- Add forgotten ldconfig
|
|
|
|
- Remove dot from summaries.
|
|
|
|
|
|
|
|
* Wed Jul 16 2003 Axel Thimm <Axel.Thimm@ATrpms.net>
|
|
|
|
- Initial build.
|