[mpi4py/f18] Rename mpich2 sub-packages to mpich and rebuild for mpich-3.0

Deji Akingunola deji at fedoraproject.org
Wed Jul 24 04:39:57 UTC 2013


commit 5979dcbdf853859ceb77a517fad997c6ce71942c
Author: Deji Akingunola <dakingun at gmail.com>
Date:   Wed Jul 24 00:39:37 2013 -0400

    Rename mpich2 sub-packages to mpich and rebuild for mpich-3.0

 mpi4py.spec |  191 ++++++++++++++++++++++++++---------------------------------
 1 files changed, 84 insertions(+), 107 deletions(-)
---
diff --git a/mpi4py.spec b/mpi4py.spec
index 8d451a2..1ba2a06 100644
--- a/mpi4py.spec
+++ b/mpi4py.spec
@@ -15,10 +15,10 @@
 %filter_setup
 }
 
-%global with_mpich2 1
+%global with_mpich 1
 %if 0%{?rhel}
 %ifarch ppc64
-%global with_mpich2 0
+%global with_mpich 0
 %endif
 %endif
 
@@ -27,14 +27,14 @@
 # So to easy enable/disable the testsuite, I introduce the following
 #   variables:
 #
-# * MPD:       if '1' enable mpich2, which requires mpd to start
+# * MPICH:     if '1' enable mpich
 # * OPENMPI:   if '1' enable openmpi
-%global MPD 0
+%global MPICH 0
 %global OPENMPI 0
 
 Name:           mpi4py
 Version:        1.3
-Release:        5%{?dist}
+Release:        6%{?dist}
 Summary:        Python bindings of the Message Passing Interface (MPI)
 
 Group:          Development/Languages
@@ -50,9 +50,6 @@ BuildRequires:  python3-devel
 %endif
 Requires:       %{name}-common = %{version}-%{release}
 
-# for the testsuite: 'pwgen' is needed to create a random password
-BuildRequires:  pwgen
-
 
 
 %description
@@ -104,14 +101,16 @@ objects).
 This package contains %{name} compiled against Open MPI.
 
 
-%if %{with_mpich2}
-%package -n python3-mpi4py-mpich2
-BuildRequires:  mpich2-devel
-Requires:       mpich2
+%if %{with_mpich}
+%package -n python3-mpi4py-mpich
+BuildRequires:  mpich-devel
+Requires:       mpich
 Requires:       %{name}-common = %{version}-%{release}
-Summary:        Python bindings of MPI, MPICH2 version
+Summary:        Python bindings of MPI, MPICH version
 Provides:       python3-mpi4py-runtime = %{version}-%{release}
-%description -n python3-mpi4py-mpich2
+Provides:	python3-%{name}-mpich2 = %{version}-%{release}
+Obsoletes:	python3-%{name}-mpich2 < 1.3-6
+%description -n python3-mpi4py-mpich
 This package is constructed on top of the MPI-1/MPI-2 specification and
 provides an object oriented interface which closely follows MPI-2 C++
 bindings. It supports point-to-point (sends, receives) and collective
@@ -120,7 +119,7 @@ object as well as optimized communications of Python object exposing the
 single-segment buffer interface (NumPy arrays, built-in bytes/string/array
 objects).
 
-This package contains %{name} compiled against MPICH2.
+This package contains %{name} compiled against MPICH.
 %endif
 %endif # with_python3
 
@@ -151,15 +150,17 @@ objects).
 This package contains %{name} compiled against Open MPI.
 
 
-%if %{with_mpich2}
-%package mpich2
-BuildRequires:  mpich2-devel
-Requires:       mpich2
+%if %{with_mpich}
+%package mpich
+BuildRequires:  mpich-devel
+Requires:       mpich
 Requires:       %{name}-common = %{version}-%{release}
-Provides:       python2-mpi4py-mpich2 = %{version}-%{release}
-Summary:        Python bindings of MPI, MPICH2 version
+Provides:       python2-mpi4py-mpich = %{version}-%{release}
+Summary:        Python bindings of MPI, MPICH version
 Provides:       mpi4py-runtime = %{version}-%{release}
-%description mpich2
+Provides:	%{name}-mpich2 = %{version}-%{release}
+Obsoletes:	%{name}-mpich2 < 1.3-6
+%description mpich
 This package is constructed on top of the MPI-1/MPI-2 specification and
 provides an object oriented interface which closely follows MPI-2 C++
 bindings. It supports point-to-point (sends, receives) and collective
@@ -168,7 +169,7 @@ object as well as optimized communications of Python object exposing the
 single-segment buffer interface (NumPy arrays, built-in bytes/string/array
 objects).
 
-This package contains %{name} compiled against MPICH2.
+This package contains %{name} compiled against MPICH.
 %endif
 
 
@@ -200,12 +201,12 @@ CFLAGS="%{optflags}" %{__python} setup.py build
 mv build openmpi
 %{_openmpi_unload}
 
-%if %{with_mpich2}
-# Build mpich2 version
-%{_mpich2_load}
+%if %{with_mpich}
+# Build mpich version
+%{_mpich_load}
 CFLAGS="%{optflags}" %{__python} setup.py build
-mv build mpich2
-%{_mpich2_unload}
+mv build mpich
+%{_mpich_unload}
 %endif
 
 %if 0%{?with_python3}
@@ -220,12 +221,12 @@ CFLAGS="%{optflags}" %{__python3} setup.py build
 mv build openmpi
 %{_openmpi_unload}
 
-%if %{with_mpich2}
-# Build mpich2 version
-%{_mpich2_load}
+%if %{with_mpich}
+# Build mpich version
+%{_mpich_load}
 CFLAGS="%{optflags}" %{__python3} setup.py build
-mv build mpich2
-%{_mpich2_unload}
+mv build mpich
+%{_mpich_unload}
 %endif
 
 popd
@@ -243,15 +244,15 @@ mv %{buildroot}%{python_sitearch}/%{name}/ %{buildroot}%{python_sitearch}/%{name
 mv build openmpi
 %{_openmpi_unload}
 
-%if %{with_mpich2}
-# Install MPICH2 version
-%{_mpich2_load}
-mv mpich2 build
+%if %{with_mpich}
+# Install MPICH version
+%{_mpich_load}
+mv mpich build
 %{__python} setup.py install -O1 --skip-build --root %{buildroot}
-mkdir -p %{buildroot}%{python_sitearch}/mpich2
-mv %{buildroot}%{python_sitearch}/%{name}/ %{buildroot}%{python_sitearch}/%{name}*.egg-info %{buildroot}%{python_sitearch}/mpich2
-mv build mpich2
-%{_mpich2_unload}
+mkdir -p %{buildroot}%{python_sitearch}/mpich
+mv %{buildroot}%{python_sitearch}/%{name}/ %{buildroot}%{python_sitearch}/%{name}*.egg-info %{buildroot}%{python_sitearch}/mpich
+mv build mpich
+%{_mpich_unload}
 %endif
 
 
@@ -266,15 +267,15 @@ mv %{buildroot}%{python3_sitearch}/%{name}/ %{buildroot}%{python3_sitearch}/%{na
 mv build openmpi
 %{_openmpi_unload}
 
-%if %{with_mpich2}
-# Install MPICH2 version
-%{_mpich2_load}
-mv mpich2 build
+%if %{with_mpich}
+# Install MPICH version
+%{_mpich_load}
+mv mpich build
 %{__python3} setup.py install -O1 --skip-build --root %{buildroot}
-mkdir -p %{buildroot}%{python3_sitearch}/mpich2
-mv %{buildroot}%{python3_sitearch}/%{name}/ %{buildroot}%{python3_sitearch}/%{name}*.egg-info %{buildroot}%{python3_sitearch}/mpich2
-mv build mpich2
-%{_mpich2_unload}
+mkdir -p %{buildroot}%{python3_sitearch}/mpich
+mv %{buildroot}%{python3_sitearch}/%{name}/ %{buildroot}%{python3_sitearch}/%{name}*.egg-info %{buildroot}%{python3_sitearch}/mpich
+mv build mpich
+%{_mpich_unload}
 %endif
 
 popd
@@ -294,31 +295,17 @@ PYTHONPATH=%{buildroot}%{python_sitearch}/openmpi \
 %{_openmpi_unload}
 %endif
 
-# test mpd?
-%if 0%{?MPD}
-%if %{with_mpich2}
-%{_mpich2_load}
-
-# create mpd.conf
-#export MPD_CONF_FILE=mpd.conf
-#echo MPD_SECRETWORD=$(pwgen -s 50 1) > mpd.conf
-#chmod 600 mpd.conf
-
-#mpd --daemon
-PYTHONPATH=%{buildroot}%{python_sitearch}/mpich2 \
-    mpiexec.gforker -np 1 python2 test/runtests.py
-PYTHONPATH=%{buildroot}%{python_sitearch}/mpich2 \
-    mpiexec.gforker -np 5 python2 test/runtests.py
-PYTHONPATH=%{buildroot}%{python_sitearch}/mpich2 \
-    mpiexec.gforker -np 8 python2 test/runtests.py
-#mpdallexit
-
-# delte mpd.conf again
-#rm mpd.conf
-#unset MPD_CONF_FILE
-
-
-%{_mpich2_unload}
+# test mpich?
+%if 0%{?MPICH}
+%if %{with_mpich}
+%{_mpich_load}
+PYTHONPATH=%{buildroot}%{python_sitearch}/mpich \
+    mpiexec -np 1 python2 test/runtests.py
+PYTHONPATH=%{buildroot}%{python_sitearch}/mpich \
+    mpiexec -np 5 python2 test/runtests.py
+PYTHONPATH=%{buildroot}%{python_sitearch}/mpich \
+    mpiexec -np 8 python2 test/runtests.py
+%{_mpich_unload}
 %endif
 %endif
 
@@ -335,32 +322,19 @@ PYTHONPATH=%{buildroot}%{python3_sitearch}/openmpi \
 %{_openmpi_unload}
 %endif
 
-# test mpd?
-%if 0%{?MPD}
-%if %{with_mpich2}
-%{_mpich2_load}
-
-# create mpd.conf
-#export MPD_CONF_FILE=mpd.conf
-#echo MPD_SECRETWORD=$(pwgen -s 50 1) > mpd.conf
-#chmod 600 mpd.conf
-
-#mpd --daemon
-PYTHONPATH=%{buildroot}%{python3_sitearch}/mpich2 \
-    mpiexec.gforker -np 1 python3 test/runtests.py
-PYTHONPATH=%{buildroot}%{python3_sitearch}/mpich2 \
-    mpiexec.gforker -np 5 python3 test/runtests.py
-PYTHONPATH=%{buildroot}%{python3_sitearch}/mpich2 \
-    mpiexec.gforker -np 8 python3 test/runtests.py
-#mpdallexit
-
-# delte mpd.conf again
-#rm mpd.conf
-#unset MPD_CONF_FILE
-
-%{_mpich2_unload}
+# test mpich?
+%if 0%{?MPICH}
+%if %{with_mpich}
+%{_mpich_load}
+PYTHONPATH=%{buildroot}%{python3_sitearch}/mpich \
+    mpiexec -np 1 python3 test/runtests.py
+PYTHONPATH=%{buildroot}%{python3_sitearch}/mpich \
+    mpiexec -np 5 python3 test/runtests.py
+PYTHONPATH=%{buildroot}%{python3_sitearch}/mpich \
+    mpiexec -np 8 python3 test/runtests.py
+%{_mpich_unload}
 %endif
-%endif # mpd disable
+%endif # mpich disable
 %endif # with_python3
 
 %clean
@@ -376,11 +350,11 @@ rm -rf %{buildroot}
 %{python_sitearch}/openmpi/%{name}-%{version}-py?.?.egg-info
 %{python_sitearch}/openmpi/%{name}
 
-%if %{with_mpich2}
-%files mpich2
+%if %{with_mpich}
+%files mpich
 %defattr(-,root,root,-)
-%{python_sitearch}/mpich2/%{name}-%{version}-py?.?.egg-info
-%{python_sitearch}/mpich2/%{name}
+%{python_sitearch}/mpich/%{name}-%{version}-py?.?.egg-info
+%{python_sitearch}/mpich/%{name}
 %endif
 
 %if 0%{?with_python3}
@@ -389,11 +363,11 @@ rm -rf %{buildroot}
 %{python3_sitearch}/openmpi/%{name}-%{version}-py?.?.egg-info
 %{python3_sitearch}/openmpi/%{name}
 
-%if %{with_mpich2}
-%files -n python3-mpi4py-mpich2
+%if %{with_mpich}
+%files -n python3-mpi4py-mpich
 %defattr(-,root,root,-)
-%{python3_sitearch}/mpich2/%{name}-%{version}-py?.?.egg-info
-%{python3_sitearch}/mpich2/%{name}
+%{python3_sitearch}/mpich/%{name}-%{version}-py?.?.egg-info
+%{python3_sitearch}/mpich/%{name}
 %endif
 %endif  # with_python3
 
@@ -403,6 +377,9 @@ rm -rf %{buildroot}
 
 
 %changelog
+* Wed Jul 24 2013 Deji Akingunola <dakingun at gmail.com> - 1.3-6
+- Rename mpich2 sub-packages to mpich and rebuild for mpich-3.0
+
 * Sat Aug  4 2012 Thomas Spura <tomspur at fedoraproject.org> - 1.3-5
 - conditionalize mpich2 support, there is no mpich2 on el6-ppc64
 


More information about the scm-commits mailing list