64ae36
# We only compile with gcc, but other people may want other compilers.
64ae36
# Set the compiler here.
64ae36
%global opt_cc gcc
64ae36
# Optional CFLAGS to use with the specific compiler...gcc doesn't need any,
64ae36
# so uncomment and define to use
64ae36
#global opt_cflags
64ae36
%global opt_cxx g++
64ae36
#global opt_cxxflags
64ae36
%global opt_f77 gfortran
64ae36
#global opt_fflags
64ae36
%global opt_fc gfortran
64ae36
#global opt_fcflags
64ae36
64ae36
%{!?python_sitearch: %global python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)")}
64ae36
# Optional name suffix to use...we leave it off when compiling with gcc, but
64ae36
# for other compiled versions to install side by side, it will need a
64ae36
# suffix in order to keep the names from conflicting.
64ae36
#global _cc_name_suffix -gcc
64ae36
64ae36
%global macrosdir %(d=%{_rpmconfigdir}/macros.d; [ -d $d ] || d=%{_sysconfdir}/rpm; echo $d)
64ae36
64ae36
%global majmin 1.10
64ae36
%global mainversion	%{majmin}.7
64ae36
%global ompi3ver	3.1.3
64ae36
64ae36
Name:			openmpi%{?_cc_name_suffix}
64ae36
Version:		%{mainversion}
64ae36
Release:		5%{?dist}
64ae36
Summary:		Open Message Passing Interface
64ae36
Group:			Development/Libraries
64ae36
License:		BSD and MIT and Romio
64ae36
URL:			http://www.open-mpi.org/
64ae36
64ae36
Source0:		http://www.open-mpi.org/software/ompi/v%{majmin}/downloads/openmpi-%{mainversion}.tar.bz2
64ae36
Source1:		openmpi.module.in
64ae36
Source2:		macros.openmpi.in
64ae36
Patch1:			0001-Add-Chelsio-T6-adapter-device-parameters.patch
64ae36
Patch2:			0002-btl-openib-fix-segmentation-fault.patch
64ae36
64ae36
# openmpi-1.6.4-clean.tar.xz was generated by taking the upstream tarball
64ae36
# and removing license-incompatible files:
64ae36
# rm -r opal/mca/backtrace/darwin/MoreBacktrace
64ae36
Source100:		openmpi-1.6.4-clean.tar.xz
64ae36
# Patch to handle removed items
64ae36
Patch100:		openmpi-removed.patch
64ae36
# Patch to use system ltdl for tests
64ae36
Patch101:               openmpi-ltdl.patch
64ae36
# Learn configure about ppc64le
64ae36
Patch102:		openmpi-1.6.4-ppc64le.patch
64ae36
# Backport of gcc atomics needed for AArch64
64ae36
Patch103:		openmpi-1.6.4-aarch64.patch
64ae36
64ae36
Source300:              https://www.open-mpi.org/software/ompi/v3.1/downloads/openmpi-%{ompi3ver}.tar.bz2
64ae36
Source301:              openmpi3.module.in
64ae36
Source302:              macros.openmpi3
64ae36
# Only for ppc64le
64ae36
# https://github.com/open-mpi/ompi/issues/2526
64ae36
# https://github.com/open-mpi/ompi/issues/2966
64ae36
Patch301:               0001-tests-disable-opal_fifo-test.patch
64ae36
64ae36
BuildRequires:		gcc-gfortran
64ae36
#sparc 64 doesn't have valgrind
64ae36
%ifnarch %{sparc} s390
64ae36
BuildRequires:		valgrind-devel
64ae36
%endif
64ae36
BuildRequires:		libibverbs-devel >= 1.1.3, opensm-devel > 3.3.0
64ae36
BuildRequires:		librdmacm-devel
64ae36
BuildRequires:		hwloc-devel
64ae36
BuildRequires:		python libtool-ltdl-devel
64ae36
BuildRequires:		libesmtp-devel
64ae36
BuildRequires:		libfabric-devel
64ae36
%ifarch x86_64 ppc64le aarch64
64ae36
BuildRequires:		ucx-devel
64ae36
%endif
64ae36
%ifarch x86_64
64ae36
BuildRequires:		infinipath-psm-devel libpsm2-devel
64ae36
%endif
64ae36
%ifarch ppc64le
64ae36
BuildRequires:		automake
64ae36
%endif
64ae36
64ae36
Obsoletes:             openmpi-libs
64ae36
Obsoletes:             openmpi-psm
64ae36
64ae36
Provides:		mpi
64ae36
Requires:		environment-modules
64ae36
64ae36
# Provides for compat with openmpi-1.10.0.
64ae36
# See the comment about libmpi_usempi.so.1 in the install section.
64ae36
%if 0%{?__isa_bits} == 64
64ae36
Provides:		libmpi_usempi.so.1()(64bit)
64ae36
%else
64ae36
Provides:		libmpi_usempi.so.1
64ae36
%endif
64ae36
64ae36
# Private openmpi libraries
64ae36
%global __provides_exclude_from %{_libdir}/(openmpi3|openmpi|compat-openmpi16)/lib/(lib(mca|ompi|open-(pal|rte|trace))|openmpi/).*.so
64ae36
%global __requires_exclude lib(mca|ompi|open-(pal|rte|trace)|vt).*
64ae36
64ae36
%description
64ae36
Open MPI is an open source, freely available implementation of both the 
64ae36
MPI-1 and MPI-2 standards, combining technologies and resources from
64ae36
several other projects (FT-MPI, LA-MPI, LAM/MPI, and PACX-MPI) in
64ae36
order to build the best MPI library available.  A completely new MPI-2
64ae36
compliant implementation, Open MPI offers advantages for system and
64ae36
software vendors, application developers, and computer science
64ae36
researchers. For more information, see http://www.open-mpi.org/ .
64ae36
64ae36
%package devel
64ae36
Summary:        Development files for openmpi
64ae36
Group:          Development/Libraries
64ae36
Requires:       %{name} = %{mainversion}-%{release}, gcc-gfortran
64ae36
Provides:	mpi-devel
64ae36
Obsoletes:	openmpi-psm-devel
64ae36
64ae36
%description devel
64ae36
Contains development headers and libraries for openmpi
64ae36
64ae36
%ifnarch ppc ppc64
64ae36
%package -n openmpi3%{?_cc_name_suffix}
64ae36
Summary:        Open Message Passing Interface 3
64ae36
Group:          Development/Libraries
64ae36
Version:        %{ompi3ver}
64ae36
Release:        2%{?dist}
64ae36
Provides:       mpi
64ae36
Requires:       environment-modules
64ae36
Requires:       openssh-clients
64ae36
64ae36
%description -n openmpi3%{?_cc_name_suffix}
64ae36
The Open MPI Project is an open source Message Passing Interface implementation
64ae36
that is developed and maintained by a consortium of academic, research, and
64ae36
industry partners. Open MPI is therefore able to combine the expertise,
64ae36
technologies, and resources from all across the High Performance Computing
64ae36
community in order to build the best MPI library available. Open MPI offers
64ae36
advantages for system and software vendors, application developers and computer
64ae36
science researchers.
64ae36
Features implemented or in short-term development for Open MPI include:
64ae36
 * Full MPI-3.1 standards conformance
64ae36
 * Thread safety and concurrency
64ae36
 * Dynamic process spawning
64ae36
 * Network and process fault tolerance
64ae36
 * Support network heterogeneity
64ae36
 * Single library supports all networks
64ae36
 * Run-time instrumentation
64ae36
 * Many job schedulers supported
64ae36
 * Many OS's supported (32 and 64 bit)
64ae36
 * Production quality software
64ae36
 * High performance on all platforms
64ae36
 * Portable and maintainable
64ae36
 * Tunable by installers and end-users
64ae36
 * Component-based design, documented APIs
64ae36
 * Active, responsive mailing list
64ae36
 * Open source license based on the BSD license
64ae36
64ae36
%package -n openmpi3%{?_cc_name_suffix}-devel
64ae36
Summary:        Development files for openmpi3
64ae36
Group:          Development/Libraries
64ae36
Version:        %{ompi3ver}
64ae36
Release:        %{release}
64ae36
Requires:       openmpi3%{?_cc_name_suffix}%{?_isa} = %{version}-%{release}, gcc-gfortran
64ae36
Provides:       mpi-devel
64ae36
64ae36
%description -n openmpi3%{?_cc_name_suffix}-devel
64ae36
Contains development headers and libraries for openmpi3.
64ae36
64ae36
%endif
64ae36
64ae36
%ifnarch s390 s390x
64ae36
%package -n compat-openmpi16%{?_cc_name_suffix}
64ae36
Summary:        Open MPI 1.6 compat library
64ae36
Group:          Development/Libraries
64ae36
Version:        1.6.4
64ae36
Release:        10.7.2%{?dist}
64ae36
Provides:       mpi
64ae36
Requires:       environment-modules
64ae36
64ae36
%description -n compat-openmpi16%{?_cc_name_suffix}
64ae36
Open MPI is an open source, freely available implementation of both the
64ae36
MPI-1 and MPI-2 standards, combining technologies and resources from
64ae36
several other projects (FT-MPI, LA-MPI, LAM/MPI, and PACX-MPI) in
64ae36
order to build the best MPI library available.  A completely new MPI-2
64ae36
compliant implementation, Open MPI offers advantages for system and
64ae36
software vendors, application developers, and computer science
64ae36
researchers. For more information, see http://www.open-mpi.org/ .
64ae36
64ae36
This package provides compatibility for applications compiled with Open MPI
64ae36
version 1.6.
64ae36
64ae36
%package -n compat-openmpi16%{?_cc_name_suffix}-devel
64ae36
Summary:        Development files for compat-openmpi16
64ae36
Group:          Development/Libraries
64ae36
Version:        1.6.4
64ae36
Release:        %{release}
64ae36
Requires:       compat-openmpi16%{?_cc_name_suffix}%{?_isa} = %{version}-%{release}, gcc-gfortran
64ae36
Provides:       mpi-devel
64ae36
64ae36
%description -n compat-openmpi16%{?_cc_name_suffix}-devel
64ae36
Contains development headers and libraries for compat-openmpi16
64ae36
64ae36
%endif
64ae36
64ae36
# When dealing with multilib installations, aka the ability to run either
64ae36
# i386 or x86_64 binaries on x86_64 machines, we install the native i386
64ae36
# openmpi libs/compilers and the native x86_64 libs/compilers.  Obviously,
64ae36
# on i386 you can only run i386, so you don't really need the -m32 flag
64ae36
# to gcc in order to force 32 bit mode.  However, since we use the native
64ae36
# i386 package to support i386 operation on x86_64, and since on x86_64
64ae36
# the default is x86_64, the i386 package needs to force i386 mode.  This
64ae36
# is true of all the multilib arches, hence the non-default arch (aka i386
64ae36
# on x86_64) must force the non-default mode (aka 32 bit compile) in it's
64ae36
# native-arch package (aka, when built on i386) so that it will work
64ae36
# properly on the non-native arch as a multilib package (aka i386 installed
64ae36
# on x86_64).  Just to be safe, we also force the default mode (aka 64 bit)
64ae36
# in default arch packages (aka, the x86_64 package).  There are, however,
64ae36
# some arches that don't support forcing *any* mode, those we just leave
64ae36
# undefined.
64ae36
64ae36
%ifarch %{ix86} ppc sparcv9
64ae36
%global mode 32
64ae36
%global modeflag -m32
64ae36
%endif
64ae36
%ifarch ia64
64ae36
%global mode 64
64ae36
%endif
64ae36
%ifarch x86_64 %{power64} sparc64
64ae36
%global mode 64
64ae36
%global modeflag -m64
64ae36
%endif
64ae36
64ae36
%prep
64ae36
%setup -q -n openmpi-%{mainversion} -b 100 -b 300
64ae36
%patch1 -p1
64ae36
%patch2 -p1
64ae36
cd ..
64ae36
64ae36
cd openmpi-%{ompi3ver}
64ae36
%ifarch ppc64le
64ae36
%patch301 -p1
64ae36
%endif
64ae36
cd ..
64ae36
64ae36
cd openmpi-1.6.4
64ae36
%patch100 -p1 -b .removed
64ae36
%patch101 -p1 -b .ltdl
64ae36
%ifarch ppc64le
64ae36
%patch102 -p1 -b .ppc64le
64ae36
%endif
64ae36
%ifarch aarch64
64ae36
%patch103 -p1 -b .aarch64
64ae36
%endif
64ae36
# Make sure we don't use the local libltdl library
64ae36
rm -r opal/libltdl
64ae36
cd ..
64ae36
64ae36
%build
64ae36
# We set this to for convenience, since this is the unique dir we use for this
64ae36
# particular package, version, compiler
64ae36
%global variant openmpi
64ae36
%global libname %{variant}%{?_cc_name_suffix}
64ae36
%global namearch %{variant}-%{_arch}%{?_cc_name_suffix}
64ae36
64ae36
# %%configure macro would change --prefix
64ae36
./configure --prefix=%{_libdir}/%{libname} \
64ae36
%ifarch armv5tel
64ae36
	--build=armv5tel-redhat-linux-gnueabi \
64ae36
	--host=armv5tel-redhat-linux-gnueabi \
64ae36
%endif
64ae36
	--mandir=%{_mandir}/%{namearch} \
64ae36
	--includedir=%{_includedir}/%{namearch} \
64ae36
	--sysconfdir=%{_sysconfdir}/%{namearch} \
64ae36
	--disable-silent-rules \
64ae36
	--with-verbs=/usr \
64ae36
%ifarch x86_64 ppc64le aarch64
64ae36
	--with-ucx=/usr \
64ae36
	--with-ucx-libdir=%{_libdir} \
64ae36
%endif
64ae36
	--with-sge \
64ae36
%ifnarch %{sparc} s390
64ae36
	--with-valgrind \
64ae36
	--enable-memchecker \
64ae36
%endif
64ae36
%ifarch aarch64
64ae36
	--enable-builtin-atomics \
64ae36
%endif
64ae36
	--with-hwloc=/usr \
64ae36
	--with-libltdl=/usr \
64ae36
	--with-wrapper-cflags="%{?modeflag}" \
64ae36
	--with-wrapper-cxxflags="%{?modeflag}" \
64ae36
	--with-wrapper-fcflags="%{?modeflag}" \
64ae36
	CC=%{opt_cc} CXX=%{opt_cxx} \
64ae36
	LDFLAGS='-Wl,-z,noexecstack' \
64ae36
	CFLAGS="%{?opt_cflags} %{!?opt_cflags:$RPM_OPT_FLAGS}" \
64ae36
	CXXFLAGS="%{?opt_cxxflags} %{!?opt_cxxflags:$RPM_OPT_FLAGS}" \
64ae36
	FC=%{opt_fc} FCFLAGS="%{?opt_fcflags} %{!?opt_fcflags:$RPM_OPT_FLAGS}"
64ae36
64ae36
make %{?_smp_mflags}
64ae36
cd ..
64ae36
64ae36
%ifnarch ppc ppc64
64ae36
%global variant openmpi3
64ae36
%global libname %{variant}%{?_cc_name_suffix}
64ae36
%global namearch %{variant}-%{_arch}%{?_cc_name_suffix}
64ae36
64ae36
cd openmpi-%{ompi3ver}
64ae36
./configure --prefix=%{_libdir}/%{libname} \
64ae36
	--mandir=%{_mandir}/%{namearch} \
64ae36
	--includedir=%{_includedir}/%{namearch} \
64ae36
	--sysconfdir=%{_sysconfdir}/%{namearch} \
64ae36
	--disable-silent-rules \
64ae36
	--enable-builtin-atomics \
64ae36
	--enable-mpi-cxx \
64ae36
	--with-sge \
64ae36
%ifnarch s390
64ae36
	--with-valgrind \
64ae36
	--enable-memchecker \
64ae36
%endif
64ae36
	--with-hwloc=/usr \
64ae36
%ifarch x86_64 ppc64le aarch64
64ae36
	--with-ucx \
64ae36
%endif
64ae36
	CC=%{opt_cc} CXX=%{opt_cxx} \
64ae36
	LDFLAGS='%{__global_ldflags}' \
64ae36
	CFLAGS="%{?opt_cflags} %{!?opt_cflags:$RPM_OPT_FLAGS}" \
64ae36
	CXXFLAGS="%{?opt_cxxflags} %{!?opt_cxxflags:$RPM_OPT_FLAGS}" \
64ae36
	FC=%{opt_fc} FCFLAGS="%{?opt_fcflags} %{!?opt_fcflags:$RPM_OPT_FLAGS}"
64ae36
# This fails - https://github.com/open-mpi/ompi/issues/2616
64ae36
#	--with-hwloc=external \
64ae36
# We cannot use external pmix without external libevent
64ae36
#	--with-pmix=external \
64ae36
64ae36
make %{?_smp_mflags}
64ae36
cd ..
64ae36
%endif
64ae36
64ae36
%ifnarch s390 s390x
64ae36
%global variant compat-openmpi16
64ae36
%global libname %{variant}%{?_cc_name_suffix}
64ae36
%global namearch %{variant}-%{_arch}%{?_cc_name_suffix}
64ae36
64ae36
cd openmpi-1.6.4
64ae36
64ae36
%ifarch ppc64le
64ae36
# learn autotools about new arch
64ae36
cp -p %{_datadir}/automake-*/config.{guess,sub} ./config/
64ae36
cp -p %{_datadir}/automake-*/config.{guess,sub} ./ompi/mca/io/romio/romio/confdb/
64ae36
cp -p %{_datadir}/automake-*/config.{guess,sub} ./ompi/contrib/vt/vt/config/
64ae36
cp -p %{_datadir}/automake-*/config.{guess,sub} ./ompi/contrib/vt/vt/extlib/otf/config/
64ae36
%endif
64ae36
# %%configure macro would change --prefix
64ae36
./configure --prefix=%{_libdir}/%{libname} \
64ae36
%ifarch armv5tel
64ae36
	--build=armv5tel-redhat-linux-gnueabi \
64ae36
	--host=armv5tel-redhat-linux-gnueabi \
64ae36
%endif
64ae36
	--mandir=%{_mandir}/%{namearch} \
64ae36
	--includedir=%{_includedir}/%{namearch} \
64ae36
	--sysconfdir=%{_sysconfdir}/%{namearch} \
64ae36
	--disable-silent-rules \
64ae36
	--enable-opal-multi-threads \
64ae36
	--with-openib=/usr \
64ae36
	--with-sge \
64ae36
%ifnarch %{sparc} s390
64ae36
	--with-valgrind \
64ae36
	--enable-memchecker \
64ae36
%endif
64ae36
%ifarch aarch64
64ae36
	--enable-builtin-atomics \
64ae36
%endif
64ae36
	--with-esmtp \
64ae36
	--with-hwloc=/usr \
64ae36
	--with-libltdl=/usr \
64ae36
	--with-wrapper-cflags="%{?modeflag}" \
64ae36
	--with-wrapper-cxxflags="%{?modeflag}" \
64ae36
	--with-wrapper-fflags="%{?modeflag}" \
64ae36
	--with-wrapper-fcflags="%{?modeflag}" \
64ae36
	CC=%{opt_cc} CXX=%{opt_cxx} \
64ae36
	LDFLAGS='-Wl,-z,noexecstack' \
64ae36
	CFLAGS="%{?opt_cflags} %{!?opt_cflags:$RPM_OPT_FLAGS}" \
64ae36
	CXXFLAGS="%{?opt_cxxflags} %{!?opt_cxxflags:$RPM_OPT_FLAGS}" \
64ae36
	FC=%{opt_fc} FCFLAGS="%{?opt_fcflags} %{!?opt_fcflags:$RPM_OPT_FLAGS}" \
64ae36
	F77=%{opt_f77} FFLAGS="%{?opt_fflags} %{!?opt_fflags:$RPM_OPT_FLAGS}"
64ae36
64ae36
make %{?_smp_mflags}
64ae36
cd ..
64ae36
%endif
64ae36
64ae36
%install
64ae36
%global variant openmpi
64ae36
%global libname %{variant}%{?_cc_name_suffix}
64ae36
%global namearch %{variant}-%{_arch}%{?_cc_name_suffix}
64ae36
64ae36
make install DESTDIR=%{buildroot}
64ae36
rm -fr %{buildroot}%{_libdir}/%{libname}/lib/pkgconfig
64ae36
find %{buildroot}%{_libdir}/%{libname}/lib -name \*.la | xargs rm
64ae36
find %{buildroot}%{_mandir}/%{namearch} -type f | xargs gzip -9
64ae36
ln -s mpicc.1.gz %{buildroot}%{_mandir}/%{namearch}/man1/mpiCC.1.gz
64ae36
rm -f %{buildroot}%{_mandir}/%{namearch}/man1/mpiCC.1
64ae36
rm -f %{buildroot}%{_mandir}/%{namearch}/man1/orteCC.1*
64ae36
rm -f %{buildroot}%{_libdir}/%{libname}/share/vampirtrace/doc/opari/lacsi01.ps.gz
64ae36
mkdir %{buildroot}%{_mandir}/%{namearch}/man{2,4,5,6,8,9,n}
64ae36
64ae36
# Make the environment-modules file
64ae36
mkdir -p %{buildroot}%{_sysconfdir}/modulefiles/mpi
64ae36
# Since we're doing our own substitution here, use our own definitions.
64ae36
sed 's#@LIBDIR@#'%{_libdir}/%{libname}'#g;
64ae36
     s#@ETCDIR@#'%{_sysconfdir}/%{namearch}'#g;
64ae36
     s#@FMODDIR@#'%{_fmoddir}/%{namearch}'#g;
64ae36
     s#@INCDIR@#'%{_includedir}/%{namearch}'#g;
64ae36
     s#@MANDIR@#'%{_mandir}/%{namearch}'#g;
64ae36
     s#@PYSITEARCH@#'%{python_sitearch}/%{libname}'#g;
64ae36
     s#@COMPILER@#%{variant}-'%{_arch}%{?_cc_name_suffix}'#g;
64ae36
     s#@SUFFIX@#'%{?_cc_name_suffix}'_%{variant}#g' \
64ae36
     < %SOURCE1 \
64ae36
     > %{buildroot}%{_sysconfdir}/modulefiles/mpi/%{namearch}
64ae36
64ae36
# make the rpm config file
64ae36
mkdir -p %{buildroot}/%{_sysconfdir}/rpm
64ae36
LIBNAME="%{libname}"
64ae36
# do not expand _arch
64ae36
sed "s#@MACRONAME@#${LIBNAME//-/_}#g;s#@MODULENAME@#%{variant}-%%{_arch}%{?_cc_name_suffix}#" < %SOURCE2 > %{buildroot}/%{_sysconfdir}/rpm/macros.%{namearch}
64ae36
mkdir -p %{buildroot}/%{_fmoddir}/%{namearch}
64ae36
mkdir -p %{buildroot}/%{python_sitearch}/%{libname}
64ae36
# Remove extraneous wrapper link libraries (bug 814798)
64ae36
#sed -i -e s/-ldl// -e s/-lhwloc// \
64ae36
#  %{buildroot}%{_libdir}/%{libname}/bin/orte_wrapper_script \
64ae36
#  %{buildroot}%{_libdir}/%{libname}/share/%{libname}/*-wrapper-data.txt
64ae36
64ae36
# openmpi 1.10.2 bumped the soname of libmpi_usempi.so from .1 to .5,
64ae36
# even though it only added new interfaces (MPI_Aint_{add,diff}),
64ae36
# which was a compatible change. So it's OK to add a compat symlink:
64ae36
ln -s libmpi_usempi.so.5 %{buildroot}/%{_libdir}/%{libname}/lib/libmpi_usempi.so.1
64ae36
64ae36
cd ..
64ae36
64ae36
%ifnarch ppc ppc64
64ae36
%global variant openmpi3
64ae36
%global libname %{variant}%{?_cc_name_suffix}
64ae36
%global namearch %{variant}-%{_arch}%{?_cc_name_suffix}
64ae36
64ae36
cd openmpi-%{ompi3ver}
64ae36
make install DESTDIR=%{buildroot}
64ae36
find %{buildroot}%{_libdir}/%{libname}/lib -name \*.la | xargs rm
64ae36
find %{buildroot}%{_mandir}/%{namearch} -type f | xargs gzip -9
64ae36
ln -s mpicc.1.gz %{buildroot}%{_mandir}/%{namearch}/man1/mpiCC.1.gz
64ae36
# Remove dangling symlink
64ae36
rm %{buildroot}%{_mandir}/%{namearch}/man1/mpiCC.1
64ae36
mkdir %{buildroot}%{_mandir}/%{namearch}/man{2,4,5,6,8,9,n}
64ae36
64ae36
# Make the environment-modules file
64ae36
mkdir -p %{buildroot}%{_sysconfdir}/modulefiles/mpi
64ae36
# Since we're doing our own substitution here, use our own definitions.
64ae36
sed 's#@LIBDIR@#%{_libdir}/%{libname}#;
64ae36
     s#@ETCDIR@#%{_sysconfdir}/%{namearch}#;
64ae36
     s#@FMODDIR@#%{_fmoddir}/%{libname}#;
64ae36
     s#@INCDIR@#%{_includedir}/%{namearch}#;
64ae36
     s#@MANDIR@#%{_mandir}/%{namearch}#;
64ae36
     s#@PY2SITEARCH@#%{python_sitearch}/%{libname}#;
64ae36
     s#@COMPILER@#%{variant}-'%{_arch}%{?_cc_name_suffix}'#g;
64ae36
     s#@SUFFIX@#'%{?_cc_name_suffix}'_%{variant}#g' \
64ae36
     <%{SOURCE301} \
64ae36
     >%{buildroot}%{_sysconfdir}/modulefiles/mpi/%{namearch}
64ae36
64ae36
# make the rpm config file
64ae36
install -Dpm 644 %{SOURCE302} %{buildroot}/%{macrosdir}/macros.%{namearch}
64ae36
64ae36
# Link the fortran module to proper location
64ae36
mkdir -p %{buildroot}%{_fmoddir}/%{libname}
64ae36
for mod in %{buildroot}%{_libdir}/%{libname}/lib/*.mod
64ae36
do
64ae36
  modname=$(basename $mod)
64ae36
  ln -s ../../../%{libname}/lib/${modname} %{buildroot}/%{_fmoddir}/%{libname}/
64ae36
done
64ae36
64ae36
mkdir -p %{buildroot}/%{python_sitearch}/%{libname}
64ae36
64ae36
# Link the pkgconfig files into the main namespace as well
64ae36
mkdir -p %{buildroot}%{_libdir}/pkgconfig
64ae36
cd %{buildroot}%{_libdir}/pkgconfig
64ae36
ln -s ../%{libname}/lib/pkgconfig/*.pc .
64ae36
cd -
64ae36
64ae36
cd ..
64ae36
%endif
64ae36
64ae36
%ifnarch s390 s390x
64ae36
%global variant compat-openmpi16
64ae36
%global libname %{variant}%{?_cc_name_suffix}
64ae36
%global namearch %{variant}-%{_arch}%{?_cc_name_suffix}
64ae36
64ae36
cd openmpi-1.6.4
64ae36
make install DESTDIR=%{buildroot}
64ae36
rm -fr %{buildroot}%{_libdir}/%{libname}/lib/pkgconfig
64ae36
find %{buildroot}%{_libdir}/%{libname}/lib -name \*.la | xargs rm
64ae36
find %{buildroot}%{_mandir}/%{namearch} -type f | xargs gzip -9
64ae36
ln -s mpicc.1.gz %{buildroot}%{_mandir}/%{namearch}/man1/mpiCC.1.gz
64ae36
rm -f %{buildroot}%{_mandir}/%{namearch}/man1/mpiCC.1
64ae36
rm -f %{buildroot}%{_mandir}/%{namearch}/man1/orteCC.1*
64ae36
rm -f %{buildroot}%{_libdir}/%{libname}/share/vampirtrace/doc/opari/lacsi01.ps.gz
64ae36
mkdir %{buildroot}%{_mandir}/%{namearch}/man{2,4,5,6,8,9,n}
64ae36
64ae36
# Make the environment-modules file
64ae36
mkdir -p %{buildroot}%{_sysconfdir}/modulefiles/mpi
64ae36
# Since we're doing our own substitution here, use our own definitions.
64ae36
sed 's#@LIBDIR@#'%{_libdir}/%{libname}'#g;s#@ETCDIR@#'%{_sysconfdir}/%{namearch}'#g;s#@FMODDIR@#'%{_fmoddir}/%{namearch}'#g;s#@INCDIR@#'%{_includedir}/%{namearch}'#g;s#@MANDIR@#'%{_mandir}/%{namearch}'#g;s#@PYSITEARCH@#'%{python_sitearch}/%{libname}'#g;s#@COMPILER@#%{variant}-'%{_arch}%{?_cc_name_suffix}'#g;s#@SUFFIX@#'%{?_cc_name_suffix}'_%{variant}#g' < %SOURCE1 > %{buildroot}%{_sysconfdir}/modulefiles/mpi/%{namearch}
64ae36
# make the rpm config file
64ae36
mkdir -p %{buildroot}/%{_sysconfdir}/rpm
64ae36
LIBNAME="%{libname}"
64ae36
# do not expand _arch
64ae36
sed "s#@MACRONAME@#${LIBNAME//-/_}#g;s#@MODULENAME@#%{variant}-%%{_arch}%{?_cc_name_suffix}#" < %SOURCE2 > %{buildroot}/%{_sysconfdir}/rpm/macros.%{namearch}
64ae36
mkdir -p %{buildroot}/%{_fmoddir}/%{namearch}
64ae36
mkdir -p %{buildroot}/%{python_sitearch}/%{libname}
64ae36
# Remove extraneous wrapper link libraries (bug 814798)
64ae36
sed -i -e s/-ldl// -e s/-lhwloc// \
64ae36
  %{buildroot}%{_libdir}/%{libname}/bin/orte_wrapper_script \
64ae36
  %{buildroot}%{_libdir}/%{libname}/share/%{name}/*-wrapper-data.txt
64ae36
cd ..
64ae36
%endif
64ae36
64ae36
%check
64ae36
make check
64ae36
cd ..
64ae36
64ae36
%ifnarch ppc ppc64
64ae36
cd openmpi-%{ompi3ver}
64ae36
make check
64ae36
cd ..
64ae36
%endif
64ae36
64ae36
%ifnarch s390 s390x
64ae36
cd openmpi-1.6.4
64ae36
make check
64ae36
cd ..
64ae36
%endif
64ae36
64ae36
%global variant openmpi
64ae36
%global libname %{variant}%{?_cc_name_suffix}
64ae36
%global namearch %{variant}-%{_arch}%{?_cc_name_suffix}
64ae36
64ae36
%files
64ae36
%dir %{_libdir}/%{name}
64ae36
%dir %{_sysconfdir}/%{namearch}
64ae36
%dir %{_libdir}/%{name}/bin
64ae36
%dir %{_libdir}/%{name}/lib
64ae36
%dir %{_libdir}/%{name}/lib/openmpi
64ae36
%dir %{_mandir}/%{namearch}
64ae36
%dir %{_mandir}/%{namearch}/man*
64ae36
%dir %{_fmoddir}/%{namearch}
64ae36
%dir %{_sysconfdir}/modulefiles/mpi
64ae36
%dir %{python_sitearch}/%{name}
64ae36
%config(noreplace) %{_sysconfdir}/%{namearch}/*
64ae36
%{_libdir}/%{name}/bin/mpi[er]*
64ae36
%{_libdir}/%{name}/bin/ompi*
64ae36
%{_libdir}/%{name}/bin/opari
64ae36
%{_libdir}/%{name}/bin/orte*
64ae36
%{_libdir}/%{name}/bin/oshmem_info
64ae36
%{_libdir}/%{name}/bin/oshrun
64ae36
%{_libdir}/%{name}/bin/otf*
64ae36
%{_libdir}/%{name}/bin/shmemrun
64ae36
%{_libdir}/%{name}/lib/*.so.*
64ae36
%{_mandir}/%{namearch}/man1/mpi[er]*
64ae36
%{_mandir}/%{namearch}/man1/ompi*
64ae36
%{_mandir}/%{namearch}/man1/orte[-dr_]*
64ae36
%{_mandir}/%{namearch}/man1/oshmem_info*
64ae36
%{_mandir}/%{namearch}/man1/oshrun*
64ae36
%{_mandir}/%{namearch}/man1/shmemrun*
64ae36
%{_mandir}/%{namearch}/man7/ompi*
64ae36
%{_mandir}/%{namearch}/man7/orte*
64ae36
%{_libdir}/%{name}/lib/openmpi/*
64ae36
%{_sysconfdir}/modulefiles/mpi/%{namearch}
64ae36
%dir %{_libdir}/%{name}/share
64ae36
%dir %{_libdir}/%{name}/share/openmpi
64ae36
%{_libdir}/%{name}/share/openmpi/doc
64ae36
%{_libdir}/%{name}/share/openmpi/amca-param-sets
64ae36
%{_libdir}/%{name}/share/openmpi/help*.txt
64ae36
%{_libdir}/%{name}/share/openmpi/mca-btl-openib-device-params.ini
64ae36
%{_libdir}/%{name}/share/openmpi/mca-coll-ml.config
64ae36
64ae36
%files devel
64ae36
%dir %{_includedir}/%{namearch}
64ae36
%dir %{_libdir}/%{name}/share/vampirtrace
64ae36
%{_libdir}/%{name}/bin/mpi[cCf]*
64ae36
%{_libdir}/%{name}/bin/opal_*
64ae36
%{_libdir}/%{name}/bin/orte[cCf]*
64ae36
%{_libdir}/%{name}/bin/osh[cf]*
64ae36
%{_libdir}/%{name}/bin/shmem[cf]*
64ae36
%{_libdir}/%{name}/bin/vt*
64ae36
%{_includedir}/%{namearch}/*
64ae36
%{_libdir}/%{name}/lib/*.so
64ae36
%{_libdir}/%{name}/lib/lib*.a
64ae36
%{_libdir}/%{name}/lib/mpi.mod
64ae36
%{_mandir}/%{namearch}/man1/mpi[cCf]*
64ae36
%{_mandir}/%{namearch}/man1/osh[cCf]*
64ae36
%{_mandir}/%{namearch}/man1/shmem[cCf]*
64ae36
%{_mandir}/%{namearch}/man1/opal_*
64ae36
%{_mandir}/%{namearch}/man3/*
64ae36
%{_mandir}/%{namearch}/man7/opal*
64ae36
%{_libdir}/%{name}/share/openmpi/openmpi-valgrind.supp
64ae36
%{_libdir}/%{name}/share/openmpi/*-wrapper-data.txt
64ae36
%{_libdir}/%{name}/share/vampirtrace/*
64ae36
%{_sysconfdir}/rpm/macros.%{namearch}
64ae36
64ae36
%ifnarch ppc ppc64
64ae36
%global variant openmpi3
64ae36
%global libname %{variant}%{?_cc_name_suffix}
64ae36
%global namearch %{variant}-%{_arch}%{?_cc_name_suffix}
64ae36
64ae36
%files -n openmpi3%{?_cc_name_suffix}
64ae36
%dir %{_libdir}/%{libname}
64ae36
%dir %{_sysconfdir}/%{namearch}
64ae36
%dir %{_libdir}/%{libname}/bin
64ae36
%dir %{_libdir}/%{libname}/lib
64ae36
%dir %{_libdir}/%{libname}/lib/openmpi
64ae36
%dir %{_libdir}/%{libname}/lib/pmix
64ae36
%dir %{_mandir}/%{namearch}
64ae36
%dir %{_mandir}/%{namearch}/man*
64ae36
%dir %{_fmoddir}/%{libname}
64ae36
%dir %{_sysconfdir}/modulefiles/mpi
64ae36
%dir %{python_sitearch}/%{libname}
64ae36
%config(noreplace) %{_sysconfdir}/%{namearch}/*
64ae36
%{_libdir}/%{libname}/bin/mpi[er]*
64ae36
%{_libdir}/%{libname}/bin/ompi*
64ae36
%{_libdir}/%{libname}/bin/orte[-dr_]*
64ae36
%{_libdir}/%{libname}/bin/oshmem_info
64ae36
%{_libdir}/%{libname}/bin/oshrun
64ae36
%{_libdir}/%{libname}/bin/prun
64ae36
%{_libdir}/%{libname}/bin/shmemrun
64ae36
%{_libdir}/%{libname}/bin/*.pl
64ae36
%{_libdir}/%{libname}/lib/*.so.*
64ae36
%{_mandir}/%{namearch}/man1/mpi[er]*
64ae36
%{_mandir}/%{namearch}/man1/ompi*
64ae36
%{_mandir}/%{namearch}/man1/orte[-dr_]*
64ae36
%{_mandir}/%{namearch}/man1/oshmem_info*
64ae36
%{_mandir}/%{namearch}/man1/oshrun*
64ae36
%{_mandir}/%{namearch}/man1/prun*
64ae36
%{_mandir}/%{namearch}/man1/shmemrun*
64ae36
%{_mandir}/%{namearch}/man7/orte*
64ae36
%{_mandir}/%{namearch}/man7/ompi*
64ae36
%{_mandir}/%{namearch}/man7/opal*
64ae36
%{_libdir}/%{libname}/lib/openmpi/*
64ae36
%{_libdir}/%{libname}/lib/pmix/*.so
64ae36
%{_sysconfdir}/modulefiles/mpi/%{namearch}
64ae36
%dir %{_libdir}/%{libname}/share
64ae36
%dir %{_libdir}/%{libname}/share/openmpi
64ae36
%dir %{_libdir}/%{libname}/share/pmix
64ae36
%{_libdir}/%{libname}/share/openmpi/amca-param-sets
64ae36
%{_libdir}/%{libname}/share/openmpi/help*.txt
64ae36
%{_libdir}/%{libname}/share/pmix/help*.txt
64ae36
%{_libdir}/%{libname}/share/openmpi/mca-btl-openib-device-params.ini
64ae36
64ae36
%files -n openmpi3%{?_cc_name_suffix}-devel
64ae36
%dir %{_includedir}/%{namearch}
64ae36
%{_libdir}/%{libname}/bin/mpi[cCf]*
64ae36
%{_libdir}/%{libname}/bin/opal_*
64ae36
%{_libdir}/%{libname}/bin/orte[cCf]*
64ae36
%{_libdir}/%{libname}/bin/osh[cCf]*
64ae36
%{_libdir}/%{libname}/bin/shmem[cCf]*
64ae36
%{_includedir}/%{namearch}/*
64ae36
%{_fmoddir}/%{libname}/
64ae36
%{_libdir}/%{libname}/lib/*.so
64ae36
%{_libdir}/%{libname}/lib/*.mod
64ae36
%{_libdir}/%{libname}/lib/pkgconfig/
64ae36
%{_libdir}/pkgconfig/*.pc
64ae36
%{_mandir}/%{namearch}/man1/mpi[cCf]*
64ae36
%{_mandir}/%{namearch}/man1/osh[cCf]*
64ae36
%{_mandir}/%{namearch}/man1/shmem[cCf]*
64ae36
%{_mandir}/%{namearch}/man1/opal_*
64ae36
%{_mandir}/%{namearch}/man3/*
64ae36
%{_libdir}/%{libname}/share/openmpi/openmpi-valgrind.supp
64ae36
%{_libdir}/%{libname}/share/pmix/pmix-valgrind.supp
64ae36
%{_libdir}/%{libname}/share/openmpi/*-wrapper-data.txt
64ae36
%{macrosdir}/macros.%{namearch}
64ae36
%endif
64ae36
64ae36
%ifnarch s390 s390x
64ae36
%global variant compat-openmpi16
64ae36
%global libname %{variant}%{?_cc_name_suffix}
64ae36
%global namearch %{variant}-%{_arch}%{?_cc_name_suffix}
64ae36
64ae36
%files -n compat-openmpi16%{?_cc_name_suffix}
64ae36
%dir %{_libdir}/%{libname}
64ae36
%dir %{_sysconfdir}/%{namearch}
64ae36
%dir %{_libdir}/%{libname}/bin
64ae36
%dir %{_libdir}/%{libname}/lib
64ae36
%dir %{_libdir}/%{libname}/lib/openmpi
64ae36
%dir %{_mandir}/%{namearch}
64ae36
%dir %{_mandir}/%{namearch}/man*
64ae36
%dir %{_fmoddir}/%{namearch}
64ae36
%dir %{_sysconfdir}/modulefiles/mpi
64ae36
%dir %{python_sitearch}/%{libname}
64ae36
%config(noreplace) %{_sysconfdir}/%{namearch}/*
64ae36
%{_libdir}/%{libname}/bin/mpi[er]*
64ae36
%{_libdir}/%{libname}/bin/ompi*
64ae36
#%{_libdir}/%{libname}/bin/opal-*
64ae36
%{_libdir}/%{libname}/bin/opari
64ae36
%{_libdir}/%{libname}/bin/orte*
64ae36
%{_libdir}/%{libname}/bin/otf*
64ae36
%{_libdir}/%{libname}/lib/*.so.*
64ae36
%{_mandir}/%{namearch}/man1/mpi[er]*
64ae36
%{_mandir}/%{namearch}/man1/ompi*
64ae36
#%{_mandir}/%{namearch}/man1/opal-*
64ae36
%{_mandir}/%{namearch}/man1/orte*
64ae36
%{_mandir}/%{namearch}/man7/ompi*
64ae36
%{_mandir}/%{namearch}/man7/orte*
64ae36
%{_libdir}/%{libname}/lib/openmpi/*
64ae36
%{_sysconfdir}/modulefiles/mpi/%{namearch}
64ae36
#%files common
64ae36
%dir %{_libdir}/%{libname}/share
64ae36
%dir %{_libdir}/%{libname}/share/openmpi
64ae36
%{_libdir}/%{libname}/share/openmpi/doc
64ae36
%{_libdir}/%{libname}/share/openmpi/amca-param-sets
64ae36
%{_libdir}/%{libname}/share/openmpi/help*.txt
64ae36
%{_libdir}/%{libname}/share/openmpi/mca-btl-openib-device-params.ini
64ae36
64ae36
%files -n compat-openmpi16%{?_cc_name_suffix}-devel
64ae36
%dir %{_includedir}/%{namearch}
64ae36
%dir %{_libdir}/%{libname}/share/vampirtrace
64ae36
%{_libdir}/%{libname}/bin/mpi[cCf]*
64ae36
%{_libdir}/%{libname}/bin/vt*
64ae36
%{_libdir}/%{libname}/bin/opal_*
64ae36
%{_includedir}/%{namearch}/*
64ae36
%{_libdir}/%{libname}/lib/*.so
64ae36
%{_libdir}/%{libname}/lib/lib*.a
64ae36
%{_libdir}/%{libname}/lib/mpi.mod
64ae36
%{_mandir}/%{namearch}/man1/mpi[cCf]*
64ae36
%{_mandir}/%{namearch}/man1/opal_*
64ae36
%{_mandir}/%{namearch}/man3/*
64ae36
%{_mandir}/%{namearch}/man7/opal*
64ae36
%{_libdir}/%{libname}/share/openmpi/openmpi-valgrind.supp
64ae36
%{_libdir}/%{libname}/share/openmpi/mpi*.txt
64ae36
%{_libdir}/%{libname}/share/openmpi/orte*.txt
64ae36
%{_libdir}/%{libname}/share/vampirtrace/*
64ae36
%{_sysconfdir}/rpm/macros.%{namearch}
64ae36
%endif
64ae36
64ae36
%changelog
64ae36
* Tue Apr 09 2019 Jarod Wilson <jarod@redhat.com> - 1.10.7-5
64ae36
- Build with UCX support enabled
64ae36
- Resolves #1586034
64ae36
64ae36
* Tue Feb 05 2019 Jarod Wilson <jarod@redhat.com> - 1.10.7-4
64ae36
- Fix compat-openmpi16 version number
64ae36
64ae36
* Fri Jan 25 2019 Jarod Wilson <jarod@redhat.com> - 1.10.7-3
64ae36
- Update openmpi3 sub-package to OpenMPI v3.1.3
64ae36
- Resolves: #1637247
64ae36
- Rebuild against latest opensm
64ae36
- Resolves: #1670688
64ae36
64ae36
* Wed Jun 13 2018 Jarod Wilson <jarod@redhat.com> - 1.10.7-2
64ae36
- Update openmpi3 sub-package to OpenMPI v3.0.2
64ae36
- Resolves: #1483570
64ae36
64ae36
* Fri Nov 03 2017 Michal Schmidt <mschmidt@redhat.com> - 1.10.7-1
64ae36
- Update to upstream release 1.10.7.
64ae36
- Add Open MPI 3.0.0 subpackage (openmpi3).
64ae36
- Resolves: #1452826
64ae36
64ae36
* Fri Sep 15 2017 Michal Schmidt <mschmidt@redhat.com> - 1.10.6-3
64ae36
- Fix openib segfault when not all devices are usable.
64ae36
- Resolves: #1475835
64ae36
64ae36
* Wed Apr 19 2017 Michal Schmidt <mschmidt@redhat.com> - 1.10.6-2
64ae36
- Add Chelsio T6 adapter device parameters.
64ae36
- Fix License tag format.
64ae36
- Resolves: #1435249
64ae36
64ae36
* Fri Mar 24 2017 Michal Schmidt <mschmidt@redhat.com> - 1.10.6-1
64ae36
- Update to upstream release 1.10.6.
64ae36
- Fix missing RPM provides.
64ae36
- Resolves: #1382800
64ae36
- Resolves: #1365792
64ae36
64ae36
* Thu Aug 04 2016 Michal Schmidt <mschmidt@redhat.com> - 1.10.3-3
64ae36
- Restore libmpi_usempi.so.1.
64ae36
- Related: #1273175
64ae36
64ae36
* Tue Jul 05 2016 Michal Schmidt <mschmidt@redhat.com> - 1.10.3-2
64ae36
- Rebuild against current libpsm2.
64ae36
- Related: #1273175
64ae36
64ae36
* Fri Jun 17 2016 Michal Schmidt <mschmidt@redhat.com> - 1.10.3-1
64ae36
- Update to upstream release 1.10.3.
64ae36
- Stop excluding psm2 MTL by default. The psm/psm2 conflict has been resolved.
64ae36
- Resolves: #1273175
64ae36
- Resolves: #1285292
64ae36
64ae36
* Thu Sep 03 2015 Michal Schmidt <mschmidt@redhat.com> - 1.10.0-10
64ae36
- Remove psm2 package variant. Instead use MCA exclusion using config file.
64ae36
- Related: #947311
64ae36
- Related: #1173305
64ae36
64ae36
* Tue Sep 01 2015 Michal Schmidt <mschmidt@redhat.com> - 1.10.0-8
64ae36
- Differentiate MPI_COMPILER and MPI_SUFFIX in the variants.
64ae36
- Related: #947311
64ae36
- Related: #1173305
64ae36
64ae36
* Mon Aug 31 2015 Michal Schmidt <mschmidt@redhat.com> - 1.10.0-6
64ae36
- Avoid macro expansion in old changelog entry.
64ae36
- Related: #947311
64ae36
- Related: #1173305
64ae36
64ae36
* Fri Aug 28 2015 Michal Schmidt <mschmidt@redhat.com> - 1.10.0-4
64ae36
- Disambiguate names of rpm macros among the built variants.
64ae36
- Use --with-verbs instead of the deprecated synonym --with-openib.
64ae36
- Related: #947311
64ae36
- Related: #1173305
64ae36
64ae36
* Thu Aug 27 2015 Michal Schmidt <mschmidt@redhat.com> - 1.10.0-3
64ae36
- Workaround psm vs psm2 conflict by having two separate packages.
64ae36
- Related: #947311
64ae36
- Related: #1173305
64ae36
64ae36
* Tue Aug 25 2015 Michal Schmidt <mschmidt@redhat.com> - 1.10.0-1
64ae36
- New upstream release v1.10.
64ae36
- Added 1.6 compat package.
64ae36
- Resolves: #947311
64ae36
- Resolves: #1173305
64ae36
64ae36
* Fri Sep 12 2014 Dan Horák <dhorak@redhat.com> - 1.6.4-5
64ae36
- add support for aarch64 (backport by Marcin Juszkiewicz)
64ae36
- Resolves: #1132244
64ae36
64ae36
* Tue Sep 9 2014 Dan Horák <dhorak@redhat.com> - 1.6.4-4
64ae36
- add support for ppc64le
64ae36
- Resolves: #1125635
64ae36
64ae36
* Fri Dec 27 2013 Daniel Mach <dmach@redhat.com> - 1.6.4-3
64ae36
- Mass rebuild 2013-12-27
64ae36
64ae36
* Mon Apr 8 2013 Jay Fenlason <fenlason@redhat.com> 1.6.4-2.1
64ae36
- Re-merge the fixes needed to build on RHEL-7.
64ae36
- Resolves: rhbz927802
64ae36
64ae36
* Sat Feb 23 2013 Orion Poplawski <orion@cora.nwra.com> 1.6.4-2
64ae36
- Exclude libopen-trace.* from requires
64ae36
64ae36
* Fri Feb 22 2013 Orion Poplawski <orion@cora.nwra.com> 1.6.4-1
64ae36
- Update to 1.6.4
64ae36
- Drop f90sover and arm-atomics patch fixed upstream
64ae36
64ae36
* Mon Jan 28 2013 Orion Poplawski <orion@cora.nwra.com> 1.6.3-7
64ae36
- Make __requires_exclude more specific so we don't exclude needed libs
64ae36
  (bug #905263)
64ae36
64ae36
* Sun Nov 18 2012 Peter Robinson <pbrobinson@fedoraproject.org> 1.6.3-6
64ae36
- Update atomics patch for ARM (thanks to Jon Masters)
64ae36
64ae36
* Sun Nov 11 2012 Peter Robinson <pbrobinson@fedoraproject.org> 1.6.3-5
64ae36
- Atomics patch to fix building on ARM (thanks to Jon Masters)
64ae36
64ae36
* Mon Nov 5 2012 Orion Poplawski <orion@cora.nwra.com> 1.6.3-4
64ae36
- Add patch to fix libmpi_f90.so version
64ae36
- Add patch to link tests with system libltdl
64ae36
- Run make check
64ae36
64ae36
* Fri Nov 2 2012 Orion Poplawski <orion@cora.nwra.com> 1.6.3-3
64ae36
- Set enable-opal-multi-threads for IB support
64ae36
64ae36
* Thu Nov 1 2012 Orion Poplawski <orion@cora.nwra.com> 1.6.3-2
64ae36
- Update rpm macros to use the new module location
64ae36
64ae36
* Wed Oct 31 2012 Orion Poplawski <orion@cora.nwra.com> 1.6.3-1
64ae36
- Update to 1.6.3
64ae36
64ae36
* Sat Oct 13 2012 Orion Poplawski <orion@cora.nwra.com> 1.6.2-1
64ae36
- Update to 1.6.2
64ae36
- Add BR torque-devel to enable torque support
64ae36
- Drop old module file location (bug #838467)
64ae36
64ae36
* Thu Sep 13 2012 Orion Poplawski <orion@cora.nwra.com> 1.6.1-2
64ae36
- Drop adding -fPIC, no longer needed
64ae36
- Set --disable-silent-rules for more verbose build logs
64ae36
- Don't add opt_*flags to the wrappers
64ae36
- Only use $RPM_OPT_FLAGS if not using the opt_*flags
64ae36
64ae36
* Thu Aug 23 2012 Orion Poplawski <orion@cora.nwra.com> 1.6.1-1
64ae36
- Update to 1.6.1
64ae36
- Drop hostfile patch applied upstream
64ae36
64ae36
* Fri Jul 20 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.6-3
64ae36
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
64ae36
64ae36
* Tue May 15 2012 Orion Poplawski <orion@cora.nwra.com> 1.6-2
64ae36
- Add patch from upstream to fix default hostfile location
64ae36
64ae36
* Tue May 15 2012 Orion Poplawski <orion@cora.nwra.com> 1.6-1
64ae36
- Update to 1.6
64ae36
- Drop arm patch, appears to be addressed upstream
64ae36
- Remove extraneous wrapper link libraries (bug 814798)
64ae36
64ae36
* Tue Apr  3 2012 Peter Robinson <pbrobinson@fedoraproject.org> - 1.5.5-1
64ae36
- Update to 1.5.5
64ae36
64ae36
* Tue Feb 28 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.5.4-5.1
64ae36
- Rebuilt for c++ ABI breakage
64ae36
64ae36
* Wed Feb 22 2012 Orion Poplawski <orion@cora.nwra.com> 1.5.4-4.1
64ae36
- Rebuild with hwloc 1.4
64ae36
64ae36
* Wed Feb 15 2012 Peter Robinson <pbrobinson@fedoraproject.org> - 1.5.4-4
64ae36
- Rebuild for hwloc soname bump
64ae36
64ae36
* Fri Jan 20 2012 Doug Ledford <dledford@redhat.com> - 1.5.4-3
64ae36
- Move modules file to mpi directory and make it conflict with any other
64ae36
  mpi module (bug #651074)
64ae36
64ae36
* Sun Jan 8 2012 Orion Poplawski <orion@cora.nwra.com> 1.5.4-2
64ae36
- Rebuild with gcc 4.7 (bug #772443)
64ae36
64ae36
* Thu Nov 17 2011 Orion Poplawski <orion@cora.nwra.com> 1.5.4-1
64ae36
- Update to 1.5.4
64ae36
- Drop dt-textrel patch fixed upstream
64ae36
- Fixup handling removed files (bug #722534)
64ae36
- Uses hwloc instead of plpa
64ae36
- Exclude private libraries from provides/requires (bug #741104)
64ae36
- Drop --enable-mpi-threads & --enable-openib-ibcm, no longer recognized
64ae36
64ae36
* Sat Jun 18 2011 Peter Robinson <pbrobinson@gmail.com> 1.5-4
64ae36
- Exclude ARM platforms due to current lack of "atomic primitives" on the platform
64ae36
64ae36
* Thu Mar 17 2011 Jay Fenlason <fenlason@redhat.com> 1.5-3
64ae36
- Add dt-textrel patch to close
64ae36
  Resolves: bz679489
64ae36
- Add memchecker and esmtp support
64ae36
  Resolves: bz647011
64ae36
64ae36
* Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.5-2
64ae36
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
64ae36
64ae36
* Mon Oct 18 2010 Jay Fenlason <fenlason@redhat.com> 1.5-1
64ae36
- set MANPATH in openmpi module file
64ae36
- Upgrade to 1.5
64ae36
- Workaround for rhbz#617766 appears to no longer be needed for 1.5
64ae36
- remove pkgconfig files in instal
64ae36
- Remove orteCC.1 dangling symlink
64ae36
- Adjust the files entries for share/openmpi/help* and share/openmpi/mca*
64ae36
- Adjust the files entries for share/openmpi/mpi*
64ae36
- Add files entry for share/openmpi/orte*.txt
64ae36
64ae36
* Sun Sep 05 2010 Dennis Gilmore <dennis@ausil.us> - 1.4.1-7
64ae36
- disable valgrind support on sparc arches
64ae36
64ae36
* Sat Jul 24 2010 David Malcolm <dmalcolm@redhat.com> - 1.4.1-6
64ae36
- workaround for rhbz#617766
64ae36
64ae36
* Wed Jul 21 2010 David Malcolm <dmalcolm@redhat.com> - 1.4.1-5
64ae36
- Rebuilt for https://fedoraproject.org/wiki/Features/Python_2.7/MassRebuild
64ae36
64ae36
* Mon Mar 29 2010 Jay Fenlason <fenlason@redhat.com> - 1.4.1-4
64ae36
- Update to fix licencing and packaging issues:
64ae36
  Use the system plpa and ltdl librarires rather than the ones in the tarball
64ae36
  Remove licence incompatible files from the tarball.
64ae36
- update module.in to prepend-path		PYTHONPATH
64ae36
64ae36
* Tue Mar 9 2010 Jay Fenlason <fenlason@redhat.com> - 1.4.1-3
64ae36
- remove the pkgconfig file completely like we did in RHEL.
64ae36
64ae36
* Tue Jan 26 2010 Jay Fenlason <fenlason@redhat.com> - 1.4.1-2
64ae36
- BuildRequires: python
64ae36
64ae36
* Tue Jan 26 2010 Jay Fenlason <fenlason@redhat.com> - 1.4.1-1
64ae36
- New upstream version, which includes the changeset_r22324 patch.
64ae36
- Correct a typo in the Source0 line in this spec file.
64ae36
64ae36
* Fri Jan 15 2010 Doug Ledford <dledford@redhat.com> - 1.4-4
64ae36
- Fix an issue with usage of _cc_name_suffix that cause a broken define in
64ae36
  our module file
64ae36
64ae36
* Fri Jan 15 2010 Doug Ledford <dledford@redhat.com> - 1.4-3
64ae36
- Fix pkgconfig file substitution
64ae36
- Bump version so we are later than the equivalent version from Red Hat
64ae36
  Enterprise Linux
64ae36
64ae36
* Wed Jan 13 2010 Doug Ledford <dledford@redhat.com> - 1.4-1
64ae36
- Update to latest upstream stable version
64ae36
- Add support for libibcm usage
64ae36
- Enable sge support via configure options since it's no longer on by default
64ae36
- Add patch to resolve allreduce issue (bz538199)
64ae36
- Remove no longer needed patch for Chelsio cards
64ae36
64ae36
* Tue Sep 22 2009 Jay Fenlason <fenlason@redhat.com> - 1.3.3-6
64ae36
- Create and own man* directories for use by dependent packages.
64ae36
64ae36
* Wed Sep 16 2009 Jay Fenlason <fenlason@redhat.com> - 1.3.3-5
64ae36
- Move the module file from %%{_datadir}/Modules/modulefiles/%%{namearch} to
64ae36
  %%{_sysconfdir}/modulefiles/%%{namearch} where it belongs.
64ae36
- Have the -devel subpackage own the man1 and man7 directories for completeness.
64ae36
- Add a blank line before the clean section.
64ae36
- Remove --enable-mpirun-prefix-by-default from configure.
64ae36
64ae36
* Wed Sep 9 2009 Jay Fenlason <fenlason@redhat.com> - 1.3.3-4
64ae36
- Modify packaging to conform to
64ae36
  https://fedoraproject.org/wiki/PackagingDrafts/MPI (bz521334).
64ae36
- remove --with-ft=cr from configure, as it was apparently causing problems
64ae36
  for some people.
64ae36
- Add librdmacm-devel and librdmacm to BuildRequires (related bz515565).
64ae36
- Add openmpi-bz515567.patch to add support for the latest Chelsio device IDs
64ae36
  (related bz515567).
64ae36
- Add exclude-arch (s390 s390x) because we don't have required -devel packages
64ae36
  there.
64ae36
64ae36
* Sat Jul 25 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.3.3-3
64ae36
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
64ae36
64ae36
* Tue Jul 21 2009 Doug Ledford <dledford@redhat.com> - 1.3.3-2
64ae36
- Add MPI_BIN and MPI_LIB to the modules file (related bz511099)
64ae36
64ae36
* Tue Jul 21 2009 Doug Ledford <dledford@redhat.com> - 1.3.3-1
64ae36
- Make sure all created dirs are owned (bz474677)
64ae36
- Fix loading of pkgconfig file (bz476844)
64ae36
- Resolve file conflict between us and libotf (bz496131)
64ae36
- Resolve dangling symlinks issue (bz496909)
64ae36
- Resolve unexpanded %%{mode} issues (bz496911)
64ae36
- Restore -devel subpackage (bz499851)
64ae36
- Make getting the default openmpi devel environment easier (bz504357)
64ae36
- Make the -devel package pull in the base package (bz459458)
64ae36
- Make it easier to use alternative compilers to build package (bz246484)
64ae36
64ae36
* Sat Jul 18 2009 Jussi Lehtola <jussilehtola@fedoraproject.org> - 1.3.1-4
64ae36
- Add Provides: openmpi-devel to fix other package builds in rawhide.
64ae36
64ae36
* Fri May 08 2009 Lubomir Rintel <lkundrak@v3.sk> - 1.3.1-3
64ae36
- Treat i586 the same way as i386
64ae36
64ae36
* Wed Apr 22 2009 Doug Ledford <dledford@redhat.com> - 1.3.1-2
64ae36
- fixed broken update
64ae36
- Resolves: bz496909, bz496131, bz496911
64ae36
64ae36
* Tue Apr 14 2009 Tom "spot" Callaway <tcallawa@redhat.com> - 1.3.1-1
64ae36
- update to 1.3.1, cleanup alternatives, spec, make new vt subpackage
64ae36
64ae36
* Thu Feb 26 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.2.4-3
64ae36
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
64ae36
64ae36
* Mon Feb 18 2008 Fedora Release Engineering <rel-eng@fedoraproject.org> - 1.2.4-2
64ae36
- Autorebuild for GCC 4.3
64ae36
64ae36
* Wed Oct 17 2007 Doug Ledford <dledford@redhat.com> - 1.2.4-1
64ae36
- Update to 1.2.4 upstream version
64ae36
- Build against libtorque
64ae36
- Pass a valid mode to open
64ae36
- Resolves: bz189441, bz265141
64ae36
64ae36
* Tue Aug 28 2007 Fedora Release Engineering <rel-eng at fedoraproject dot org> - 1.2.3-5
64ae36
- Rebuild for selinux ppc32 issue.
64ae36
64ae36
* Mon Jul 16 2007 Doug Ledford <dledford@redhat.com> - 1.2.3-4
64ae36
- Fix a directory permission problem on the base openmpi directories
64ae36
64ae36
* Thu Jul 12 2007 Florian La Roche <laroche@redhat.com> - 1.2.3-3
64ae36
- requires alternatives for various sub-rpms
64ae36
64ae36
* Mon Jul 02 2007 Doug Ledford <dledford@redhat.com> - 1.2.3-2
64ae36
- Fix dangling symlink issue caused by a bad macro usage
64ae36
- Resolves: bz246450
64ae36
64ae36
* Wed Jun 27 2007 Doug Ledford <dledford@redhat.com> - 1.2.3-1
64ae36
- Update to latest upstream version
64ae36
- Fix file ownership on -libs package
64ae36
- Take a swing at solving the multi-install compatibility issues
64ae36
64ae36
* Mon Feb 19 2007 Doug Ledford <dledford@redhat.com> - 1.1.1-7
64ae36
- Bump version to be at least as high as the RHEL4U5 openmpi
64ae36
- Integrate fixes made in RHEL4 openmpi into RHEL5 (fix a multilib conflict
64ae36
  for the openmpi.module file by moving from _datadir to _libdir, make sure
64ae36
  all sed replacements have the g flag so they replace all instances of
64ae36
  the marker per line, not just the first, and add a %%defattr tag to the
64ae36
  files section of the -libs package to avoid install errors about
64ae36
  brewbuilder not being a user or group)
64ae36
- Resolves: bz229298
64ae36
64ae36
* Wed Jan 17 2007 Doug Ledford <dledford@redhat.com> - 1.1.1-5
64ae36
- Remove the FORTIFY_SOURCE and stack protect options
64ae36
- Related: bz213075
64ae36
64ae36
* Fri Oct 20 2006 Doug Ledford <dledford@redhat.com> - 1.1.1-4
64ae36
- Bump and build against the final openib-1.1 package
64ae36
64ae36
* Wed Oct 18 2006 Doug Ledford <dledford@redhat.com> - 1.1.1-3
64ae36
- Fix an snprintf length bug in opal/util/cmd_line.c
64ae36
- RESOLVES: rhbz#210714
64ae36
64ae36
* Wed Oct 18 2006 Doug Ledford <dledford@redhat.com> - 1.1.1-2
64ae36
- Bump and build against openib-1.1-0.pre1.1 instead of 1.0
64ae36
64ae36
* Tue Oct 17 2006 Doug Ledford <dledford@redhat.com> - 1.1.1-1
64ae36
- Update to upstream 1.1.1 version
64ae36
64ae36
* Fri Oct 13 2006 Doug Ledford <dledford@redhat.com> - 1.1-7
64ae36
- ia64 can't take -m64 on the gcc command line, so don't set it there
64ae36
64ae36
* Wed Oct 11 2006 Doug Ledford <dledford@redhat.com> - 1.1-6
64ae36
- Bump rev to match fc6 rev
64ae36
- Fixup some issue with alternatives support
64ae36
- Split the 32bit and 64bit libs ld.so.conf.d files into two files so
64ae36
  multilib or single lib installs both work properly
64ae36
- Put libs into their own package
64ae36
- Add symlinks to /usr/share/openmpi/bin%%{mode} so that opal_wrapper-%%{mode}
64ae36
  can be called even if it isn't the currently selected default method in
64ae36
  the alternatives setup (opal_wrapper needs to be called by mpicc, mpic++,
64ae36
  etc. in order to determine compile mode from argv[0]).
64ae36
64ae36
* Sun Aug 27 2006 Doug Ledford <dledford@redhat.com> - 1.1-4
64ae36
- Make sure the post/preun scripts only add/remove alternatives on initial
64ae36
  install and final removal, otherwise don't touch.
64ae36
64ae36
* Fri Aug 25 2006 Doug Ledford <dledford@redhat.com> - 1.1-3
64ae36
- Don't ghost the mpi.conf file as that means it will get removed when
64ae36
  you remove 1 out of a number of alternatives based packages
64ae36
- Put the .mod file in -devel
64ae36
64ae36
* Mon Aug  7 2006 Doug Ledford <dledford@redhat.com> - 1.1-2
64ae36
- Various lint cleanups
64ae36
- Switch to using the standard alternatives mechanism instead of a home
64ae36
  grown one
64ae36
64ae36
* Wed Aug  2 2006 Doug Ledford <dledford@redhat.com> - 1.1-1
64ae36
- Upgrade to 1.1
64ae36
- Build with Infiniband support via openib
64ae36
64ae36
* Mon Jun 12 2006 Jason Vas Dias <jvdias@redhat.com> - 1.0.2-1
64ae36
- Upgrade to 1.0.2
64ae36
64ae36
* Wed Feb 15 2006 Jason Vas Dias <jvdias@redhat.com> - 1.0.1-1
64ae36
- Import into Fedora Core
64ae36
- Resolve LAM clashes 
64ae36
64ae36
* Wed Jan 25 2006 Orion Poplawski <orion@cora.nwra.com> - 1.0.1-2
64ae36
- Use configure options to install includes and libraries
64ae36
- Add ld.so.conf.d file to find libraries
64ae36
- Add -fPIC for x86_64
64ae36
64ae36
* Tue Jan 24 2006 Orion Poplawski <orion@cora.nwra.com> - 1.0.1-1
64ae36
- 1.0.1
64ae36
- Use alternatives
64ae36
64ae36
* Sat Nov 19 2005 Ed Hill <ed@eh3.com> - 1.0-2
64ae36
- fix lam conflicts
64ae36
64ae36
* Fri Nov 18 2005 Ed Hill <ed@eh3.com> - 1.0-1
64ae36
- initial specfile created
64ae36