%define _approot /opt/scalapack %define _pkgname scalapack %define _modroot /usr/share/Modules/modulefiles/scalapack Name: scalapack-openmpi-gnu Version: 1.8.0 Release: 7 Summary: The ScaLAPACK (or Scalable LAPACK) library includes a subset of LAPACK routines redesigned for distributed memory MIMD parallel computers. Group: Development/Libraries # This is freely distributable without any restrictions. License: Public Domain URL: http://www.netlib.org/scalapack/ #Source: %{name}-%{version}.2.tar.gz BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) Requires: openmpi coreutils glibc BuildRequires: openmpi-devel openmpi-libs atlas-devel coreutils blacs-openmpi-gnu >= 20000224-7 gcc-gfortran ExclusiveArch: x86_64 Source0: scalapack-1.8.0.tgz Source1: SLmake-openmpi-gnu.inc.64 Source3: scalapack-openmpi-gnu-module %description The ScaLAPACK (or Scalable LAPACK) library includes a subset of LAPACK routines redesigned for distributed memory MIMD parallel computers. It is currently written in a Single-Program-Multiple-Data style using explicit message passing for interprocessor communication. It assumes matrices are laid out in a two-dimensional block cyclic decomposition. Like LAPACK, the ScaLAPACK routines are based on block-partitioned algorithms in order to minimize the frequency of data movement between different levels of the memory hierarchy. (For such machines, the memory hierarchy includes the off-processor memory of other processors, in addition to the hierarchy of registers, cache, and local memory on each processor.) The fundamental building blocks of the ScaLAPACK library are distributed memory versions (PBLAS) of the Level 1, 2 and 3 BLAS, and a set of Basic Linear Algebra Communication Subprograms (BLACS) for communication tasks that arise frequently in parallel linear algebra computations. In the ScaLAPACK routines, all interprocessor communication occurs within the PBLAS and the BLACS. One of the design goals of ScaLAPACK was to have the ScaLAPACK routines resemble their LAPACK equivalents as much as possible. %prep %setup -q -c -n %{name} #%setup -q -n %{name} %build #tar xzf %{_pkgname}-%{version}.tgz cd scalapack-1.8.0 cp %{SOURCE1} ./SLmake.inc make lib make exe cd .. cp %{SOURCE3} ./scalapack-openmpi-gnu-module %install rm -rf %{buildroot} mkdir -p %{buildroot}%{_approot}/openmpi/gnu/lib mkdir -p %{buildroot}%{_approot}/openmpi/gnu/bin mkdir -p %{buildroot}%{_approot}/openmpi/gnu/data install -D -m 0644 %{name}-module %{buildroot}%{_modroot}/%{name} cd %{_pkgname}-%{version} cp -f libscalapack.* %{buildroot}%{_approot}/openmpi/gnu/lib cp -f TESTING/x* %{buildroot}%{_approot}/openmpi/gnu/bin cp -f TESTING/*.dat %{buildroot}%{_approot}/openmpi/gnu/bin chmod a+r %{buildroot}%{_approot}/openmpi/gnu/bin/*.dat %clean rm -rf %{buildroot} %post %pre %files %defattr(-,root,root,-) %{_approot} %{_modroot}/%{name} %changelog * Tue Dec 30 2008 Mehdi Bozzo-Rey 1.8.0-7 - update for RH HPCS 5.3 (buildreq) * Thu Sep 9 2008 Mehdi Bozzo-Rey 1.8.0-6 - update buildreq (blacs-openmpi version) * Wed Sep 3 2008 Mehdi Bozzo-Rey 1.8.0-5 - backported solution from platform_hpc kit * Wed Jul 16 2008 Mike Frisch 1.8.0-4 - Modified compiler flags to fix problem with failed tests (#112110) * Mon Jun 2 2008 Mike Frisch 1.8.0-3 - Add missing copyright * Thu May 15 2008 Mike Frisch 1.8.0-2 - Modified to support Fortran 90 compiler * Wed Oct 3 2007 Najib Ninaba - Initial packaging