diff options
author | Ludovic Courtès <ludovic.courtes@inria.fr> | 2022-03-24 16:12:56 +0100 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2022-03-29 11:26:58 +0200 |
commit | 2ae2a15b075dd3c8d34f0c2e3af279e192931f45 (patch) | |
tree | 54fdad055727c83395e42e70c8fe07da93bb773b /gnu/packages/parallel.scm | |
parent | 779acb0ba1067b27d9ae32d0e4f9ad525bcda213 (diff) | |
download | guix-2ae2a15b075dd3c8d34f0c2e3af279e192931f45.tar guix-2ae2a15b075dd3c8d34f0c2e3af279e192931f45.tar.gz |
gnu: slurm: Install libpmi2.
* gnu/packages/parallel.scm (slurm)[source](snippet): Let PMI2 through.
[arguments]: In phase 'install-libpmi', install "contribs/pmi2".
[license]: Add 'non-copyleft'.
Diffstat (limited to 'gnu/packages/parallel.scm')
-rw-r--r-- | gnu/packages/parallel.scm | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/gnu/packages/parallel.scm b/gnu/packages/parallel.scm index 5f84fb6777..d7c3586606 100644 --- a/gnu/packages/parallel.scm +++ b/gnu/packages/parallel.scm @@ -182,19 +182,20 @@ when jobs finish.") ;; <https://lists.gnu.org/archive/html/guix-devel/2016-02/msg00534.html> ;; there are non-free bits under contribs/, though it's not ;; clear which ones. libpmi is clearly free (it used to be - ;; under src/api/), so remove all of contribs/ except - ;; contribs/pmi/. + ;; under src/api/) and so is pmi2 (lax non-copyleft + ;; license), so remove all of contribs/ except pmi and pmi2. (substitute* "configure.ac" (("^[[:space:]]+contribs/(.*)$" all directory) - (if (and (string-prefix? "pmi" directory) - (not (string-prefix? "pmi2" directory))) + (if (string-prefix? "pmi" directory) all ""))) (rename-file "contribs/pmi" "tmp-pmi") + (rename-file "contribs/pmi2" "tmp-pmi2") (delete-file-recursively "contribs") (mkdir "contribs") - (rename-file "tmp-pmi" "contribs/pmi"))))) + (rename-file "tmp-pmi" "contribs/pmi") + (rename-file "tmp-pmi2" "contribs/pmi2"))))) ;; FIXME: More optional inputs could be added, ;; in particular mysql and gtk+. (inputs (list freeipmi @@ -231,7 +232,10 @@ when jobs finish.") (add-after 'install 'install-libpmi (lambda _ ;; Open MPI expects libpmi to be provided by Slurm so install it. - (invoke "make" "install" "-C" "contribs/pmi")))))) + (invoke "make" "install" "-C" "contribs/pmi") + + ;; Others expect pmi2. + (invoke "make" "install" "-C" "contribs/pmi2")))))) (home-page "https://slurm.schedmd.com/") (synopsis "Workload manager for cluster computing") (description @@ -246,6 +250,8 @@ by managing a queue of pending work.") license:isc ; src/common/strlcpy.c license:lgpl2.1+ ; hilbert.[ch], src/common/slurm_time.h license:zlib ; src/common/strnatcmp.c + (license:non-copyleft ;contribs/pmi2, Argonne Natl. Lab. + "https://github.com/SchedMD/slurm/blob/master/contribs/pmi2/COPYRIGHT") license:gpl2+)))) ; the rest, often with OpenSSL exception ;; The SLURM client/daemon protocol and file format changes from time to time |