From 8f0431bdfde97edc4762737a65f194c893afdfa4f19ae6573bd64b7c14c3e2bf Mon Sep 17 00:00:00 2001 From: Nicolas Morey-Chaisemartin Date: Tue, 27 Jun 2017 08:56:46 +0000 Subject: [PATCH] Accepting request 506398 from home:NMoreyChaisemartin:branches:science:HPC - Change install dir to allow multiple flavor to be installed at the same time - Fix bsc#1045955 - Fix mvapich2-psm package to use libpsm (TrueScale) - Add mvapich2-psm2 package using libpsm2 (OmniPath) OBS-URL: https://build.opensuse.org/request/show/506398 OBS-URL: https://build.opensuse.org/package/show/science:HPC/mvapich2?expand=0&rev=12 --- _multibuild | 1 + mvapich2.changes | 9 +++++++++ mvapich2.spec | 45 +++++++++++++++++++++------------------------ 3 files changed, 31 insertions(+), 24 deletions(-) diff --git a/_multibuild b/_multibuild index 829839f..23c6f50 100644 --- a/_multibuild +++ b/_multibuild @@ -1,4 +1,5 @@ testsuite psm + psm2 diff --git a/mvapich2.changes b/mvapich2.changes index 92461e6..39c8704 100644 --- a/mvapich2.changes +++ b/mvapich2.changes @@ -1,3 +1,12 @@ +------------------------------------------------------------------- +Mon Jun 26 12:24:30 UTC 2017 - nmoreychaisemartin@suse.com + +- Change install dir to allow multiple flavor to be installed + at the same time +- Fix bsc#1045955 + - Fix mvapich2-psm package to use libpsm (TrueScale) + - Add mvapich2-psm2 package using libpsm2 (OmniPath) + ------------------------------------------------------------------- Mon Jun 26 09:37:42 UTC 2017 - nmoreychaisemartin@suse.com diff --git a/mvapich2.spec b/mvapich2.spec index 6b2db47..a2f940a 100644 --- a/mvapich2.spec +++ b/mvapich2.spec @@ -27,9 +27,11 @@ %define testsuite 1 %endif -%define _prefix /usr/%_lib/mpi/gcc/mvapich2 +%define module_name mvapich2%{pack_suff} +%define _prefix /usr/%_lib/mpi/gcc/%{module_name} %define _libexecdir %{_prefix}/%{_lib} %define _benchmarkdir %{_libexecdir}/osu-micro-benchmarks +%define _moduledir /usr/share/modules/gnu-%{module_name} Name: mvapich2%{pack_suff} Summary: OSU MVAPICH2 MPI package @@ -69,15 +71,13 @@ BuildRequires: xorg-x11-devel %if "%{flavor}" == "psm" ExclusiveArch: %ix86 x86_64 BuildRequires: infinipath-psm-devel -%ifarch x86_64 -BuildRequires: libpsm2-devel %endif +%if "%{flavor}" == "psm2" +ExclusiveArch: x86_64 +BuildRequires: libpsm2-devel %endif Requires: mpi-selector -# Meta provides to make sure all flavour conflicts -Provides: mvapich2-internal -Conflicts: otherproviders(mvapich2-internal) %description This is an MPI-3 implementation which includes all MPI-1 features. It @@ -94,13 +94,10 @@ Requires: libibverbs-devel Requires: librdmacm-devel %if "%{flavor}" == "psm" Requires: infinipath-psm-devel -%ifarch x86_64 +%endif +%if "%{flavor}" == "psm2" Requires: libpsm2-devel %endif -%endif -# Meta provides to make sure all flavour conflicts -Provides: mvapich2-internal-devel -Conflicts: otherproviders(mvapich2-internal-devel) %description devel This is an MPI-2 implementation which includes all MPI-1 features. It @@ -112,9 +109,6 @@ is based on MPICH2 and MVICH. Summary: OSU MVAPICH2 MPI package - static libraries Group: Development/Libraries/Parallel Requires: %{name}-devel = %{version} -# Meta provides to make sure all flavour conflicts -Provides: mvapich2-internal-devel-static -Conflicts: otherproviders(mvapich2-internal-devel-static) %description devel-static This is an MPI-3 implementation which includes all MPI-1 and MPI-2 features. It @@ -135,6 +129,11 @@ cp /usr/share/automake*/config.* . --sysconfdir=%_sysconfdir --libexecdir=%{_libexecdir} \ %if "%{flavor}" == "psm" --with-device=ch3:psm \ + --with-psm=/usr \ +%endif +%if "%{flavor}" == "psm2" + --with-device=ch3:psm \ + --with-psm2=/usr \ %endif --without-mpe make %{?_smp_mflags} V=1 @@ -167,9 +166,9 @@ install -m 0644 CHANGE* %{buildroot}%{_datadir}/doc/mvapich2 rm -rf %{buildroot}/* %else -mkdir -p %{buildroot}/usr/share/modules/gnu-mvapich2 +mkdir -p %{buildroot}%{_moduledir} -cat << EOF > %{buildroot}/usr/share/modules/gnu-mvapich2/%{version} +cat << EOF > %{buildroot}%{_moduledir}/%{version} #%%Module proc ModulesHelp { } { global dotversion @@ -186,7 +185,7 @@ prepend-path LD_LIBRARY_PATH %{_libdir} EOF -cat << EOF > %{buildroot}/usr/share/modules/gnu-mvapich2/.version +cat << EOF > %{buildroot}%{_moduledir}/.version #%%Module1.0 set ModulesVersion "%{version}" @@ -195,27 +194,25 @@ EOF %post /sbin/ldconfig /usr/bin/mpi-selector \ - --register %{name}-%{version} \ + --register %{name}%{pack_suff}-%{version} \ --source-dir %{_bindir} \ --yes %postun /sbin/ldconfig -/usr/bin/mpi-selector --unregister %{name}-%{version} --yes --silent +/usr/bin/mpi-selector --unregister %{name}%{pack_suff}-%{version} --yes --silent %files %defattr(-, root, root) %doc %{_datadir}/doc %dir /usr/%_lib/mpi %dir /usr/%_lib/mpi/gcc -%dir /usr/%_lib/mpi/gcc/mvapich2 %dir %{_prefix} %dir %{_bindir} %dir %{_datadir} -%dir /usr/share/modules -%if "%{flavor}" == "" %dir %{_includedir} -%endif +%dir /usr/share/modules +%dir %{_moduledir} %dir %{_mandir} %dir %{_mandir}/man1 %dir %{_mandir}/man3 @@ -223,7 +220,7 @@ EOF %dir %{_libexecdir} %{_bindir}/* %{_libexecdir}/osu-micro-benchmarks -/usr/share/modules/gnu-mvapich2 +%{_moduledir} %{_mandir}/man1/* %{_libdir}/*.so.*