Correct the configure for pmix

Correct the slurm_pmix_soname patch
This commit is contained in:
Philip Kovacs 2019-06-19 20:41:50 -04:00
parent d2a9192464
commit 24291ca62c
2 changed files with 18 additions and 19 deletions

View File

@ -12,7 +12,7 @@
Name: slurm
Version: 19.05.0
Release: 3%{?dist}
Release: 4%{?dist}
Summary: Simple Linux Utility for Resource Management
License: GPLv2 and BSD
URL: https://slurm.schedmd.com/
@ -234,7 +234,6 @@ automake --no-force
--prefix=%{_prefix} \
--sysconfdir=%{_sysconfdir}/%{name} \
--with-pam_dir=%{_libdir}/security \
--with-pmix \
--enable-shared \
--enable-x11 \
--disable-static \
@ -731,6 +730,10 @@ rm -f %{buildroot}%{perl_archlib}/perllocal.pod
%systemd_postun_with_restart slurmdbd.service
%changelog
* Wed Jun 19 2019 Philip Kovacs <pkdevel@yahoo.com> - 19.05.0-4
- Correct the configure for pmix
- Correct the slurm_pmix_soname patch
* Wed Jun 19 2019 Philip Kovacs <pkdevel@yahoo.com> - 19.05.0-3
- Stop using autotools macros that were removed from rpm

View File

@ -1,27 +1,23 @@
diff --git a/src/plugins/mpi/pmix/mpi_pmix.c b/src/plugins/mpi/pmix/mpi_pmix.c
index 1a0998d213..c8241056bc 100644
index bbb947616c..65ec00ad73 100644
--- a/src/plugins/mpi/pmix/mpi_pmix.c
+++ b/src/plugins/mpi/pmix/mpi_pmix.c
@@ -79,10 +79,13 @@ const char plugin_name[] = "PMIx plugin";
#if (HAVE_PMIX_VER == 1)
const char plugin_type[] = "mpi/pmix_v1";
+const char libpmix_soname[] = "libpmix.so.1";
#elif (HAVE_PMIX_VER == 2)
const char plugin_type[] = "mpi/pmix_v2";
+const char libpmix_soname[] = "libpmix.so.2";
#elif (HAVE_PMIX_VER == 3)
const char plugin_type[] = "mpi/pmix_v3";
+const char libpmix_soname[] = "libpmix.so.3";
#endif
const uint32_t plugin_version = SLURM_VERSION_NUMBER;
@@ -105,7 +108,7 @@ static void *_libpmix_open(void)
@@ -105,10 +105,17 @@ static void *_libpmix_open(void)
#elif defined PMIXP_V2_LIBPATH
xstrfmtcat(full_path, "%s/", PMIXP_V2_LIBPATH);
#endif
- xstrfmtcat(full_path, "libpmix.so");
+ xstrfmtcat(full_path, libpmix_soname);
+ xstrfmtcat(full_path, "libpmix.so.2");
lib_plug = dlopen(full_path, RTLD_LAZY | RTLD_GLOBAL);
xfree(full_path);
+ if (!lib_plug) {
+ dlerror();
+ xstrfmtcat(full_path, "libpmix.so.1");
+ lib_plug = dlopen(full_path, RTLD_LAZY | RTLD_GLOBAL);
+ xfree(full_path);
+ }
+
if (lib_plug && (HAVE_PMIX_VER != pmixp_lib_get_version())) {
PMIXP_ERROR("pmi/pmix: incorrect PMIx library version loaded %d was loaded, required %d version",
pmixp_lib_get_version(), (int)HAVE_PMIX_VER);