[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#28552] [PATCH 2/3] gnu: Add infiniband-diags.
From: |
Dave Love |
Subject: |
[bug#28552] [PATCH 2/3] gnu: Add infiniband-diags. |
Date: |
Fri, 22 Sep 2017 16:04:06 +0100 |
* gnu/packages/fabric-management.scm (infiniband-diags): New variable.
---
gnu/packages/fabric-management.scm | 69 +++++++++++++++++++++++++++++++++++++-
1 file changed, 68 insertions(+), 1 deletion(-)
diff --git a/gnu/packages/fabric-management.scm
b/gnu/packages/fabric-management.scm
index abef18d36..a0e4b12c4 100644
--- a/gnu/packages/fabric-management.scm
+++ b/gnu/packages/fabric-management.scm
@@ -23,9 +23,13 @@
#:use-module (guix utils)
#:use-module (guix build-system gnu)
#:use-module (gnu packages)
+ #:use-module (gnu packages autotools)
#:use-module (gnu packages bison)
#:use-module (gnu packages flex)
- #:use-module (gnu packages linux))
+ #:use-module (gnu packages glib)
+ #:use-module (gnu packages linux)
+ #:use-module (gnu packages perl)
+ #:use-module (gnu packages pkg-config))
;; Fixme: Done for the library, but needs support for running the daemon
;; (shepherd definition).
@@ -70,3 +74,66 @@ also contains various tools for diagnosing and testing
Infiniband networks
that can be used from any machine and do not need to be run on a machine
running the opensm daemon.")
(license (list gpl2 bsd-2))))
+
+(define-public infiniband-diags
+ (package
+ (name "infiniband-diags")
+ (version "2.0.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
"https://github.com/linux-rdma/infiniband-diags/archive/"
+ version ".tar.gz"))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32 "1ns9sjwvxnklhi47d6k5x8kxdk1n7f5362y45xwxqmr7gwfvpmwa"))))
+ (build-system gnu-build-system)
+ (inputs
+ `(("rdma-core" ,rdma-core)
+ ("opensm" ,opensm)
+ ("glib" ,glib)))
+ (outputs '("out" "lib"))
+ (native-inputs
+ ;; fixme: needs rst2man for man pages
+ `(("autoconf" ,autoconf)
+ ("automake" ,automake)
+ ("libtool" ,libtool)
+ ("perl" ,perl)
+ ("pkg-config" ,pkg-config)))
+ (arguments
+ '(#:configure-flags
+ (list (string-append "CPPFLAGS=-I" (assoc-ref %build-inputs "opensm")
+ "/include/infiniband")
+ (string-append "--with-perl-installdir=" (assoc-ref %outputs
"lib")
+ "/lib/perl5/vendor_perl")
+ "--disable-static")
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'configure 'autotools
+ (lambda _
+ (zero? (system "./autogen.sh"))))
+ (add-after 'install 'licence
+ (lambda _
+ (let ((doc (string-append (assoc-ref %outputs "lib")
"/share/doc")))
+ (mkdir-p doc)
+ (install-file "COPYING" doc))))
+ (add-after 'install-file 'move-perl
+ ;; Avoid perl in lib closure
+ (lambda _
+ (let ((perlout (string-append (assoc-ref %outputs "out") "/lib"))
+ (perlin (string-append (assoc-ref %outputs "lib")
+ "/lib/perl5")))
+ (mkdir-p perlout)
+ (zero? (system* "mv" perlin perlout))))))))
+ (home-page "https://github.com/linux-rdma/infiniband-diags")
+ (synopsis "Infiniband diagnotic tools")
+ (description "\
+A set of utilities designed to help configure, debug, and maintain infiniband
+fabrics. Many tools and utilities are provided, some with similar
+functionality.
+
+In addition to the utilities provided, a sub-library libibnetdisc, is provided
+to scan an entire IB fabric and return data structures representing it. The
+interface to this library is not guaranteed to be stable.")
+ (license
+ (list gpl2 bsd-2)))) ; dual
--
2.11.0