[mpich2/el5] Update to 1.4.1p1 patch update
Deji Akingunola
deji at fedoraproject.org
Thu Apr 5 04:39:24 UTC 2012
commit f26247931ed01a5283242144184b72ba25b62f13
Author: Deji Akingunola <dakingun at gmail.com>
Date: Thu Apr 5 00:39:19 2012 -0400
Update to 1.4.1p1 patch update
- Add enable-lib-depend to configure flags
- Ship the mpi compilers in the main package
- Remove alternatives support
- Add script to load mpich2 module on login
mpich2-destdir-fix.patch | 24 +++++
mpich2-modules.patch | 7 +-
mpich2-mpicxx-und.patch | 42 +++++++++
mpich2.spec | 229 ++++++++++++++++------------------------------
sources | 2 +-
5 files changed, 151 insertions(+), 153 deletions(-)
---
diff --git a/mpich2-destdir-fix.patch b/mpich2-destdir-fix.patch
new file mode 100644
index 0000000..45d53c9
--- /dev/null
+++ b/mpich2-destdir-fix.patch
@@ -0,0 +1,24 @@
+--- Makefile.in 2011-08-24 15:41:55.000000000 -0400
++++ Makefile.in.new 2011-08-25 14:19:05.032679591 -0400
+@@ -202,16 +202,16 @@
+ if [ -s $(srcdir)/doc/installguide/install.pdf ] ; then $(INSTALL_DATA) $(srcdir)/doc/installguide/install.pdf ${DESTDIR}${docdir}/install.pdf ; fi
+ if [ -s $(srcdir)/doc/smpd/smpd_pmi.pdf ] ; then $(INSTALL_DATA) $(srcdir)/doc/smpd/smpd_pmi.pdf ${DESTDIR}${docdir}/smpd_pmi.pdf ; fi
+ if [ -s $(srcdir)/doc/logging/logging.pdf ] ; then $(INSTALL_DATA) $(srcdir)/doc/logging/logging.pdf ${DESTDIR}${docdir}/logging.pdf ; fi
+- (cd src/env && $(MAKE) INSTALL_STRIP_FLAG=$(INSTALL_STRIP_FLAG) PACKAGE=$(PACKAGE) prefix=${DESTDIR}${prefix} exec_prefix=${DESTDIR}${exec_prefix} bindir=${DESTDIR}${bindir} libdir=${DESTDIR}${libdir} includedir=${DESTDIR}${includedir} install)
+- (cd src/packaging/pkgconfig && $(MAKE) INSTALL_STRIP_FLAG=$(INSTALL_STRIP_FLAG) PACKAGE=$(PACKAGE) prefix=${DESTDIR}${prefix} exec_prefix=${DESTDIR}${exec_prefix} bindir=${DESTDIR}${bindir} libdir=${DESTDIR}${libdir} includedir=${DESTDIR}${includedir} install)
+- (cd src/packaging/envmods && $(MAKE) INSTALL_STRIP_FLAG=$(INSTALL_STRIP_FLAG) PACKAGE=$(PACKAGE) prefix=${DESTDIR}${prefix} exec_prefix=${DESTDIR}${exec_prefix} bindir=${DESTDIR}${bindir} libdir=${DESTDIR}${libdir} includedir=${DESTDIR}${includedir} install)
++ (cd src/env && $(MAKE) INSTALL_STRIP_FLAG=$(INSTALL_STRIP_FLAG) PACKAGE=$(PACKAGE) prefix=${prefix} exec_prefix=${exec_prefix} bindir=${bindir} libdir=${libdir} includedir=${includedir} install)
++ (cd src/packaging/pkgconfig && $(MAKE) INSTALL_STRIP_FLAG=$(INSTALL_STRIP_FLAG) PACKAGE=$(PACKAGE) prefix=${prefix} exec_prefix=${exec_prefix} bindir=${bindir} libdir=${libdir} includedir=${includedir} install)
++ (cd src/packaging/envmods && $(MAKE) INSTALL_STRIP_FLAG=$(INSTALL_STRIP_FLAG) PACKAGE=$(PACKAGE) prefix=${prefix} exec_prefix=${exec_prefix} bindir=${bindir} libdir=${libdir} includedir=${includedir} install)
+ for dir in @bindings_dirs@ - ; do \
+ if [ "$$dir" = "-" ] ; then break ; fi ;\
+- (cd $$dir && $(MAKE) INSTALL_STRIP_FLAG=$(INSTALL_STRIP_FLAG) PACKAGE=$(PACKAGE) prefix=${DESTDIR}${prefix} exec_prefix=${DESTDIR}${exec_prefix} bindir=${DESTDIR}${bindir} libdir=${DESTDIR}${libdir} includedir=${DESTDIR}${includedir} install) ;\
++ (cd $$dir && $(MAKE) INSTALL_STRIP_FLAG=$(INSTALL_STRIP_FLAG) PACKAGE=$(PACKAGE) prefix=${prefix} exec_prefix=${exec_prefix} bindir=${bindir} libdir=${libdir} includedir=${includedir} install) ;\
+ done
+ for dir in @other_install_dirs@ - ; do \
+ if [ "$$dir" = "-" ] ; then break ; fi ;\
+- (cd $$dir && $(MAKE) INSTALL_STRIP_FLAG=$(INSTALL_STRIP_FLAG) PACKAGE=$(PACKAGE) prefix=${DESTDIR}${prefix} exec_prefix=${DESTDIR}${exec_prefix} bindir=${DESTDIR}${bindir} libdir=${DESTDIR}${libdir} includedir=${DESTDIR}${includedir} install) ;\
++ (cd $$dir && $(MAKE) INSTALL_STRIP_FLAG=$(INSTALL_STRIP_FLAG) PACKAGE=$(PACKAGE) prefix=${prefix} exec_prefix=${exec_prefix} bindir=${bindir} libdir=${libdir} includedir=${includedir} install) ;\
+ done
+
+ install-strip:
diff --git a/mpich2-modules.patch b/mpich2-modules.patch
index 25ec830..5c5c324 100644
--- a/mpich2-modules.patch
+++ b/mpich2-modules.patch
@@ -1,6 +1,6 @@
--- src/packaging/envmods/mpich2.module.in 2009-07-02 15:54:58.000000000 -0400
-+++ src/packaging/envmods/mpich2.module.in.new 2009-11-09 10:37:03.524042574 -0500
-@@ -4,11 +4,16 @@
++++ src/packaging/envmods/mpich2.module.in.new 2010-09-22 14:27:49.950096538 -0400
+@@ -4,11 +4,17 @@
#
# Define prefix so PATH and MANPATH can be updated.
@@ -12,7 +12,7 @@
+setenv MPI_INCLUDE @includedir@
+setenv MPI_LIB @libdir@
+setenv MPI_MAN @mandir@
-+setenv MPI_PYTHON_SITEARCH @bindir@
++setenv MPI_PYTHON_SITEARCH @pysitearch@/@MPILIBNAME at 2
+setenv MPI_COMPILER @MPILIBNAME at 2-@ARCH@
+setenv MPI_SUFFIX _ at MPILIBNAME@2
+setenv MPI_HOME @LIBDIR@/@MPILIBNAME at 2
@@ -23,3 +23,4 @@
-# Undefine prefix and exec_prefix which are too generic environment variables.
-unsetenv prefix
-unsetenv exec_prefix
++prepend-path PYTHONPATH @pysitearch@/@MPILIBNAME at 2
diff --git a/mpich2-mpicxx-und.patch b/mpich2-mpicxx-und.patch
new file mode 100644
index 0000000..88b7c81
--- /dev/null
+++ b/mpich2-mpicxx-und.patch
@@ -0,0 +1,42 @@
+--- Makefile.in 2011-08-25 15:13:33.437818904 -0400
++++ Makefile.in.new 2011-08-26 23:55:59.007152188 -0400
+@@ -102,6 +102,8 @@
+
+ CC = @CC@
+ CFLAGS = @CFLAGS@ $(MPICH2_MAKE_CFLAGS)
++CXX = @CXX@
++CXXFLAGS = @CXXFLAGS@ $(MPICH2_MAKE_CXXFLAGS)
+ C_COMPILE = $(CC) $(DEFS) $(INCLUDES) $(CFLAGS) $(CPPFLAGS)
+ # Build the shared library from the shared object files
+ lib/lib${MPILIBNAME}. at SHLIB_EXT@: lib/lib${MPILIBNAME}.la
+@@ -118,7 +120,7 @@
+ (cd lib && $(CREATESHLIB) --mode=link -version-info "$(ABIVERSION)" -o lib${MPILIBNAME}f90.la -rpath $(libdir) -L. @LDFLAGS_DEPS@ -l$(MPILIBNAME) @LIB_DEPS@ -ldflags "$(LDFLAGS)" $(LIBS))
+ # Build the shared library from the shared object files
+ lib/lib${MPICXXLIBNAME}. at SHLIB_EXT@: lib/lib${MPICXXLIBNAME}.la
+- (cd lib && $(CREATESHLIB) --mode=link -version-info "$(ABIVERSION)" -o lib${MPICXXLIBNAME}.la -rpath $(libdir) -L. @LDFLAGS_DEPS@ -l$(MPILIBNAME) @LIB_DEPS@ -ldflags "$(LDFLAGS)" $(LIBS))
++ (cd lib && $(CREATESHLIB) --mode=link -cc="$(CXX)" -clink="$(CXX) $(CXXFLAGS) -shared" -version-info "$(ABIVERSION)" -o lib${MPICXXLIBNAME}.la -rpath $(libdir) -L. @LDFLAGS_DEPS@ -l$(MPILIBNAME) @LIB_DEPS@ -ldflags "$(LDFLAGS)" $(LIBS))
+
+ # --------------------------------------------------------------------------
+ .libstamp0:
+--- Makefile.in 2011-09-11 20:52:24.702958021 -0400
++++ Makefile.in.new 2011-09-12 09:34:52.824287092 -0400
+@@ -328,7 +328,7 @@
+ # 1) Build the debugger interface if requested
+ # Move the "pkglist.new" file to "pkglist" on successful completion
+ all-postamble:
+- ( cd examples && $(MAKE) )
++ ( cd examples && $(MAKE) LDFLAGS='-L../lib/' LIBS='-lmpl -lopa' )
+ @if [ "@BUILD_TVDLL@" = "yes" ] ; then \
+ ( cd src/mpi/debugger && $(MAKE) ./libtvmpich2. at SHLIB_EXT@ ) ; fi
+ @if [ -s lib/pkglist.new ] ; then mv -f lib/pkglist.new lib/pkglist ; fi
+--- src/util/createshlib.in 2010-11-06 11:02:44.000000000 -0400
++++ src/util/createshlib.in.new 2011-08-27 01:04:47.980532917 -0400
+@@ -99,7 +99,7 @@
+ # -cc and -clink allow us to override the commands used to
+ # build the shared library
+ -cc=*|--cc=*) CC_SHL=$option ;;
+- -clink=*|--clink=*) C_LINK_SHL=$option ;;
++ -clink=*|--clink=*) C_LINK_SHL=`echo $arg | sed -e 's/-clink=//'` ;;
+ -libtype=*|--libtype=*) libtype=$option ;;
+ -l*|-L*)
+ dependentLibs="$dependentLibs $arg"
diff --git a/mpich2.spec b/mpich2.spec
index c771799..06d8c32 100644
--- a/mpich2.spec
+++ b/mpich2.spec
@@ -1,6 +1,8 @@
+%{!?python_sitearch: %global python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)")}
+
Summary: A high-performance implementation of MPI
Name: mpich2
-Version: 1.2.1p1
+Version: 1.4.1p1
Release: 1%{?dist}
License: MIT
Group: Development/Libraries
@@ -8,6 +10,8 @@ URL: http://www.mcs.anl.gov/research/projects/mpich2
Source0: http://www.mcs.anl.gov/research/projects/mpich2/downloads/tarballs/%{version}/%{name}-%{version}.tar.gz
Source1: mpich2.macros
Patch0: mpich2-modules.patch
+Patch1: mpich2-destdir-fix.patch
+Patch2: mpich2-mpicxx-und.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: libXt-devel, e2fsprogs-devel
%ifarch %{ix86} x86_64
@@ -15,29 +19,31 @@ BuildRequires: java-devel-openjdk, gcc-gfortran
%else
BuildRequires: java-devel, gcc-gfortran
%endif
-BuildRequires: emacs-common, perl, python
+BuildRequires: perl, python
+BuildRequires: automake autoconf libtool gettext
+%ifnarch s390 s390x
+BuildRequires: valgrind-devel
+%endif
+Provides: mpi
Obsoletes: %{name}-libs < 1.1.1
+Obsoletes: %{name}-mpd < 1.4.1
Requires: environment-modules
-Requires: python
-Requires(post): chkconfig
-Requires(preun):chkconfig
-Requires(posttrans):chkconfig
+Requires(pre): chkconfig
#Requires chkconfig for /usr/sbin/alternatives
%description
MPICH2 is a high-performance and widely portable implementation of the
-MPI standard. This release has all MPI-2.1 functions and features
-required by the standard with the exeption of support for the
-"external32" portable I/O format.
+MPI standard (both MPI-1 and MPI-2). This release has all MPI-2.2 functions and
+features required by the standard with the exeption of support for the
+"external32" portable I/O format and user-defined data representations for I/O.
The mpich2 binaries in this RPM packages were configured to use the default
-process manager 'MPD' using the default device 'ch3'. The ch3 device
+process manager (Hydra) using the default device (ch3). The ch3 device
was configured with support for the nemesis channel that allows for
shared-memory and TCP/IP sockets based communication.
-This build also include support for using '/usr/sbin/alternatives'
-and/or the 'module environment' to select which MPI implementation to use
-when multiple implementations are installed.
+This build also include support for using the 'module environment' to select
+which MPI implementation to use when multiple implementations are installed.
%package devel
Summary: Development files for mpich2
@@ -46,9 +52,7 @@ Provides: %{name}-devel-static = %{version}-%{release}
Requires: %{name} = %{version}-%{release}
Requires: pkgconfig
Requires: gcc-gfortran
-Requires(post): chkconfig
-Requires(preun):chkconfig
-Requires(posttrans):chkconfig
+Requires(pre): chkconfig
#Requires chkconfig for /usr/sbin/alternatives
%description devel
@@ -57,6 +61,7 @@ Contains development headers and libraries for mpich2
%package doc
Summary: Documentations and examples for mpich2
Group: Documentation
+Requires: %{name}-devel = %{version}-%{release}
%description doc
Contains documentations, examples and manpages for mpich2
@@ -80,52 +85,61 @@ Contains documentations, examples and manpages for mpich2
%endif
%ifarch x86_64 ia64 ppc64 s390x sparc64
-%global priority 41
+%define priority 41
%define mbits 64
%else
+%define priority 40
%define mbits 32
-%global priority 40
%endif
-%ifarch x86_64
+%ifarch %{ix86} x86_64 s390
%global XFLAGS -fPIC
%endif
%prep
%setup -q
%patch0 -p0 -b .modu
+%patch1 -p0 -b .dest
+%patch2 -p0 -b .und
%build
%configure \
--enable-sharedlibs=gcc \
- --enable-f90 \
+ --enable-shared \
+ --enable-lib-depend \
+ --disable-rpath \
+ --enable-fc \
--with-device=%{selected_channels} \
+ --with-pm=hydra:gforker \
--sysconfdir=%{_sysconfdir}/%{name}-%{_arch} \
--includedir=%{_includedir}/%{name}-%{_arch} \
+ --bindir=%{_libdir}/%{name}/bin \
--libdir=%{_libdir}/%{name}/lib \
--datadir=%{_datadir}/%{name} \
--mandir=%{_mandir}/%{name} \
--docdir=%{_datadir}/%{name}/doc \
--htmldir=%{_datadir}/%{name}/doc \
+ --with-hwloc-prefix=embedded \
+ --with-openpa-prefix=embedded \
--with-java=%{_sysconfdir}/alternatives/java_sdk \
- F90=%{opt_fc} \
+ FC=%{opt_fc} \
F77=%{opt_f77} \
- CFLAGS="-m%{mbits} -O2 %{?XFLAGS}" \
- CXXFLAGS="-m%{mbits} -O2 %{?XFLAGS}" \
- F90FLAGS="-m%{mbits} -O2 %{?XFLAGS}" \
- FFLAGS="-m%{mbits} -O2 %{?XFLAGS}" \
+ CFLAGS="-O2 %{?XFLAGS}" \
+ CXXFLAGS="-O2 %{?XFLAGS}" \
+ FCFLAGS="-O2 %{?XFLAGS}" \
+ FFLAGS="-O2 %{?XFLAGS}" \
LDFLAGS='-Wl,-z,noexecstack' \
MPICH2LIB_CFLAGS="%{?opt_cc_cflags}" \
MPICH2LIB_CXXFLAGS="%{optflags}" \
- MPICH2LIB_F90FLAGS="%{?opt_fc_fflags}" \
+ MPICH2LIB_FCFLAGS="%{?opt_fc_fflags}" \
MPICH2LIB_FFLAGS="%{?opt_f77_fflags}"
# MPICH2LIB_LDFLAGS='-Wl,-z,noexecstack' \
-# MPICH2_MPICC_FLAGS="-m%{__isa_bits} -O2 %{?XFLAGS}" \
-# MPICH2_MPICXX_FLAGS="-m%{__isa_bits} -O2 %{?XFLAGS}" \
-# MPICH2_MPIF90_FLAGS="-m%{__isa_bits} -O2 %{?XFLAGS}" \
-# MPICH2_MPIF77_FLAGS="-m%{__isa_bits} -O2 %{?XFLAGS}"
+# MPICH2_MPICC_FLAGS="-O2 %{?XFLAGS}" \
+# MPICH2_MPICXX_FLAGS="-O2 %{?XFLAGS}" \
+# MPICH2_MPIFC_FLAGS="-O2 %{?XFLAGS}" \
+# MPICH2_MPIF77_FLAGS="-O2 %{?XFLAGS}"
-# F90FLAGS="%{?opt_fc_fflags} -I%{_fmoddir}/%{name} %{?XFLAGS}" \
+# FCFLAGS="%{?opt_fc_fflags} -I%{_fmoddir}/%{name} %{?XFLAGS}" \
#make %{?_smp_mflags} doesn't work
make VERBOSE=1
@@ -133,29 +147,10 @@ make VERBOSE=1
rm -rf %{buildroot}
make DESTDIR=%{buildroot} install
-mkdir -p %{buildroot}%{_libdir}/%{name}/bin %{buildroot}%{_mandir}/man1
-rm -f %{buildroot}%{_bindir}/{mpiexec,mpirun,mpdrun}
-
-for execfile in mpiexec mpirun; do
- ln -s ../../../bin/mpiexec.py %{buildroot}%{_libdir}/%{name}/bin/$execfile
-done
-BASIC_PGMS="slog2print slog2navigator slog2filter slog2updater logconvertor jumpshot"
-CLOG_PGMS="clogprint clogTOslog2 clog2print clog2TOslog2"
-RLOG_PGMS="rlogprint rlogTOslog2"
-OTHER_PGMS="clog2_join clog2_print clog2_repair rlog_check_timeorder rlog_print"
-for exefile in $BASIC_PGMS $CLOG_PGMS $RLOG_PGMS $OTHER_PGMS mpich2version ; do
- mv %{buildroot}%{_bindir}/$exefile %{buildroot}%{_libdir}/%{name}/bin/$exefile
-done
-
-pushd %{buildroot}%{_bindir}/
-ln -s mpiexec.py mpdrun
-touch mpiexec mpirun mpich2version
-touch %{buildroot}%{_mandir}/man1/mpiexec.1
-popd
-for b in mpicxx mpicc mpif77 mpif90 mpic++; do
- mv %{buildroot}%{_bindir}/$b %{buildroot}%{_libdir}/%{name}/bin/;
- touch %{buildroot}%{_bindir}/$b;
- touch %{buildroot}%{_mandir}/man1/$b.1;
+# Workaround 1.4.1 broken destdir
+for fichier in mpif77 mpif90 mpicxx mpicc ; do
+ sed -i 's#'%{buildroot}'##' %{buildroot}%{_libdir}/%{name}/bin/$fichier
+ sed -i 's#'%{buildroot}'##' %{buildroot}%{_sysconfdir}/%{name}-%{_arch}/$fichier.conf
done
mv %{buildroot}%{_libdir}/%{name}/lib/pkgconfig %{buildroot}%{_libdir}/
@@ -166,9 +161,17 @@ chmod -x %{buildroot}%{_libdir}/pkgconfig/*.pc
# Install the module file
mkdir -p %{buildroot}%{_sysconfdir}/modulefiles
+mkdir -p %{buildroot}%{python_sitearch}/%{name}
cp -pr src/packaging/envmods/mpich2.module %{buildroot}%{_sysconfdir}/modulefiles/%{name}-%{_arch}
-sed -i 's#'%{_bindir}'#'%{_libdir}/%{name}/bin'#;s#@LIBDIR@#'%{_libdir}'#;s#@ARCH@#'%{_arch}'#' %{buildroot}%{_sysconfdir}/modulefiles/%{name}-%{_arch}
-
+sed -i 's#'%{_bindir}'#'%{_libdir}/%{name}/bin'#;s#@LIBDIR@#'%{_libdir}'#;s#@pysitearch@#'%{python_sitearch}'#;s#@ARCH@#'%{_arch}'#' %{buildroot}%{_sysconfdir}/modulefiles/%{name}-%{_arch}
+
+mkdir -p %{buildroot}%{_sysconfdir}/profile.d
+cat << EOF > %{buildroot}%{_sysconfdir}/profile.d/mpich2-%{_arch}.sh
+# Load mpich2 environment module
+module load %{name}-%{_arch}
+EOF
+cp -p %{buildroot}%{_sysconfdir}/profile.d/mpich2-%{_arch}.{sh,csh}
+
# Install the RPM macro
mkdir -p %{buildroot}%{_sysconfdir}/rpm
cp -pr %{SOURCE1} %{buildroot}%{_sysconfdir}/rpm/macros.%{name}
@@ -187,59 +190,24 @@ done
rm -rf %{buildroot}%{_sbindir}/mpe*
find %{buildroot} -type f -name "*.la" -exec rm -f {} ';'
-
+rm -f %{buildroot}%{_libdir}/%{name}/lib/lib{*mpich*,opa,mpl}.a
%clean
rm -rf %{buildroot}
%post
-
/sbin/ldconfig
-if [ $1 -eq 1 ] ; then
-/usr/sbin/alternatives \
- --install %{_bindir}/mpirun mpi-run %{_bindir}/mpiexec.py %{priority} \
- --slave %{_bindir}/mpiexec mpi-exec %{_bindir}/mpiexec.py \
- --slave %{_bindir}/mpich2version mpi-ver \
- %{_libdir}/%{name}/bin/mpich2version \
- --slave %{_mandir}/man1/mpiexec.1.gz mpi-exec-man \
- %{_mandir}/%{name}/man1/mpiexec.1.gz \
- --slave %{_mandir}/man1/mpif90.1.gz mpif90-man \
- %{_mandir}/%{name}/man1/mpif90.1.gz \
- --slave %{_mandir}/man1/mpif77.1.gz mpif77-man \
- %{_mandir}/%{name}/man1/mpif77.1.gz \
- --slave %{_mandir}/man1/mpicc.1.gz mpicc-man \
- %{_mandir}/%{name}/man1/mpicc.1.gz \
- --slave %{_mandir}/man1/mpicxx.1.gz mpicxx-man \
- %{_mandir}/%{name}/man1/mpicxx.1.gz
-fi
-
-%posttrans
-if [ $1 -eq 0 ] ; then
-/usr/sbin/alternatives \
- --install %{_bindir}/mpirun mpi-run %{_bindir}/mpiexec.py %{priority} \
- --slave %{_bindir}/mpiexec mpi-exec %{_bindir}/mpiexec.py \
- --slave %{_bindir}/mpich2version mpi-ver \
- %{_libdir}/%{name}/bin/mpich2version \
- --slave %{_mandir}/man1/mpiexec.1.gz mpi-exec-man \
- %{_mandir}/%{name}/man1/mpiexec.1.gz \
- --slave %{_mandir}/man1/mpif90.1.gz mpif90-man \
- %{_mandir}/%{name}/man1/mpif90.1.gz \
- --slave %{_mandir}/man1/mpif77.1.gz mpif77-man \
- %{_mandir}/%{name}/man1/mpif77.1.gz \
- --slave %{_mandir}/man1/mpicc.1.gz mpicc-man \
- %{_mandir}/%{name}/man1/mpicc.1.gz \
- --slave %{_mandir}/man1/mpicxx.1.gz mpicxx-man \
- %{_mandir}/%{name}/man1/mpicxx.1.gz
-fi
+%postun
+/sbin/ldconfig
-%preun
-if [ $1 -eq 0 ] ; then
-/usr/sbin/alternatives --remove mpi-run %{_bindir}/mpiexec.py
+%pre
+if [ $1 -gt 1 ] ; then
+ if [ -e %{_bindir}/mpiexec.py ] ; then
+ /usr/sbin/alternatives --remove mpi-run %{_bindir}/mpiexec.py
+ fi
fi
-%postun -p /sbin/ldconfig
-
%pre devel
if [ $1 -gt 1 ] ; then
# Remove the old alternative
@@ -248,79 +216,35 @@ if [ $1 -gt 1 ] ; then
fi
fi
-%post devel
-if [ $1 -eq 1 ] ; then
-/usr/sbin/alternatives \
- --install %{_bindir}/mpicc mpicc %{_libdir}/%{name}/bin/mpicc %{priority} \
- --slave %{_bindir}/mpicxx mpicxx %{_libdir}/%{name}/bin/mpicxx \
- --slave %{_bindir}/mpic++ mpic++ %{_libdir}/%{name}/bin/mpicxx \
- --slave %{_bindir}/mpif90 mpif90 %{_libdir}/%{name}/bin/mpif90 \
- --slave %{_bindir}/mpif77 mpif77 %{_libdir}/%{name}/bin/mpif77
-fi
-
-%posttrans devel
-if [ $1 -eq 0 ] ; then
-/usr/sbin/alternatives \
- --install %{_bindir}/mpicc mpicc %{_libdir}/%{name}/bin/mpicc %{priority} \
- --slave %{_bindir}/mpicxx mpicxx %{_libdir}/%{name}/bin/mpicxx \
- --slave %{_bindir}/mpic++ mpic++ %{_libdir}/%{name}/bin/mpicxx \
- --slave %{_bindir}/mpif90 mpif90 %{_libdir}/%{name}/bin/mpif90 \
- --slave %{_bindir}/mpif77 mpif77 %{_libdir}/%{name}/bin/mpif77
-fi
-
-%preun devel
-if [ $1 -ge 0 ] ; then
-/usr/sbin/alternatives --remove mpicc %{_libdir}/%{name}/bin/mpicc
-fi
-
%files
%defattr(-,root,root,-)
%doc CHANGES COPYRIGHT README src/mpe2/README.mpe2 RELEASE_NOTES
-%{_bindir}/mpd*
-%{_bindir}/mpi*.*
-%{_bindir}/check_callstack
-%{_bindir}/parkill
-%{_bindir}/pmi_proxy
%dir %{_libdir}/%{name}
%dir %{_libdir}/%{name}/lib
%dir %{_libdir}/%{name}/bin
%{_libdir}/%{name}/lib/*.jar
%{_libdir}/%{name}/lib/mpe*.o
%{_libdir}/%{name}/lib/*.so.*
-%{_libdir}/%{name}/bin/mpiexec
-%{_libdir}/%{name}/bin/mpirun
-%{_libdir}/%{name}/bin/mpich2version
+%{_libdir}/%{name}/bin/*
%config %{_sysconfdir}/%{name}-%{_arch}/
+%dir %{python_sitearch}/%{name}
%dir %{_mandir}/%{name}
%doc %{_mandir}/%{name}/man1/
%{_sysconfdir}/modulefiles/%{name}-%{_arch}
-%exclude %{_bindir}/mpif*
-%exclude %{_bindir}/mpic*
-%ghost %{_bindir}/mpiexec
-%ghost %{_bindir}/mpirun
-%ghost %{_bindir}/mpich2version
-%ghost %{_mandir}/man1/mpi*.1.gz
+%{_sysconfdir}/profile.d/mpich2-%{_arch}.*
+%exclude %{_libdir}/%{name}/bin/*log*
+%exclude %{_libdir}/%{name}/bin/jumpshot
%files devel
%defattr(-,root,root,-)
-%{_libdir}/%{name}/bin/mpicc
-%{_libdir}/%{name}/bin/mpicxx
-%{_libdir}/%{name}/bin/mpic++
-%{_libdir}/%{name}/bin/mpif90
-%{_libdir}/%{name}/bin/mpif77
%{_libdir}/%{name}/bin/*log*
%{_libdir}/%{name}/bin/jumpshot
-%ghost %{_bindir}/mpicc
-%ghost %{_bindir}/mpicxx
-%ghost %{_bindir}/mpic++
-%ghost %{_bindir}/mpif90
-%ghost %{_bindir}/mpif77
%{_includedir}/%{name}-%{_arch}/
#%{_fmoddir}/%{name}/
%{_libdir}/%{name}/lib/*.a
%{_libdir}/%{name}/lib/*.so
%{_libdir}/%{name}/lib/trace_rlog/libTraceInput.so
-%{_libdir}/pkgconfig/%{name}-ch3.pc
+%{_libdir}/pkgconfig/%{name}-*.pc
%{_libdir}/pkgconfig/openpa.pc
%{_datadir}/%{name}/examples*/Makefile-%{_arch}
%config %{_sysconfdir}/rpm/macros.%{name}
@@ -336,6 +260,13 @@ fi
%exclude %{_datadir}/%{name}/examples*/Makefile-%{_arch}
%changelog
+* Sun Sep 11 2011 Deji Akingunola <dakingun at gmail.com> - 1.4.1p1-1
+- Update to 1.4.1p1 patch update
+- Add enable-lib-depend to configure flags
+- Ship the mpi compilers in the main package
+- Remove alternatives support
+- Add script to load mpich2 module on login
+
* Mon Aug 16 2010 Deji Akingunola <dakingun at gmail.com> - 1.2.1p1-1
- Upgrade to 1.2.1p1.
- Fix the post-install scriptlet error causing build issue (BZ 624217)
diff --git a/sources b/sources
index 3073fc1..9663e79 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-fa7e8dc7c5fb60395ab26c5b239321ca mpich2-1.2.1p1.tar.gz
+b470666749bcb4a0449a072a18e2c204 mpich2-1.4.1p1.tar.gz
More information about the scm-commits
mailing list