summaryrefslogtreecommitdiffstats
path: root/pkgs/servers/computing
diff options
context:
space:
mode:
authorMarkus Kowalewski <markus.kowalewski@gmail.com>2020-07-02 13:21:50 +0200
committerMarkus Kowalewski <markus.kowalewski@gmail.com>2020-07-02 15:39:44 +0200
commit93d8aa7da92d75c213a249ce0e9124f776581c13 (patch)
tree734d0698db56b24feeef126182477b77b3e9dc91 /pkgs/servers/computing
parent8f5df7519902c2c9770dee8a6672f1690bbdbe33 (diff)
slurm: add external pmix support
Diffstat (limited to 'pkgs/servers/computing')
-rw-r--r--pkgs/servers/computing/slurm/default.nix5
-rw-r--r--pkgs/servers/computing/slurm/pmix-configure.patch13
2 files changed, 18 insertions, 0 deletions
diff --git a/pkgs/servers/computing/slurm/default.nix b/pkgs/servers/computing/slurm/default.nix
index 1ec807f0bf82..d93c13719597 100644
--- a/pkgs/servers/computing/slurm/default.nix
+++ b/pkgs/servers/computing/slurm/default.nix
@@ -2,6 +2,7 @@
, python, munge, perl, pam, zlib, shadow, coreutils
, ncurses, libmysqlclient, gtk2, lua, hwloc, numactl
, readline, freeipmi, xorg, lz4, rdma-core, nixosTests
+, pmix
# enable internal X11 support via libssh2
, enableX11 ? true
}:
@@ -26,6 +27,8 @@ stdenv.mkDerivation rec {
# increase string length to allow for full
# path of 'echo' in nix store
./common-env-echo.patch
+ # Required for configure to pick up the right dlopen path
+ ./pmix-configure.patch
];
prePatch = ''
@@ -46,6 +49,7 @@ stdenv.mkDerivation rec {
curl python munge perl pam zlib
libmysqlclient ncurses gtk2 lz4 rdma-core
lua hwloc numactl readline freeipmi shadow.su
+ pmix
] ++ stdenv.lib.optionals enableX11 [ xorg.xauth ];
configureFlags = with stdenv.lib;
@@ -56,6 +60,7 @@ stdenv.mkDerivation rec {
"--with-zlib=${zlib}"
"--with-ofed=${rdma-core}"
"--sysconfdir=/etc/slurm"
+ "--with-pmix=${pmix}"
] ++ (optional (gtk2 == null) "--disable-gtktest")
++ (optional (!enableX11) "--disable-x11");
diff --git a/pkgs/servers/computing/slurm/pmix-configure.patch b/pkgs/servers/computing/slurm/pmix-configure.patch
new file mode 100644
index 000000000000..21c2197c3ff1
--- /dev/null
+++ b/pkgs/servers/computing/slurm/pmix-configure.patch
@@ -0,0 +1,13 @@
+diff --git a/configure b/configure
+index 1cf53bc..ab68441 100755
+--- a/configure
++++ b/configure
+@@ -21207,7 +21207,7 @@ rm -f conftest.err conftest.i conftest.$ac_ext
+ as_fn_error $? "error processing $x_ac_cv_pmix_libdir: PMIx v3.x was already found in one of the previous paths" "$LINENO" 5
+ fi
+ _x_ac_pmix_v3_found="1"
+- PMIX_V3_CPPFLAGS="-I$x_ac_cv_pmix_dir/include"
++ PMIX_V3_CPPFLAGS="-I$x_ac_cv_pmix_dir/include -DPMIXP_V3_LIBPATH=\\\"$x_ac_cv_pmix_libdir\\\""
+ if test "$ac_with_rpath" = "yes"; then
+ PMIX_V3_LDFLAGS="-Wl,-rpath -Wl,$x_ac_cv_pmix_libdir -L$x_ac_cv_pmix_libdir"
+ else