unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#31172] [PATCH 0/1] Add psm2
@ 2018-04-16  7:46 Rouby Pierre-Antoine
  2018-04-16  7:49 ` [bug#31172] [PATCH 1/1] gnu: " Rouby Pierre-Antoine
  0 siblings, 1 reply; 5+ messages in thread
From: Rouby Pierre-Antoine @ 2018-04-16  7:46 UTC (permalink / raw)
  To: 31172; +Cc: Rouby Pierre-Antoine

This patch add package for psm2. They compile and install without any error.
But, I'm not familiar with psm2. Someone could have a look ?

Rouby Pierre-Antoine (1):
  gnu: Add psm2.

 gnu/packages/linux.scm | 41 +++++++++++++++++++++++++++++++++++++++++
 1 file changed, 41 insertions(+)

-- 
2.16.1

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [bug#31172] [PATCH 1/1] gnu: Add psm2.
  2018-04-16  7:46 [bug#31172] [PATCH 0/1] Add psm2 Rouby Pierre-Antoine
@ 2018-04-16  7:49 ` Rouby Pierre-Antoine
  2018-04-23 12:52   ` Ludovic Courtès
  0 siblings, 1 reply; 5+ messages in thread
From: Rouby Pierre-Antoine @ 2018-04-16  7:49 UTC (permalink / raw)
  To: 31172; +Cc: Rouby Pierre-Antoine

* gnu/packages/linux.scm (psm2): New variable.
---
 gnu/packages/linux.scm | 41 +++++++++++++++++++++++++++++++++++++++++
 1 file changed, 41 insertions(+)

diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index f49171fa5..a4a8859e5 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -27,6 +27,7 @@
 ;;; Copyright © 2017, 2018 Rutger Helling <rhelling@mykolab.com>
 ;;; Copyright © 2017 nee <nee-git@hidamari.blue>
 ;;; Copyright © 2017 Dave Love <fx@gnu.org>
+;;; Copyright © 2018 Pierre-Antoine Rouby <pierre-antoine.rouby@inria.fr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -4561,3 +4562,43 @@ text-mode or graphical applications that don't use a display server.
 Also included is @command{fbgrab}, a wrapper around @command{fbcat} that
 emulates the behaviour of Gunnar Monell's older fbgrab utility.")
     (license license:gpl2)))
+
+(define-public psm2
+  (package
+    (name "psm2")
+    (version "10.3-46")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/intel/opa-psm2.git")
+                    (commit "5fabd0e699a920e74333f789923fd1c02bb7c629")))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "0wadphv4rl5p38x6a3dgpbijlzqdvcn02cfafnp72nh9faz0zvlx"))))
+    (build-system gnu-build-system)
+    (arguments
+     '(#:modules ((guix build utils)
+                  (guix build gnu-build-system))
+       #:phases (modify-phases %standard-phases
+                  (delete 'configure)
+                  (delete 'check)
+                  (replace 'install
+                    (lambda* (#:key outputs #:allow-other-keys)
+                      (let* ((out (assoc-ref outputs "out")))
+                        (setenv "DESTDIR" out)
+                        (invoke "make" "install")
+                        #t))))))
+    (inputs
+     `(("rdma-core" ,rdma-core)
+       ("numactl" ,numactl)))
+    (synopsis "Intel Performance Scaled Messaging 2 (PSM2) library")
+    (description
+     "This package is low-level user-level Intel's communications interface.
+The PSM2 API is a high-performance vendor-specific protocol that provides a
+low-level communications interface for the Intel Omni-Path family of
+products.")
+    (home-page "https://github.com/intel/opa-psm2")
+    ;; Only the x86_64 architecure is supported.
+    (supported-systems '("x86_64-linux"))
+    (license (list license:bsd-3 license:gpl2)))) ; dual
-- 
2.16.1

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [bug#31172] [PATCH 1/1] gnu: Add psm2.
  2018-04-16  7:49 ` [bug#31172] [PATCH 1/1] gnu: " Rouby Pierre-Antoine
@ 2018-04-23 12:52   ` Ludovic Courtès
  2018-04-25 11:48     ` [bug#31172] [PATCH] " Rouby Pierre-Antoine
  0 siblings, 1 reply; 5+ messages in thread
From: Ludovic Courtès @ 2018-04-23 12:52 UTC (permalink / raw)
  To: Rouby Pierre-Antoine; +Cc: 31172

Hello,

Rouby Pierre-Antoine <pierre-antoine.rouby@inria.fr> skribis:

> * gnu/packages/linux.scm (psm2): New variable.

Overall LGTM!  Some comments:

> +(define-public psm2
> +  (package
> +    (name "psm2")
> +    (version "10.3-46")
> +    (source (origin
> +              (method git-fetch)
> +              (uri (git-reference
> +                    (url "https://github.com/intel/opa-psm2.git")
> +                    (commit "5fabd0e699a920e74333f789923fd1c02bb7c629")))

I think you can use the “PSM2_10.3-46” tag for clarity here.

> +    (arguments
> +     '(#:modules ((guix build utils)
> +                  (guix build gnu-build-system))

This #:modules isn’t needed since it’s already the default set of
modules.

> +       #:phases (modify-phases %standard-phases
> +                  (delete 'configure)
> +                  (delete 'check)
> +                  (replace 'install
> +                    (lambda* (#:key outputs #:allow-other-keys)
> +                      (let* ((out (assoc-ref outputs "out")))
> +                        (setenv "DESTDIR" out)
> +                        (invoke "make" "install")

Setting DESTDIR doesn’t quite work; it leads to an incorrect layout with
some files going to $prefix/usr:

--8<---------------cut here---------------start------------->8---
$ find /gnu/store/i1ln5bgdkspm959nv7k42ysgycgsm3v6-psm2-10.3-46
/gnu/store/i1ln5bgdkspm959nv7k42ysgycgsm3v6-psm2-10.3-46
/gnu/store/i1ln5bgdkspm959nv7k42ysgycgsm3v6-psm2-10.3-46/lib
/gnu/store/i1ln5bgdkspm959nv7k42ysgycgsm3v6-psm2-10.3-46/lib/udev
/gnu/store/i1ln5bgdkspm959nv7k42ysgycgsm3v6-psm2-10.3-46/lib/udev/rules.d
/gnu/store/i1ln5bgdkspm959nv7k42ysgycgsm3v6-psm2-10.3-46/lib/udev/rules.d/40-psm.rules
/gnu/store/i1ln5bgdkspm959nv7k42ysgycgsm3v6-psm2-10.3-46/lib/udev/rules.d/40-psm-compat.rules
/gnu/store/i1ln5bgdkspm959nv7k42ysgycgsm3v6-psm2-10.3-46/share
/gnu/store/i1ln5bgdkspm959nv7k42ysgycgsm3v6-psm2-10.3-46/share/doc
/gnu/store/i1ln5bgdkspm959nv7k42ysgycgsm3v6-psm2-10.3-46/share/doc/psm2-10.3-46
/gnu/store/i1ln5bgdkspm959nv7k42ysgycgsm3v6-psm2-10.3-46/share/doc/psm2-10.3-46/COPYING
/gnu/store/i1ln5bgdkspm959nv7k42ysgycgsm3v6-psm2-10.3-46/usr
/gnu/store/i1ln5bgdkspm959nv7k42ysgycgsm3v6-psm2-10.3-46/usr/lib
/gnu/store/i1ln5bgdkspm959nv7k42ysgycgsm3v6-psm2-10.3-46/usr/lib/libpsm2
/gnu/store/i1ln5bgdkspm959nv7k42ysgycgsm3v6-psm2-10.3-46/usr/lib/libpsm2/libpsm2-compat.cmds
/gnu/store/i1ln5bgdkspm959nv7k42ysgycgsm3v6-psm2-10.3-46/usr/lib64
/gnu/store/i1ln5bgdkspm959nv7k42ysgycgsm3v6-psm2-10.3-46/usr/lib64/libpsm2.so.2
/gnu/store/i1ln5bgdkspm959nv7k42ysgycgsm3v6-psm2-10.3-46/usr/lib64/psm2-compat
/gnu/store/i1ln5bgdkspm959nv7k42ysgycgsm3v6-psm2-10.3-46/usr/lib64/psm2-compat/libpsm_infinipath.so.1
/gnu/store/i1ln5bgdkspm959nv7k42ysgycgsm3v6-psm2-10.3-46/usr/lib64/libpsm2.so
/gnu/store/i1ln5bgdkspm959nv7k42ysgycgsm3v6-psm2-10.3-46/usr/lib64/libpsm2.so.2.1
/gnu/store/i1ln5bgdkspm959nv7k42ysgycgsm3v6-psm2-10.3-46/usr/lib64/libpsm2.a
/gnu/store/i1ln5bgdkspm959nv7k42ysgycgsm3v6-psm2-10.3-46/usr/include
/gnu/store/i1ln5bgdkspm959nv7k42ysgycgsm3v6-psm2-10.3-46/usr/include/psm2.h
/gnu/store/i1ln5bgdkspm959nv7k42ysgycgsm3v6-psm2-10.3-46/usr/include/hfi1diag
/gnu/store/i1ln5bgdkspm959nv7k42ysgycgsm3v6-psm2-10.3-46/usr/include/hfi1diag/hfi1_deprecated.h
/gnu/store/i1ln5bgdkspm959nv7k42ysgycgsm3v6-psm2-10.3-46/usr/include/hfi1diag/ptl_ips
/gnu/store/i1ln5bgdkspm959nv7k42ysgycgsm3v6-psm2-10.3-46/usr/include/hfi1diag/ptl_ips/ipserror.h
/gnu/store/i1ln5bgdkspm959nv7k42ysgycgsm3v6-psm2-10.3-46/usr/include/hfi1diag/psmi_wrappers.h
/gnu/store/i1ln5bgdkspm959nv7k42ysgycgsm3v6-psm2-10.3-46/usr/include/hfi1diag/opa_intf.h
/gnu/store/i1ln5bgdkspm959nv7k42ysgycgsm3v6-psm2-10.3-46/usr/include/hfi1diag/linux-x86_64
/gnu/store/i1ln5bgdkspm959nv7k42ysgycgsm3v6-psm2-10.3-46/usr/include/hfi1diag/linux-x86_64/bit_ops.h
/gnu/store/i1ln5bgdkspm959nv7k42ysgycgsm3v6-psm2-10.3-46/usr/include/hfi1diag/linux-x86_64/sysdep.h
/gnu/store/i1ln5bgdkspm959nv7k42ysgycgsm3v6-psm2-10.3-46/usr/include/hfi1diag/opa_udebug.h
/gnu/store/i1ln5bgdkspm959nv7k42ysgycgsm3v6-psm2-10.3-46/usr/include/hfi1diag/opa_debug.h
/gnu/store/i1ln5bgdkspm959nv7k42ysgycgsm3v6-psm2-10.3-46/usr/include/hfi1diag/opa_byteorder.h
/gnu/store/i1ln5bgdkspm959nv7k42ysgycgsm3v6-psm2-10.3-46/usr/include/hfi1diag/opa_common.h
/gnu/store/i1ln5bgdkspm959nv7k42ysgycgsm3v6-psm2-10.3-46/usr/include/hfi1diag/opa_revision.h
/gnu/store/i1ln5bgdkspm959nv7k42ysgycgsm3v6-psm2-10.3-46/usr/include/hfi1diag/opa_service.h
/gnu/store/i1ln5bgdkspm959nv7k42ysgycgsm3v6-psm2-10.3-46/usr/include/hfi1diag/psm2_mock_testing.h
/gnu/store/i1ln5bgdkspm959nv7k42ysgycgsm3v6-psm2-10.3-46/usr/include/hfi1diag/opa_user.h
/gnu/store/i1ln5bgdkspm959nv7k42ysgycgsm3v6-psm2-10.3-46/usr/include/psm2_mq.h
/gnu/store/i1ln5bgdkspm959nv7k42ysgycgsm3v6-psm2-10.3-46/usr/include/psm2_am.h
/gnu/store/i1ln5bgdkspm959nv7k42ysgycgsm3v6-psm2-10.3-46/etc
/gnu/store/i1ln5bgdkspm959nv7k42ysgycgsm3v6-psm2-10.3-46/etc/modprobe.d
/gnu/store/i1ln5bgdkspm959nv7k42ysgycgsm3v6-psm2-10.3-46/etc/modprobe.d/libpsm2-compat.conf
--8<---------------cut here---------------end--------------->8---

Also we should avoid lib64/.

Could you send an updated patch?

Eventually we should try adding psm2 as an input to ‘openmpi’ so that it
is built with PSM2 modules.

Thank you!

Ludo’.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [bug#31172] [PATCH] gnu: Add psm2.
  2018-04-23 12:52   ` Ludovic Courtès
@ 2018-04-25 11:48     ` Rouby Pierre-Antoine
  2018-04-26 13:22       ` bug#31172: " Ludovic Courtès
  0 siblings, 1 reply; 5+ messages in thread
From: Rouby Pierre-Antoine @ 2018-04-25 11:48 UTC (permalink / raw)
  To: 31172; +Cc: Rouby Pierre-Antoine

* gnu/packages/linux.scm (psm2): New variable.
---
 gnu/packages/linux.scm | 48 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 48 insertions(+)

diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index f49171fa5..e69bbf5b7 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -27,6 +27,7 @@
 ;;; Copyright © 2017, 2018 Rutger Helling <rhelling@mykolab.com>
 ;;; Copyright © 2017 nee <nee-git@hidamari.blue>
 ;;; Copyright © 2017 Dave Love <fx@gnu.org>
+;;; Copyright © 2018 Pierre-Antoine Rouby <pierre-antoine.rouby@inria.fr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -4561,3 +4562,50 @@ text-mode or graphical applications that don't use a display server.
 Also included is @command{fbgrab}, a wrapper around @command{fbcat} that
 emulates the behaviour of Gunnar Monell's older fbgrab utility.")
     (license license:gpl2)))
+
+(define-public psm2
+  (package
+    (name "psm2")
+    (version "10.3-46")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/intel/opa-psm2.git")
+                    (commit (string-append "PSM2_" version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "0wadphv4rl5p38x6a3dgpbijlzqdvcn02cfafnp72nh9faz0zvlx"))))
+    (build-system gnu-build-system)
+    (arguments
+     '(#:make-flags
+       `(,(string-append "LDFLAGS=-Wl,-rpath=" %output "/lib"))
+       #:tests? #f
+       #:phases (modify-phases %standard-phases
+                  (delete 'configure)
+                  (add-after 'unpack 'patch-Makefiles
+                    (lambda _
+                      (substitute* "Makefile"
+                        (("/lib64") "/lib")
+                        (("/usr") ""))
+                      (substitute* "compat/Makefile"
+                        (("/lib64") "/lib")
+                        (("/usr") ""))
+                      #t))
+                  (replace 'install
+                    (lambda _
+                      (setenv "DESTDIR" %output)
+                      (invoke "make" "install"))))))
+    (inputs
+     `(("rdma-core" ,rdma-core)
+       ("numactl" ,numactl)))
+    (synopsis "Intel Performance Scaled Messaging 2 (PSM2) library")
+    (description
+     "This package is low-level user-level Intel's communications interface.
+The PSM2 API is a high-performance vendor-specific protocol that provides a
+low-level communications interface for the Intel Omni-Path family of
+products.")
+    (home-page "https://github.com/intel/opa-psm2")
+    ;; Only the x86_64 architecure is supported.
+    (supported-systems '("x86_64-linux"))
+    (license (list license:bsd-3 license:gpl2)))) ; dual
-- 
2.17.0

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* bug#31172: [PATCH] gnu: Add psm2.
  2018-04-25 11:48     ` [bug#31172] [PATCH] " Rouby Pierre-Antoine
@ 2018-04-26 13:22       ` Ludovic Courtès
  0 siblings, 0 replies; 5+ messages in thread
From: Ludovic Courtès @ 2018-04-26 13:22 UTC (permalink / raw)
  To: Rouby Pierre-Antoine; +Cc: 31172-done

[-- Attachment #1: Type: text/plain, Size: 191 bytes --]

Rouby Pierre-Antoine <pierre-antoine.rouby@inria.fr> skribis:

> * gnu/packages/linux.scm (psm2): New variable.

Awesome, applied with the following changes.

Thank you!

Ludo’.


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: Type: text/x-patch, Size: 972 bytes --]

diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index 2b82babfa..8fc9c56d6 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -4665,7 +4665,8 @@ privileges.")
                   (replace 'install
                     (lambda _
                       (setenv "DESTDIR" %output)
-                      (invoke "make" "install"))))))
+                      (invoke "make" "install")
+                      #t)))))
     (inputs
      `(("rdma-core" ,rdma-core)
        ("numactl" ,numactl)))
@@ -4674,7 +4675,7 @@ privileges.")
      "This package is low-level user-level Intel's communications interface.
 The PSM2 API is a high-performance vendor-specific protocol that provides a
 low-level communications interface for the Intel Omni-Path family of
-products.")
+high-speed networking devices.")
     (home-page "https://github.com/intel/opa-psm2")
     ;; Only the x86_64 architecure is supported.
     (supported-systems '("x86_64-linux"))

^ permalink raw reply related	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2018-04-26 13:23 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-04-16  7:46 [bug#31172] [PATCH 0/1] Add psm2 Rouby Pierre-Antoine
2018-04-16  7:49 ` [bug#31172] [PATCH 1/1] gnu: " Rouby Pierre-Antoine
2018-04-23 12:52   ` Ludovic Courtès
2018-04-25 11:48     ` [bug#31172] [PATCH] " Rouby Pierre-Antoine
2018-04-26 13:22       ` bug#31172: " Ludovic Courtès

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).