Message ID | 20220324152615.30374-1-ludo@gnu.org |
---|---|
State | Accepted |
Headers | show |
Series | [bug#54547] gnu: slurm: Install libpmi2. | expand |
Hello, Le 24/03/2022 à 16:26, Ludovic Courtès a écrit : > From: Ludovic Courtès <ludovic.courtes@inria.fr> > > * gnu/packages/parallel.scm (slurm)[source](snippet): Let PMI2 through. > [arguments]: In phase 'install-libpmi', install "contribs/pmi2". > [license]: Add 'non-copyleft'. > --- > gnu/packages/parallel.scm | 18 ++++++++++++------ > 1 file changed, 12 insertions(+), 6 deletions(-) > > Hi! > > Previously, we were erroneously excluding libpmi2. It’s actually free, > under a lax non-copyleft license (full text below): > > https://github.com/SchedMD/slurm/blob/master/contribs/pmi2/COPYRIGHT > > That library is in Debian: > > https://packages.debian.org/sid/libpmi2-0-dev > > Tested with slurm 20.11, 20.02, 19, and 18 as currently available. > > Objections? > > Thanks, > Ludo’. > > Full license text: > > --8<---------------cut here---------------start------------->8--- > > COPYRIGHT > > The following is a notice of limited availability of the code, and disclaimer > which must be included in the prologue of the code and in all source listings > of the code. > > Copyright Notice > + 2002 University of Chicago > > Permission is hereby granted to use, reproduce, prepare derivative works, and > to redistribute to others. This software was authored by: > > Mathematics and Computer Science Division > Argonne National Laboratory, Argonne IL 60439 > > (and) > > Department of Computer Science > University of Illinois at Urbana-Champaign > > > GOVERNMENT LICENSE > > Portions of this material resulted from work developed under a U.S. > Government Contract and are subject to the following license: the Government > is granted for itself and others acting on its behalf a paid-up, nonexclusive, > irrevocable worldwide license in this computer software to reproduce, prepare > derivative works, and perform publicly and display publicly. > > DISCLAIMER > > This computer code material was prepared, in part, as an account of work > sponsored by an agency of the United States Government. Neither the United > States, nor the University of Chicago, nor any of their employees, makes any > warranty express or implied, or assumes any legal liability or responsibility > for the accuracy, completeness, or usefulness of any information, apparatus, > product, or process disclosed, or represents that its use would not infringe > privately owned rights. > --8<---------------cut here---------------end--------------->8--- > > > 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 @@ (define-public slurm > ;; <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 @@ (define-public slurm > (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 @@ (define-public slurm > 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 Tested, and works as expected: slurm/pmi2.h is detected by other packages which require it.
Hi, Philippe SWARTVAGHER <philippe.swartvagher@inria.fr> skribis: > Tested, and works as expected: slurm/pmi2.h is detected by other > packages which require it. Pushed as 2ae2a15b075dd3c8d34f0c2e3af279e192931f45, thanks for checking! Ludo’.
Hi,
On Thu, 24 Mar 2022 at 16:33, Ludovic Courtès <ludo@gnu.org> wrote:
> Objections?
No. :-)
LGTM.
Cheers,
simon
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 @@ (define-public slurm ;; <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 @@ (define-public slurm (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 @@ (define-public slurm 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
From: Ludovic Courtès <ludovic.courtes@inria.fr> * gnu/packages/parallel.scm (slurm)[source](snippet): Let PMI2 through. [arguments]: In phase 'install-libpmi', install "contribs/pmi2". [license]: Add 'non-copyleft'. --- gnu/packages/parallel.scm | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) Hi! Previously, we were erroneously excluding libpmi2. It’s actually free, under a lax non-copyleft license (full text below): https://github.com/SchedMD/slurm/blob/master/contribs/pmi2/COPYRIGHT That library is in Debian: https://packages.debian.org/sid/libpmi2-0-dev Tested with slurm 20.11, 20.02, 19, and 18 as currently available. Objections? Thanks, Ludo’. Full license text: --8<---------------cut here---------------start------------->8--- COPYRIGHT The following is a notice of limited availability of the code, and disclaimer which must be included in the prologue of the code and in all source listings of the code. Copyright Notice + 2002 University of Chicago Permission is hereby granted to use, reproduce, prepare derivative works, and to redistribute to others. This software was authored by: Mathematics and Computer Science Division Argonne National Laboratory, Argonne IL 60439 (and) Department of Computer Science University of Illinois at Urbana-Champaign GOVERNMENT LICENSE Portions of this material resulted from work developed under a U.S. Government Contract and are subject to the following license: the Government is granted for itself and others acting on its behalf a paid-up, nonexclusive, irrevocable worldwide license in this computer software to reproduce, prepare derivative works, and perform publicly and display publicly. DISCLAIMER This computer code material was prepared, in part, as an account of work sponsored by an agency of the United States Government. Neither the United States, nor the University of Chicago, nor any of their employees, makes any warranty express or implied, or assumes any legal liability or responsibility for the accuracy, completeness, or usefulness of any information, apparatus, product, or process disclosed, or represents that its use would not infringe privately owned rights. --8<---------------cut here---------------end--------------->8---