Merged update from upstream sources

This is an automated DistroBaker update from upstream sources.
If you do not know what this is about or would like to opt out,
contact the OSCI team.

Source: https://src.fedoraproject.org/rpms/openmpi.git#8fc779b59b264ddd141f811bbb22d2e83ee3e517
This commit is contained in:
DistroBaker 2021-01-29 07:39:46 +00:00
parent a954425021
commit 51ea11f059
5 changed files with 1797 additions and 72 deletions

1
.gitignore vendored
View File

@ -53,3 +53,4 @@ openmpi-1.4.1-RH.tar.bz2
/openmpi-4.0.4rc1.tar.bz2 /openmpi-4.0.4rc1.tar.bz2
/openmpi-4.0.4.tar.bz2 /openmpi-4.0.4.tar.bz2
/openmpi-4.0.5.tar.bz2 /openmpi-4.0.5.tar.bz2
/openmpi-4.1.0.tar.bz2

1682
8322.patch Normal file

File diff suppressed because it is too large Load Diff

25
8348.patch Normal file
View File

@ -0,0 +1,25 @@
From 838568da9fce85b4555b0e0cbd899c8e8ef75696 Mon Sep 17 00:00:00 2001
From: George Bosilca <bosilca@icl.utk.edu>
Date: Wed, 6 Jan 2021 13:30:40 -0500
Subject: [PATCH] A started generalized request should be marked as pending.
Fixes #8340
Signed-off-by: George Bosilca <bosilca@icl.utk.edu>
(cherry picked from commit 434a2515f8aab11f505b2fca0b3d8cc41e24cef2)
---
ompi/request/grequest.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/ompi/request/grequest.c b/ompi/request/grequest.c
index c895b4232b6..02affd642aa 100644
--- a/ompi/request/grequest.c
+++ b/ompi/request/grequest.c
@@ -163,6 +163,7 @@ int ompi_grequest_start(
greq->greq_free.c_free = gfree_fn;
greq->greq_cancel.c_cancel = gcancel_fn;
greq->greq_base.req_status = ompi_status_empty;
+ greq->greq_base.req_complete = REQUEST_PENDING;
*request = &greq->greq_base;
return OMPI_SUCCESS;

View File

@ -1,17 +1,3 @@
%global _hardened_build 1
# We only compile with gcc, but other people may want other compilers.
# Set the compiler here.
%global opt_cc gcc
# Optional CFLAGS to use with the specific compiler...gcc doesn't need any,
# so uncomment and define to use
#global opt_cflags
%global opt_cxx g++
#global opt_cxxflags
%global opt_f77 gfortran
#global opt_fflags
%global opt_fc gfortran
#global opt_fcflags
# Optional name suffix to use...we leave it off when compiling with gcc, but # Optional name suffix to use...we leave it off when compiling with gcc, but
# for other compiled versions to install side by side, it will need a # for other compiled versions to install side by side, it will need a
# suffix in order to keep the names from conflicting. # suffix in order to keep the names from conflicting.
@ -39,70 +25,85 @@
%bcond_without rdma %bcond_without rdma
%endif %endif
Name: openmpi%{?_cc_name_suffix} # Run autogen - needed for some patches
Version: 4.0.5 # For Patch0
Release: 2%{?dist} %bcond_without autogen
Summary: Open Message Passing Interface
License: BSD and MIT and Romio Name: openmpi%{?_cc_name_suffix}
URL: http://www.open-mpi.org/ Version: 4.1.0
Release: 5%{?dist}
Summary: Open Message Passing Interface
License: BSD and MIT and Romio
URL: http://www.open-mpi.org/
# We can't use %%{name} here because of _cc_name_suffix # We can't use %%{name} here because of _cc_name_suffix
Source0: https://www.open-mpi.org/software/ompi/v4.0/downloads/openmpi-%{version}.tar.bz2 Source0: https://www.open-mpi.org/software/ompi/v4.1/downloads/openmpi-%{version}.tar.bz2
Source1: openmpi.module.in Source1: openmpi.module.in
Source2: openmpi.pth.py2 Source2: openmpi.pth.py2
Source3: openmpi.pth.py3 Source3: openmpi.pth.py3
Source4: macros.openmpi Source4: macros.openmpi
BuildRequires: gcc-c++ # Fix AVX library linkage
BuildRequires: gcc-gfortran Patch0: https://patch-diff.githubusercontent.com/raw/open-mpi/ompi/pull/8322.patch
BuildRequires: valgrind-devel # Fix generalized requests (mpi4py test failure)
Patch1: https://patch-diff.githubusercontent.com/raw/open-mpi/ompi/pull/8348.patch
BuildRequires: gcc-c++
BuildRequires: gcc-gfortran
BuildRequires: make
%if %{with autogen}
BuildRequires: libtool
BuildRequires: perl(Data::Dumper)
BuildRequires: perl(File::Find)
%endif
BuildRequires: valgrind-devel
%if %{with rdma} %if %{with rdma}
BuildRequires: opensm-devel > 3.3.0 BuildRequires: opensm-devel > 3.3.0
BuildRequires: rdma-core-devel BuildRequires: rdma-core-devel
%endif %endif
# Doesn't compile: # Doesn't compile:
# vt_dyn.cc:958:28: error: 'class BPatch_basicBlockLoop' has no member named 'getLoopHead' # vt_dyn.cc:958:28: error: 'class BPatch_basicBlockLoop' has no member named 'getLoopHead'
# loop->getLoopHead()->getStartAddress(), loop_stmts ); # loop->getLoopHead()->getStartAddress(), loop_stmts );
#BuildRequires: dyninst-devel #BuildRequires: dyninst-devel
BuildRequires: hwloc-devel BuildRequires: hwloc-devel
# So configure can find lstopo # So configure can find lstopo
BuildRequires: hwloc-gui BuildRequires: hwloc-gui
BuildRequires: java-devel BuildRequires: java-devel
# Old libevent causes issues # Old libevent causes issues
%if !0%{?el7} %if !0%{?el7}
BuildRequires: libevent-devel BuildRequires: libevent-devel
%endif %endif
BuildRequires: libfabric-devel BuildRequires: libfabric-devel
%ifnarch s390 s390x %ifnarch s390 s390x
BuildRequires: papi-devel BuildRequires: papi-devel
%endif %endif
BuildRequires: orangefs-devel BuildRequires: orangefs-devel
BuildRequires: perl-generators BuildRequires: perl-generators
BuildRequires: perl-interpreter BuildRequires: perl-interpreter
BuildRequires: perl(Getopt::Long) BuildRequires: perl(Getopt::Long)
BuildRequires: pmix-devel BuildRequires: pmix-devel
BuildRequires: python%{python3_pkgversion}-devel BuildRequires: python%{python3_pkgversion}-devel
%ifarch x86_64 %ifarch x86_64
BuildRequires: infinipath-psm-devel BuildRequires: infinipath-psm-devel
BuildRequires: libpsm2-devel BuildRequires: libpsm2-devel
%endif %endif
%if %{with ucx} %if %{with ucx}
BuildRequires: ucx-devel BuildRequires: ucx-devel
%endif %endif
BuildRequires: zlib-devel BuildRequires: zlib-devel
%if !0%{?el7} %if !0%{?el7}
BuildRequires: rpm-mpi-hooks BuildRequires: rpm-mpi-hooks
%endif %endif
Provides: mpi Provides: mpi
%if 0%{?rhel} %if 0%{?rhel}
# Need this for /etc/profile.d/modules.sh # Need this for /etc/profile.d/modules.sh
Requires: environment-modules Requires: environment-modules
%endif %endif
Requires: environment(modules) Requires: environment(modules)
# openmpi currently requires ssh to run # openmpi currently requires ssh to run
# https://svn.open-mpi.org/trac/ompi/ticket/4228 # https://svn.open-mpi.org/trac/ompi/ticket/4228
Requires: openssh-clients Requires: openssh-clients
# Private openmpi libraries # Private openmpi libraries
%global __provides_exclude_from %{_libdir}/openmpi/lib/(lib(mca|ompi|open-(pal|rte|trace))|openmpi/).*.so %global __provides_exclude_from %{_libdir}/openmpi/lib/(lib(mca|ompi|open-(pal|rte|trace))|openmpi/).*.so
@ -133,17 +134,17 @@ Requires: (python(abi) = %{python3_version} if python3)
Contains development headers and libraries for openmpi. Contains development headers and libraries for openmpi.
%package java %package java
Summary: Java library Summary: Java library
Requires: %{name} = %{version}-%{release} Requires: %{name} = %{version}-%{release}
Requires: java-headless Requires: java-headless
%description java %description java
Java library. Java library.
%package java-devel %package java-devel
Summary: Java development files for openmpi Summary: Java development files for openmpi
Requires: %{name}-java = %{version}-%{release} Requires: %{name}-java = %{version}-%{release}
Requires: java-devel Requires: java-devel
%description java-devel %description java-devel
Contains development wrapper for compiling Java with openmpi. Contains development wrapper for compiling Java with openmpi.
@ -154,19 +155,19 @@ Contains development wrapper for compiling Java with openmpi.
%if %{with python2} %if %{with python2}
%package -n python2-openmpi %package -n python2-openmpi
Summary: OpenMPI support for Python 2 Summary: OpenMPI support for Python 2
BuildRequires: python2-devel BuildRequires: python2-devel
Requires: %{name} = %{version}-%{release} Requires: %{name} = %{version}-%{release}
Requires: python(abi) = %{python2_version} Requires: python(abi) = %{python2_version}
%description -n python2-openmpi %description -n python2-openmpi
OpenMPI support for Python 2. OpenMPI support for Python 2.
%endif %endif
%package -n python%{python3_pkgversion}-openmpi %package -n python%{python3_pkgversion}-openmpi
Summary: OpenMPI support for Python 3 Summary: OpenMPI support for Python 3
Requires: %{name} = %{version}-%{release} Requires: %{name} = %{version}-%{release}
Requires: python(abi) = %{python3_version} Requires: python(abi) = %{python3_version}
%description -n python%{python3_pkgversion}-openmpi %description -n python%{python3_pkgversion}-openmpi
OpenMPI support for Python 3. OpenMPI support for Python 3.
@ -174,8 +175,13 @@ OpenMPI support for Python 3.
%prep %prep
%autosetup -p1 %autosetup -p1
%if %{with autogen}
./autogen.pl --force
%endif
%build %build
%set_build_flags
./configure --prefix=%{_libdir}/%{name} \ ./configure --prefix=%{_libdir}/%{name} \
--mandir=%{_mandir}/%{namearch} \ --mandir=%{_mandir}/%{namearch} \
--includedir=%{_includedir}/%{namearch} \ --includedir=%{_includedir}/%{namearch} \
@ -193,12 +199,6 @@ OpenMPI support for Python 3.
--with-libevent=external \ --with-libevent=external \
--with-pmix=external \ --with-pmix=external \
%endif %endif
CC=%{opt_cc} CXX=%{opt_cxx} \
LDFLAGS='%{__global_ldflags}' \
CFLAGS="%{?opt_cflags} %{!?opt_cflags:$RPM_OPT_FLAGS}" \
CXXFLAGS="%{?opt_cxxflags} %{!?opt_cxxflags:$RPM_OPT_FLAGS}" \
FC=%{opt_fc} FCFLAGS="%{?opt_fcflags} %{!?opt_fcflags:$RPM_OPT_FLAGS}"
# --with-contrib-vt-flags='CXXFLAGS="-I%{_includedir}/dyninst -L%{_libdir}/dyninst"' \
%make_build V=1 %make_build V=1
@ -281,6 +281,7 @@ make check
%{_libdir}/%{name}/bin/shmemrun %{_libdir}/%{name}/bin/shmemrun
%endif %endif
%{_libdir}/%{name}/lib/*.so.40* %{_libdir}/%{name}/lib/*.so.40*
%{_libdir}/%{name}/lib/libmca_common_ofi.so.10*
%{_libdir}/%{name}/lib/libmca*.so.41* %{_libdir}/%{name}/lib/libmca*.so.41*
%{_libdir}/%{name}/lib/libmca*.so.50* %{_libdir}/%{name}/lib/libmca*.so.50*
%if 0%{?el7} %if 0%{?el7}
@ -362,6 +363,22 @@ make check
%changelog %changelog
* Thu Jan 28 2021 Orion Poplawski <orion@nwra.com> - 4.1.0-5
- Add upstream patch for generalized requests
* Thu Jan 28 2021 Orion Poplawski <orion@nwra.com> - 4.1.0-4
- Add upstream patch to fix AVX library linkage
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 4.1.0-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Sun Jan 24 2021 Orion Poplawski <orion@nwra.com> - 4.1.0-2
- Use set_build_flags macro
- Drop old opt_ macros
* Sun Jan 24 2021 Orion Poplawski <orion@nwra.com> - 4.1.0-1
- Update to 4.1.0
* Wed Sep 23 2020 Orion Poplawski <orion@nwra.com> - 4.0.5-2 * Wed Sep 23 2020 Orion Poplawski <orion@nwra.com> - 4.0.5-2
- Rebuild for libevent 2.1.12 - Rebuild for libevent 2.1.12

View File

@ -1 +1 @@
SHA512 (openmpi-4.0.5.tar.bz2) = b7a1a5ccfc0eaa0f0504ff770b550480f7ae6727fa891e3310d9340a0d844a2ceddf62c2e59efd047ab9416b24c829919bbccd29606ca0e0d7a0569dad800011 SHA512 (openmpi-4.1.0.tar.bz2) = eaf086ab4929ce5a9a3e867c8315bf802ff4dc75d3f05d740e22dfd97803a4559212dacbe06920d42ac6644f46057eb6980cccf5a8b0a7df9c5bdf5bffc0b3a6