Blob Blame History Raw
Summary: Basic Linear Algebra Communication Subprograms
Name: blacs
Version: 1.1
Release: 9%{?dist}
License: Freely distributable
Group: Development/Libraries
URL: http://www.netlib.org/blacs
Source0: http://www.netlib.org/blacs/mpiblacs.tgz
Source1: http://www.netlib.org/blacs/blacstester.tgz
Source2: Bmake.inc
Source3: http://www.netlib.org/blacs/mpi_prop.ps
Source4: http://www.netlib.org/blacs/blacs_install.ps
Source5: http://www.netlib.org/blacs/mpiblacs_issues.ps
Source6: http://www.netlib.org/blacs/f77blacsqref.ps
Source7: http://www.netlib.org/blacs/cblacsqref.ps
Source8: http://www.netlib.org/blacs/lawn94.ps
Source9: Bmake.inc.64bit
BuildRequires: gcc-g77
BuildRequires: lapack, blas, lam
Requires: lapack, blas, lam
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)

%description
The BLACS (Basic Linear Algebra Communication Subprograms) project is 
an ongoing investigation whose purpose is to create a linear algebra 
oriented message passing interface that may be implemented efficiently 
and uniformly across a large range of distributed memory platforms.

The length of time required to implement efficient distributed memory 
algorithms makes it impractical to rewrite programs for every new 
parallel machine. The BLACS exist in order to make linear algebra 
applications both easier to program and more portable. 

%prep
%setup -q -c -n %{name}
%setup -q -D -T -a 1 -n %{name}
cd BLACS/
%ifarch ppc64 sparc64 x86_64
cp -f %{SOURCE9} ./Bmake.inc
%else
cp -f %{SOURCE2} .
%endif

%build
cd BLACS/
make mpi
cd TESTING/
make
cd ..
cd ..

cp %{SOURCE3} mpi_prop.ps
cp %{SOURCE4} blacs_install.ps
cp %{SOURCE5} mpiblacs_issues.ps
cp %{SOURCE6} f77blacsqref.ps
cp %{SOURCE7} cblacsqref.ps
cp %{SOURCE8} lawn94.ps

%install
rm -fr ${RPM_BUILD_ROOT}
mkdir -p ${RPM_BUILD_ROOT}%{_libdir}
mkdir -p ${RPM_BUILD_ROOT}%{_bindir}

cd BLACS/LIB
for f in *.a; do
  cp -f $f ${RPM_BUILD_ROOT}%{_libdir}/$f
done
cd ../TESTING/EXE
cp -f x*test_MPI-LINUX-0 ${RPM_BUILD_ROOT}%{_bindir}

cd ${RPM_BUILD_ROOT}%{_libdir}

%post -p /sbin/ldconfig

%postun -p /sbin/ldconfig

%clean
rm -fr ${RPM_BUILD_ROOT}

%files
%defattr(-,root,root)
%doc mpi_prop.ps blacs_install.ps mpiblacs_issues.ps f77blacsqref.ps cblacsqref.ps lawn94.ps
%{_bindir}/x*test_MPI-LINUX-0
%{_libdir}/libmpiblacs*

%changelog
* Tue May 10 2005 Tom "spot" Callaway <tcallawa@redhat.com> 1.1-8
- g77 needs some special compile flags, edited Bmake.inc*

* Mon May  9 2005 Tom "spot" Callaway <tcallawa@redhat.com> 1.1-7
- remove hardcoded dist tags

* Thu May  5 2005 Tom "spot" Callaway <tcallawa@redhat.com> 1.1-6
- fix 64bit issues

* Sun Apr 24 2005 Tom "spot" Callaway <tcallawa@redhat.com> 1.1-5
- use dist tag
- fix fc3 package sources and dependencies

* Tue Apr 19 2005 Tom "spot" Callaway <tcallawa@redhat.com> 1.1-4
- fix buildroot
- add gcc-gfortran as a BuildRequires (gcc-g77)

* Mon Apr 18 2005 Tom "spot" Callaway <tcallawa@redhat.com> 1.1-3
- backout shared patch

* Mon Apr 18 2005 Tom "spot" Callaway <tcallawa@redhat.com> 1.1-2
- rename libs to what scalapack thinks they should be called

* Mon Apr 18 2005 Tom "spot" Callaway <tcallawa@redhat.com> 1.1-1
- initial package creation