rpms/blacs/F-11 Bmake.inc,1.9,1.10 blacs.spec,1.31,1.32
Tom Callaway
spot at fedoraproject.org
Wed Jan 13 15:43:46 UTC 2010
- Previous message: rpms/libguestfs/F-12 libguestfs-1.0.79-no-fuse-test.patch, NONE, 1.1 libguestfs-find-requires.sh, NONE, 1.1 .cvsignore, 1.54, 1.55 libguestfs.spec, 1.107, 1.108 sources, 1.54, 1.55
- Next message: rpms/blacs/F-12 blacs.spec,1.37,1.38
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
Author: spot
Update of /cvs/pkgs/rpms/blacs/F-11
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv23460/F-11
Modified Files:
Bmake.inc blacs.spec
Log Message:
sync, rebuild
Index: Bmake.inc
===================================================================
RCS file: /cvs/pkgs/rpms/blacs/F-11/Bmake.inc,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -p -r1.9 -r1.10
--- Bmake.inc 23 Sep 2008 16:03:50 -0000 1.9
+++ Bmake.inc 13 Jan 2010 15:43:45 -0000 1.10
@@ -13,7 +13,7 @@
# -----------------------------
# The top level BLACS directory
# -----------------------------
- BTOPdir = $(RPM_BUILD_DIR)/blacs/BLACS
+ BTOPdir = $(RPM_BUILD_DIR)/blacs/BLACS-FOO
# ---------------------------------------------------------------------------
# The communication library your BLACS have been written for.
Index: blacs.spec
===================================================================
RCS file: /cvs/pkgs/rpms/blacs/F-11/blacs.spec,v
retrieving revision 1.31
retrieving revision 1.32
diff -u -p -r1.31 -r1.32
--- blacs.spec 24 Feb 2009 04:57:04 -0000 1.31
+++ blacs.spec 13 Jan 2010 15:43:45 -0000 1.32
@@ -1,7 +1,7 @@
Summary: Basic Linear Algebra Communication Subprograms
Name: blacs
Version: 1.1
-Release: 31%{?dist}
+Release: 35%{?dist}
License: Public Domain
Group: Development/Libraries
URL: http://www.netlib.org/blacs
@@ -14,8 +14,7 @@ Source5: http://www.netlib.org/blacs/f77
Source6: http://www.netlib.org/blacs/cblacsqref.ps
Source7: http://www.netlib.org/blacs/lawn94.ps
BuildRequires: gcc-gfortran
-BuildRequires: lapack, blas, openmpi-devel
-Requires: lapack, blas
+BuildRequires: lapack, blas
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
Patch0: blacs-fedora.patch
@@ -30,30 +29,111 @@ algorithms makes it impractical to rewri
parallel machine. The BLACS exist in order to make linear algebra
applications both easier to program and more portable.
-%package devel
-Summary: Development libraries for blacs
+%package common
+Summary: Common files for blacs
+Group: Development/Libraries
+Requires: lapack, blas
+
+%description common
+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.
+
+This file contains common files which are not specific to any MPI implementation.
+
+%package mpich2
+Summary: BLACS libraries compiled against mpich2
+Group: Development/Libraries
+BuildRequires: mpich2-devel-static
+Requires: %{name}-common = %{version}-%{release}
+Requires: environment-modules
+# This is a dirty lie, but something needs to reap these dead subpackages.
+Provides: blacs-lam = %{version}-%{release}
+Obsoletes: blacs-lam < 1.1-34
+
+%description mpich2
+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.
+
+This package contains BLACS libraries compiled with mpich2.
+
+%package mpich2-devel
+Summary: Development libraries for blacs (mpich2)
+Group: Development/Libraries
+Requires: %{name}-mpich2 = %{version}-%{release}
+Provides: blacs-lam-devel = %{version}-%{release}
+Obsoletes: blacs-lam-devel < 1.1-34
+
+%description mpich2-devel
+This package contains development libraries for blacs, compiled against mpich2.
+
+%package mpich2-static
+Summary: Static libraries for blacs (mpich2)
+Group: Development/Libraries
+Provides: blacs-lam-static = %{version}-%{release}
+Obsoletes: blacs-lam-static < 1.1-34
+
+%description mpich2-static
+This package contains static libraries for blacs, compiled against mpich2.
+
+%package openmpi
+Summary: BLACS libraries compiled against openmpi
Group: Development/Libraries
-Requires: %{name} = %{version}-%{release}
+Requires: %{name}-common = %{version}-%{release}
+Requires: environment-modules
-%description devel
-This package contains development libraries for blacs.
+%description openmpi
+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.
+
+This package contains BLACS libraries compiled with openmpi.
+
+%package openmpi-devel
+Summary: Development libraries for blacs (openmpi)
+Group: Development/Libraries
+BuildRequires: openmpi-devel
+Requires: %{name}-openmpi = %{version}-%{release}
+
+%description openmpi-devel
+This package contains development libraries for blacs, compiled against openmpi.
+
+%package openmpi-static
+Summary: Static libraries for blacs (openmpi)
+Group: Development/Libraries
+
+%description openmpi-static
+This package contains static libraries for blacs, compiled against openmpi.
%prep
%setup -q -c -n %{name}
%patch0 -p1
-cd BLACS/
-cp -f %{SOURCE1} .
-
-%build
-cd BLACS/
-CFLAGS=`echo $RPM_OPT_FLAGS | sed -e 's/-fstack-protector//g'`
-RPM_OPT_FLAGS=`echo $CFLAGS`
-make mpi
-
-cd TESTING/
-make
-cd ../..
+for i in mpich2 openmpi; do
+ cp -a BLACS BLACS-$i
+ cp -f %{SOURCE1} BLACS-$i/
+ sed -i "s|FOO|$i|g" BLACS-$i/Bmake.inc
+done
+# copy in docs:
cp %{SOURCE2} mpi_prop.ps
cp %{SOURCE3} blacs_install.ps
cp %{SOURCE4} mpiblacs_issues.ps
@@ -61,44 +141,122 @@ cp %{SOURCE5} f77blacsqref.ps
cp %{SOURCE6} cblacsqref.ps
cp %{SOURCE7} 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 *.so*; do
- cp -f $f ${RPM_BUILD_ROOT}%{_libdir}/$f
-done
-cd ../TESTING/EXE
-cp -f x*test_MPI-LINUX-0 ${RPM_BUILD_ROOT}%{_bindir}
+%build
+# CFLAGS=`echo $RPM_OPT_FLAGS | sed -e 's/-fstack-protector//g'`
+# RPM_OPT_FLAGS=`echo $CFLAGS`
-cd ${RPM_BUILD_ROOT}%{_libdir}
-for i in libmpiblacs libmpiblacsF77init libmpiblacsCinit; do
- ln -fs $i.so.1.0.0 $i.so.1
- ln -s $i.so.1.0.0 $i.so
-done
+# To avoid replicated code define a build macro
+%define dobuild() \
+cd BLACS-$MPI_COMPILER_NAME; \
+make mpi ; \
cd ..
-%post -p /sbin/ldconfig
+# Build mpich2 version
+export MPI_COMPILER_NAME=mpich2
+%{_mpich2_load}
+RPM_OPT_FLAGS=`echo $CFLAGS`
+%dobuild
+%{_mpich2_unload}
+
+# Build OpenMPI version
+export MPI_COMPILER_NAME=openmpi
+%{_openmpi_load}
+RPM_OPT_FLAGS=`echo $CFLAGS`
+%dobuild
+%{_openmpi_unload}
+
+# cd TESTING/
+# make
+# cd ../..
+
+%install
+# mkdir -p ${RPM_BUILD_ROOT}%{_bindir}
+
+for i in mpich2 openmpi; do
+ mkdir -p %{buildroot}%{_libdir}/blacs-$i/
+ mkdir -p %{buildroot}%{_includedir}/blacs-$i/
+ pushd BLACS-$i/LIB
+ for f in *.a *.so*; do
+ cp -f $f %{buildroot}%{_libdir}/blacs-$i/$f
+ done
+ popd
+ install -p BLACS-$i/SRC/MPI/Bdef.h %{buildroot}%{_includedir}/blacs-$i/
+ pushd %{buildroot}%{_libdir}/blacs-$i/
+ for l in libmpiblacs libmpiblacsF77init libmpiblacsCinit; do
+ ln -fs $l.so.1.0.0 $l.so.1
+ ln -s $l.so.1.0.0 $l.so
+ done
+ popd
+# Generate environment module file
+mkdir -p %{buildroot}%{_datadir}/Modules/modulefiles/
+cat << EOF > %{buildroot}%{_datadir}/Modules/modulefiles/blacs-$i-%{_arch}
+#%Module 1.0
+#
+# Blacs libraries compiled with $i support
+#
+prepend-path LD_LIBRARY_PATH %{_libdir}/blacs-$i
+setenv LDFLAGS -L%{_libdir}/blacs-$i
+EOF
+done
-%postun -p /sbin/ldconfig
+# cd ../TESTING/EXE
+# cp -f x*test_MPI-LINUX-0 ${RPM_BUILD_ROOT}%{_bindir}
%clean
rm -fr ${RPM_BUILD_ROOT}
-%files
+%files common
%defattr(-,root,root,0755)
%doc mpi_prop.ps blacs_install.ps mpiblacs_issues.ps f77blacsqref.ps cblacsqref.ps lawn94.ps
-%{_bindir}/x*test_MPI-LINUX-0
-%{_libdir}/libmpiblacs*.so.*
+# %{_bindir}/x*test_MPI-LINUX-0
+
+%files mpich2
+%defattr(-,root,root,0755)
+%dir %{_libdir}/blacs-mpich2/
+%{_datadir}/Modules/modulefiles/blacs-mpich2-%{_arch}
+%{_libdir}/blacs-mpich2/*.so.*
+
+%files mpich2-devel
+%defattr(-,root,root,0755)
+%{_includedir}/blacs-mpich2/
+%{_libdir}/blacs-mpich2/*.so
+
+%files mpich2-static
+%defattr(-,root,root,0755)
+%{_libdir}/blacs-mpich2/*.a
-%files devel
+%files openmpi
%defattr(-,root,root,0755)
-%{_libdir}/libmpiblacs*.a
-%{_libdir}/libmpiblacs*.so
+%dir %{_libdir}/blacs-openmpi/
+%{_datadir}/Modules/modulefiles/blacs-openmpi-%{_arch}
+%{_libdir}/blacs-openmpi/*.so.*
+
+%files openmpi-devel
+%defattr(-,root,root,0755)
+%{_includedir}/blacs-openmpi/
+%{_libdir}/blacs-openmpi/*.so
+
+%files openmpi-static
+%defattr(-,root,root,0755)
+%{_libdir}/blacs-openmpi/*.a
%changelog
+* Thu Dec 10 2009 Deji Akingunola <dakingun at gmail.com> - 1.1-35
+- Buildrequire mpich2-devel-static
+- Adjust obsolete versioning
+
+* Mon Dec 7 2009 Tom "spot" Callaway <tcallawa at redhat.com> - 1.1-34
+- drop lam subpackages (fixes FTBFS, 539057)
+- blacs-mpich2-* now Provides/Obsoletes blacs-lam-*, this is a dirty lie, but we need something to do it
+- move static bits to -static subpackages (resolves 545142)
+- package up Bdef.h for other dependent packages to use (resolves 533929, thanks to Deji Akingunola)
+
+* Thu Aug 6 2009 Tom "spot" Callaway <tcallawa at redhat.com> - 1.1-33
+- rework package to handle all supported MPI environments in Fedora
+
+* Fri Jul 24 2009 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 1.1-32
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
+
* Mon Feb 23 2009 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 1.1-31
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
- Previous message: rpms/libguestfs/F-12 libguestfs-1.0.79-no-fuse-test.patch, NONE, 1.1 libguestfs-find-requires.sh, NONE, 1.1 .cvsignore, 1.54, 1.55 libguestfs.spec, 1.107, 1.108 sources, 1.54, 1.55
- Next message: rpms/blacs/F-12 blacs.spec,1.37,1.38
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the scm-commits
mailing list