summary refs log tree commit diff
path: root/pkgs/servers/computing/slurm
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/slurm
parent8f5df7519902c2c9770dee8a6672f1690bbdbe33 (diff)
downloadnixpkgs-93d8aa7da92d75c213a249ce0e9124f776581c13.tar
nixpkgs-93d8aa7da92d75c213a249ce0e9124f776581c13.tar.gz
nixpkgs-93d8aa7da92d75c213a249ce0e9124f776581c13.tar.bz2
nixpkgs-93d8aa7da92d75c213a249ce0e9124f776581c13.tar.lz
nixpkgs-93d8aa7da92d75c213a249ce0e9124f776581c13.tar.xz
nixpkgs-93d8aa7da92d75c213a249ce0e9124f776581c13.tar.zst
nixpkgs-93d8aa7da92d75c213a249ce0e9124f776581c13.zip
slurm: add external pmix support
Diffstat (limited to 'pkgs/servers/computing/slurm')
-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 1ec807f0bf8..d93c1371959 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 00000000000..21c2197c3ff
--- /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