Merge branch '3.1'

Conflicts:
	.gitignore
	openmpi.spec
	sources
This commit is contained in:
Orion Poplawski 2019-02-13 18:48:04 -07:00
commit 00d72c5615
4 changed files with 51 additions and 132 deletions

1
.gitignore vendored
View File

@ -40,3 +40,4 @@ openmpi-1.4.1-RH.tar.bz2
/openmpi-2.1.5.tar.bz2
/openmpi-2.1.6rc1.tar.bz2
/openmpi-2.1.6.tar.bz2
/openmpi-3.1.3.tar.bz2

View File

@ -1,103 +0,0 @@
--- openmpi-2.1.1/test/class/Makefile.am 2017-05-10 08:41:36.000000000 -0700
+++ openmpi-2.1.1/test/class/Makefile.am.new 2017-08-24 09:07:12.539374461 -0700
@@ -95,11 +95,14 @@
$(top_builddir)/test/support/libsupport.a
opal_lifo_DEPENDENCIES = $(opal_lifo_LDADD)
-opal_fifo_SOURCES = opal_fifo.c
-opal_fifo_LDADD = \
- $(top_builddir)/opal/lib@OPAL_LIB_PREFIX@open-pal.la \
- $(top_builddir)/test/support/libsupport.a
-opal_fifo_DEPENDENCIES = $(opal_fifo_LDADD)
+# Disabled due to:
+# https://github.com/open-mpi/ompi/issues/2526
+# https://github.com/open-mpi/ompi/issues/2966
+#opal_fifo_SOURCES = opal_fifo.c
+#opal_fifo_LDADD = \
+# $(top_builddir)/opal/lib@OPAL_LIB_PREFIX@open-pal.la \
+# $(top_builddir)/test/support/libsupport.a
+#opal_fifo_DEPENDENCIES = $(opal_fifo_LDADD)
clean-local:
rm -f opal_bitmap_test_out.txt opal_hash_table_test_out.txt opal_proc_table_test_out.txt
--- openmpi-2.1.1/test/class/Makefile.in 2017-05-10 09:01:13.000000000 -0700
+++ openmpi-2.1.1/test/class/Makefile.in.new 2017-08-24 09:07:12.539374461 -0700
@@ -115,7 +115,7 @@
opal_hash_table$(EXEEXT) opal_proc_table$(EXEEXT) \
opal_tree$(EXEEXT) opal_list$(EXEEXT) \
opal_value_array$(EXEEXT) opal_pointer_array$(EXEEXT) \
- opal_lifo$(EXEEXT) opal_fifo$(EXEEXT)
+ opal_lifo$(EXEEXT)
subdir = test/class
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/c_get_alignment.m4 \
@@ -411,8 +411,6 @@
am__v_lt_1 =
am_opal_bitmap_OBJECTS = opal_bitmap.$(OBJEXT)
opal_bitmap_OBJECTS = $(am_opal_bitmap_OBJECTS)
-am_opal_fifo_OBJECTS = opal_fifo.$(OBJEXT)
-opal_fifo_OBJECTS = $(am_opal_fifo_OBJECTS)
am_opal_hash_table_OBJECTS = opal_hash_table.$(OBJEXT)
opal_hash_table_OBJECTS = $(am_opal_hash_table_OBJECTS)
am_opal_lifo_OBJECTS = opal_lifo.$(OBJEXT)
@@ -462,12 +460,12 @@
am__v_CCLD_0 = @echo " CCLD " $@;
am__v_CCLD_1 =
SOURCES = $(ompi_rb_tree_SOURCES) $(opal_bitmap_SOURCES) \
- $(opal_fifo_SOURCES) $(opal_hash_table_SOURCES) \
+ $(opal_hash_table_SOURCES) \
$(opal_lifo_SOURCES) $(opal_list_SOURCES) \
$(opal_pointer_array_SOURCES) $(opal_proc_table_SOURCES) \
$(opal_tree_SOURCES) $(opal_value_array_SOURCES)
DIST_SOURCES = $(ompi_rb_tree_SOURCES) $(opal_bitmap_SOURCES) \
- $(opal_fifo_SOURCES) $(opal_hash_table_SOURCES) \
+ $(opal_hash_table_SOURCES) \
$(opal_lifo_SOURCES) $(opal_list_SOURCES) \
$(opal_pointer_array_SOURCES) $(opal_proc_table_SOURCES) \
$(opal_tree_SOURCES) $(opal_value_array_SOURCES)
@@ -1900,12 +1898,6 @@
$(top_builddir)/test/support/libsupport.a
opal_lifo_DEPENDENCIES = $(opal_lifo_LDADD)
-opal_fifo_SOURCES = opal_fifo.c
-opal_fifo_LDADD = \
- $(top_builddir)/opal/lib@OPAL_LIB_PREFIX@open-pal.la \
- $(top_builddir)/test/support/libsupport.a
-
-opal_fifo_DEPENDENCIES = $(opal_fifo_LDADD)
all: all-am
.SUFFIXES:
@@ -1957,10 +1949,6 @@
@rm -f opal_bitmap$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(opal_bitmap_OBJECTS) $(opal_bitmap_LDADD) $(LIBS)
-opal_fifo$(EXEEXT): $(opal_fifo_OBJECTS) $(opal_fifo_DEPENDENCIES) $(EXTRA_opal_fifo_DEPENDENCIES)
- @rm -f opal_fifo$(EXEEXT)
- $(AM_V_CCLD)$(LINK) $(opal_fifo_OBJECTS) $(opal_fifo_LDADD) $(LIBS)
-
opal_hash_table$(EXEEXT): $(opal_hash_table_OBJECTS) $(opal_hash_table_DEPENDENCIES) $(EXTRA_opal_hash_table_DEPENDENCIES)
@rm -f opal_hash_table$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(opal_hash_table_OBJECTS) $(opal_hash_table_LDADD) $(LIBS)
@@ -1997,7 +1985,6 @@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ompi_rb_tree.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/opal_bitmap.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/opal_fifo.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/opal_hash_table.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/opal_lifo.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/opal_list.Po@am__quote@
@@ -2291,13 +2278,6 @@
$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
- "$$tst" $(AM_TESTS_FD_REDIRECT)
-opal_fifo.log: opal_fifo$(EXEEXT)
- @p='opal_fifo$(EXEEXT)'; \
- b='opal_fifo'; \
- $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
- --log-file $$b.log --trs-file $$b.trs \
- $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
.test.log:
@p='$<'; \

View File

@ -20,24 +20,19 @@
%global macrosdir %(d=%{_rpmconfigdir}/macros.d; [ -d $d ] || d=%{_sysconfdir}/rpm; echo $d)
Name: openmpi%{?_cc_name_suffix}
Version: 2.1.6
Version: 3.1.3
Release: 1%{?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
Source0: https://www.open-mpi.org/software/ompi/v2.1/downloads/openmpi-%{version}.tar.bz2
Source0: https://www.open-mpi.org/software/ompi/v3.1/downloads/openmpi-%{version}.tar.bz2
Source1: openmpi.module.in
Source2: openmpi.pth.py2
Source3: openmpi.pth.py3
Source4: macros.openmpi
# Only for ppc64le
# https://github.com/open-mpi/ompi/issues/2526
# https://github.com/open-mpi/ompi/issues/2966
Patch0: openmpi-2.1.1-disable-fifo-test.patch
BuildRequires: gcc-c++
BuildRequires: gcc-gfortran
%ifnarch s390 s390x
@ -55,6 +50,10 @@ BuildRequires: hwloc-devel
# So configure can find lstopo
BuildRequires: hwloc-gui
BuildRequires: java-devel
# Old libevent causes issues
%if !0%{?el7}
BuildRequires: libevent-devel
%endif
%ifnarch s390 s390x
BuildRequires: libfabric-devel
BuildRequires: papi-devel
@ -64,23 +63,26 @@ BuildRequires: perl(Getopt::Long)
BuildRequires: pmix-devel
BuildRequires: python2
BuildRequires: python2-devel
BuildRequires: python3-devel
BuildRequires: python%{python3_pkgversion}-devel
%ifarch x86_64
BuildRequires: infinipath-psm-devel
BuildRequires: libpsm2-devel
%endif
BuildRequires: torque-devel
BuildRequires: zlib-devel
%if !0%{?el7}
BuildRequires: rpm-mpi-hooks
%endif
Provides: mpi
%if 0%{?rhel}
# Need this for /etc/profile.d/modules.sh
Requires: environment-modules
%endif
Requires: environment(modules)
# openmpi currently requires ssh to run
# https://svn.open-mpi.org/trac/ompi/ticket/4228
Requires: openssh-clients
# We have problems using the system libevent - openmpi's is modified
# https://bugzilla.redhat.com/show_bug.cgi?id=1235044
Provides: bundled(libevent) = 2.0.22
# Private openmpi libraries
%global __provides_exclude_from %{_libdir}/openmpi/lib/(lib(mca|ompi|open-(pal|rte|trace))|openmpi/).*.so
@ -99,7 +101,9 @@ researchers. For more information, see http://www.open-mpi.org/ .
Summary: Development files for openmpi
Requires: %{name} = %{version}-%{release}, gcc-gfortran
Provides: mpi-devel
%if !0%{?el7}
Requires: rpm-mpi-hooks
%endif
%description devel
Contains development headers and libraries for openmpi.
@ -135,19 +139,16 @@ Requires: %{name} = %{version}-%{release}
%description -n python2-openmpi
OpenMPI support for Python 2.
%package -n python3-openmpi
%package -n python%{python3_pkgversion}-openmpi
Summary: OpenMPI support for Python 3
Requires: %{name} = %{version}-%{release}
%description -n python3-openmpi
%description -n python%{python3_pkgversion}-openmpi
OpenMPI support for Python 3.
%prep
%setup -q
%ifarch ppc64le
%patch0 -p1
%endif
%setup -q -n openmpi-%{version}
%build
./configure --prefix=%{_libdir}/%{name} \
@ -167,21 +168,21 @@ OpenMPI support for Python 3.
--enable-memchecker \
%endif
--with-hwloc=/usr \
%if !0%{?el7}
--with-libevent=external \
--with-pmix=external \
%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}"
# This fails - https://github.com/open-mpi/ompi/issues/2616
# --with-hwloc=external \
# We cannot use external pmix without external libevent
# --with-pmix=external \
# --with-contrib-vt-flags='CXXFLAGS="-I%{_includedir}/dyninst -L%{_libdir}/dyninst"' \
make %{?_smp_mflags} V=1
%make_build V=1
%install
make install DESTDIR=%{buildroot}
%make_install
find %{buildroot}%{_libdir}/%{name}/lib -name \*.la | xargs rm
find %{buildroot}%{_mandir}/%{namearch} -type f | xargs gzip -9
ln -s mpicc.1.gz %{buildroot}%{_mandir}/%{namearch}/man1/mpiCC.1.gz
@ -235,7 +236,7 @@ install -pDm0644 %{SOURCE3} %{buildroot}/%{python3_sitearch}/openmpi.pth
make check
%files
%license LICENSE opal/mca/event/libevent2022/libevent/LICENSE
%license LICENSE
%dir %{_libdir}/%{name}
%dir %{_sysconfdir}/%{namearch}
%dir %{_libdir}/%{name}/bin
@ -249,14 +250,23 @@ make check
%{_libdir}/%{name}/bin/orte[-dr_]*
%{_libdir}/%{name}/bin/oshmem_info
%{_libdir}/%{name}/bin/oshrun
%{_libdir}/%{name}/bin/prun
%{_libdir}/%{name}/bin/shmemrun
%{_libdir}/%{name}/lib/*.so.*
%{_libdir}/%{name}/lib/*.so.40*
%{_libdir}/%{name}/lib/libmca*.so.41*
%{_libdir}/%{name}/lib/libmca*.so.50*
%if 0%{?el7}
%{_libdir}/%{name}/lib/pmix/
%endif
%{_mandir}/%{namearch}/man1/mpi[er]*
%{_mandir}/%{namearch}/man1/ompi*
%{_mandir}/%{namearch}/man1/orte[-dr_]*
%{_mandir}/%{namearch}/man1/oshmem_info*
%{_mandir}/%{namearch}/man1/oshrun*
%{_mandir}/%{namearch}/man1/prun*
%{_mandir}/%{namearch}/man1/shmemrun*
%{_mandir}/%{namearch}/man7/ompi_*
%{_mandir}/%{namearch}/man7/opal_*
%{_mandir}/%{namearch}/man7/orte*
%{_libdir}/%{name}/lib/openmpi/*
%{_datadir}/modulefiles/mpi/
@ -267,14 +277,19 @@ make check
%ifnarch s390
%{_libdir}/%{name}/share/openmpi/mca-btl-openib-device-params.ini
%endif
%if 0%{?el7}
%{_libdir}/%{name}/share/pmix/
%endif
%files devel
%dir %{_includedir}/%{namearch}
%{_libdir}/%{name}/bin/aggregate_profile.pl
%{_libdir}/%{name}/bin/mpi[cCf]*
%{_libdir}/%{name}/bin/opal_*
%{_libdir}/%{name}/bin/orte[cCf]*
%{_libdir}/%{name}/bin/osh[cf]*
%{_libdir}/%{name}/bin/shmem[cf]*
%{_libdir}/%{name}/bin/osh[cCf]*
%{_libdir}/%{name}/bin/profile2mat.pl
%{_libdir}/%{name}/bin/shmem[cCf]*
%{_includedir}/%{namearch}/*
%{_fmoddir}/%{name}/
%{_libdir}/%{name}/lib/*.so
@ -304,12 +319,18 @@ make check
%dir %{python2_sitearch}/%{name}
%{python2_sitearch}/openmpi.pth
%files -n python3-openmpi
%files -n python%{python3_pkgversion}-openmpi
%dir %{python3_sitearch}/%{name}
%{python3_sitearch}/openmpi.pth
%changelog
* Wed Feb 13 2019 Orion Poplawski <orion@nwra.com> - 3.1.3-1
- Update to 3.1.3
- Drop ppc64le patch fixed upstream
- Use external libevent and pmix, except on EL7
- Fix EPEL7 builds
* Sat Feb 2 2019 Orion Poplawski <orion@nwra.com> - 2.1.6-1
- Update to 2.1.6

View File

@ -1 +1 @@
SHA512 (openmpi-2.1.6.tar.bz2) = f552f47961e040476e7d2949cdd3e5a0b5ad74bea2b6532608117ec893473a160cd368251d1f439fd773f4846950857baf939e7b3586bac2a099495f7bc0e349
SHA512 (openmpi-3.1.3.tar.bz2) = 700821df676de5f85ce2793298242dcaea73f585f89540e30999792a568f193545a9f9b2bcb3ea22effa3bf14744531c4eb5fc4c84a8d7bbe5e5fdd76ab3a04a