unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
From: "Ludovic Courtès" <ludo@gnu.org>
To: 54547@debbugs.gnu.org
Cc: "Ludovic Courtès" <ludovic.courtes@inria.fr>,
	"Philippe Swartvagher" <philippe.swartvagher@inria.fr>
Subject: [bug#54547] [PATCH] gnu: slurm: Install libpmi2.
Date: Thu, 24 Mar 2022 16:26:15 +0100	[thread overview]
Message-ID: <20220324152615.30374-1-ludo@gnu.org> (raw)

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
-- 
2.34.0





             reply	other threads:[~2022-03-24 15:33 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-03-24 15:26 Ludovic Courtès [this message]
2022-03-28 11:40 ` [bug#54547] [PATCH] gnu: slurm: Install libpmi2 Philippe SWARTVAGHER
2022-03-29 10:07   ` bug#54547: " Ludovic Courtès
2022-03-29 11:33 ` [bug#54547] " zimoun

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20220324152615.30374-1-ludo@gnu.org \
    --to=ludo@gnu.org \
    --cc=54547@debbugs.gnu.org \
    --cc=ludovic.courtes@inria.fr \
    --cc=philippe.swartvagher@inria.fr \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).