rpms/scalapack/devel scalapack.spec,1.26,1.27
Tom Callaway
spot at fedoraproject.org
Wed Dec 9 19:50:50 UTC 2009
Author: spot
Update of /cvs/pkgs/rpms/scalapack/devel
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv30315/devel
Modified Files:
scalapack.spec
Log Message:
fix ftbfs, static libs, remove lam
Index: scalapack.spec
===================================================================
RCS file: /cvs/pkgs/rpms/scalapack/devel/scalapack.spec,v
retrieving revision 1.26
retrieving revision 1.27
diff -u -p -r1.26 -r1.27
--- scalapack.spec 7 Aug 2009 02:42:10 -0000 1.26
+++ scalapack.spec 9 Dec 2009 19:50:49 -0000 1.27
@@ -1,28 +1,3 @@
-# These macros will go away soon. Hopefully.
-%global _openmpi_load \
- . /etc/profile.d/modules.sh; \
- module load openmpi-%{_arch}; \
- export CFLAGS="$CFLAGS %{optflags}";
-%global _openmpi_unload \
- . /etc/profile.d/modules.sh; \
- module unload openmpi-%{_arch};
-
-%global _lam_load \
- . /etc/profile.d/modules.sh; \
- module load lam-%{_arch}; \
- export CFLAGS="$CFLAGS %{optflags}";
-%global _lam_unload \
- . /etc/profile.d/modules.sh; \
- module unload lam-%{_arch};
-
-%global _mpich2_load \
- . /etc/profile.d/modules.sh; \
- module load mpich2-%{__isa_bits}; \
- export CFLAGS="$CFLAGS %{optflags}";
-%global _mpich2_unload \
- . /etc/profile.d/modules.sh; \
- module unload mpich2-%{__isa_bits};
-
# The blacs packages should probably provide these.
%global _blacs_openmpi_load \
. /etc/profile.d/modules.sh; \
@@ -32,14 +7,6 @@
. /etc/profile.d/modules.sh; \
module unload blacs-openmpi-%{_arch};
-%global _blacs_lam_load \
- . /etc/profile.d/modules.sh; \
- module load blacs-lam-%{_arch}; \
- export CFLAGS="$CFLAGS %{optflags}";
-%global _blacs_lam_unload \
- . /etc/profile.d/modules.sh; \
- module unload blacs-lam-%{_arch};
-
%global _blacs_mpich2_load \
. /etc/profile.d/modules.sh; \
module load blacs-mpich2-%{_arch}; \
@@ -51,7 +18,7 @@
Summary: A subset of LAPACK routines redesigned for heterogenous computing
Name: scalapack
Version: 1.7.5
-Release: 7%{?dist}
+Release: 8%{?dist}
# This is freely distributable without any restrictions.
License: Public Domain
Group: Development/Libraries
@@ -120,56 +87,15 @@ routines resemble their LAPACK equivalen
This package contains common files which are not specific to any MPI implementation.
-%package lam
-Summary: ScaLAPACK libraries compiled against lam
-Group: Development/Libraries
-BuildRequires: blacs-lam-devel, lam-devel
-Requires: %{name}-common = %{version}-%{release}
-Requires: environment-modules
-
-%description lam
-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.
-
-ScaLAPACK is designed for heterogeneous computing and is
-portable on any computer that supports MPI or PVM.
-
-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.
-
-This package contains ScaLAPACK libraries compiled with lam.
-
-%package lam-devel
-Summary: Development libraries for ScaLAPACK (lam)
-Group: Development/Libraries
-Requires: %{name}-lam = %{version}-%{release}
-Provides: %{name}-lam-static = %{version}-%{release}
-
-%description lam-devel
-This package contains development libraries for ScaLAPACK, compiled against lam.
-
%package mpich2
Summary: ScaLAPACK libraries compiled against mpich2
Group: Development/Libraries
BuildRequires: blacs-mpich2-devel, mpich2-devel
Requires: %{name}-common = %{version}-%{release}
Requires: environment-modules
+# This is a lie, but something needs to obsolete it.
+Provides: %{name}-lam = %{version}-%{release}
+Obsoletes: %{name}-lam <= 1.7.5-7
%description mpich2
The ScaLAPACK (or Scalable LAPACK) library includes a subset
@@ -203,11 +129,21 @@ This package contains ScaLAPACK librarie
Summary: Development libraries for ScaLAPACK (mpich2)
Group: Development/Libraries
Requires: %{name}-mpich2 = %{version}-%{release}
-Provides: %{name}-mpich2-static = %{version}-%{release}
+Provides: %{name}-lam-devel = %{version}-%{release}
+Obsoletes: %{name}-lam-devel <= 1.7.5-7
%description mpich2-devel
This package contains development libraries for ScaLAPACK, compiled against mpich2.
+%package mpich2-static
+Summary: Static libraries for ScaLAPACK (mpich2)
+Group: Development/Libraries
+Provides: %{name}-lam-static = %{version}-%{release}
+Obsoletes: %{name}-lam-static <= 1.7.5-7
+
+%description mpich2-static
+This package contains static libraries for ScaLAPACK, compiled against mpich2.
+
%package openmpi
Summary: ScaLAPACK libraries compiled against openmpi
Group: Development/Libraries
@@ -247,11 +183,17 @@ This package contains ScaLAPACK librarie
Summary: Development libraries for ScaLAPACK (openmpi)
Group: Development/Libraries
Requires: %{name}-openmpi = %{version}-%{release}
-Provides: %{name}-openmpi-static = %{version}-%{release}
%description openmpi-devel
This package contains development libraries for ScaLAPACK, compiled against openmpi.
+%package openmpi-static
+Summary: Static libraries for ScaLAPACK (openmpi)
+Group: Development/Libraries
+
+%description openmpi-static
+This package contains static libraries for ScaLAPACK, compiled against openmpi.
+
%prep
%setup -q -c -n %{name}-%{version}
%patch0 -p1
@@ -265,21 +207,12 @@ done
%build
%define dobuild() \
-cd %{name}-%{version}-$MPI_COMPILER ; \
+cd %{name}-%{version}-$MPI_COMPILER_NAME ; \
make lib ; \
cd ..
-# Build LAM version
-export MPI_COMPILER=lam
-%{_lam_load}
-%{_blacs_lam_load}
-RPM_OPT_FLAGS=`echo $CFLAGS`
-%dobuild
-%{_blacs_lam_unload}
-%{_lam_unload}
-
# Build mpich2 version
-export MPI_COMPILER=mpich2
+export MPI_COMPILER_NAME=mpich2
%{_mpich2_load}
%{_blacs_mpich2_load}
RPM_OPT_FLAGS=`echo $CFLAGS`
@@ -288,7 +221,7 @@ RPM_OPT_FLAGS=`echo $CFLAGS`
%{_mpich2_unload}
# Build OpenMPI version
-export MPI_COMPILER=openmpi
+export MPI_COMPILER_NAME=openmpi
%{_openmpi_load}
%{_blacs_openmpi_load}
RPM_OPT_FLAGS=`echo $CFLAGS`
@@ -301,7 +234,7 @@ rm -fr ${RPM_BUILD_ROOT}
mkdir -p ${RPM_BUILD_ROOT}%{_libdir}
mkdir -p ${RPM_BUILD_ROOT}%{_bindir}
-for i in lam mpich2 openmpi; do
+for i in mpich2 openmpi; do
mkdir -p %{buildroot}%{_libdir}/scalapack-$i/
pushd %{name}-%{version}-$i
for f in *.a *.so*; do
@@ -339,17 +272,6 @@ rm -fr ${RPM_BUILD_ROOT}
%doc scalapack_install.ps README
# %{_bindir}/x*
-%files lam
-%defattr(-,root,root,-)
-%dir %{_libdir}/scalapack-lam/
-%{_datadir}/Modules/modulefiles/scalapack-lam-%{_arch}
-%{_libdir}/scalapack-lam/libscalapack.so.*
-
-%files lam-devel
-%defattr(-,root,root,-)
-%{_libdir}/scalapack-lam/libscalapack.a
-%{_libdir}/scalapack-lam/libscalapack.so
-
%files mpich2
%defattr(-,root,root,-)
%dir %{_libdir}/scalapack-mpich2/
@@ -358,9 +280,12 @@ rm -fr ${RPM_BUILD_ROOT}
%files mpich2-devel
%defattr(-,root,root,-)
-%{_libdir}/scalapack-mpich2/libscalapack.a
%{_libdir}/scalapack-mpich2/libscalapack.so
+%files mpich2-static
+%defattr(-,root,root,-)
+%{_libdir}/scalapack-mpich2/libscalapack.a
+
%files openmpi
%defattr(-,root,root,-)
%dir %{_libdir}/scalapack-openmpi/
@@ -369,10 +294,17 @@ rm -fr ${RPM_BUILD_ROOT}
%files openmpi-devel
%defattr(-,root,root,-)
-%{_libdir}/scalapack-openmpi/libscalapack.a
%{_libdir}/scalapack-openmpi/libscalapack.so
+%files openmpi-static
+%defattr(-,root,root,-)
+%{_libdir}/scalapack-openmpi/libscalapack.a
+
%changelog
+* Wed Dec 9 2009 Tom "spot" Callaway <tcallawa at redhat.com> - 1.7.5-8
+- drop lam support (Provides/Obsoletes by mpich2, which is a hack, but something's gotta do it)
+- move static libs to static subpackages (resolves bz 545150)
+
* Thu Aug 6 2009 Tom "spot" Callaway <tcallawa at redhat.com> - 1.7.5-7
- rework package to handle all supported MPI environments in Fedora
More information about the scm-commits
mailing list