summary refs log tree commit diff
path: root/gnu/packages/opencl.scm
diff options
context:
space:
mode:
authorFis Trivial <ybbs.daans@hotmail.com>2018-06-26 19:39:42 +0000
committerLudovic Courtès <ludo@gnu.org>2018-06-26 23:01:16 +0200
commit184a214bad352a08d03ab34c7baa3cad2f57c14d (patch)
treedbacf84efbe14c584a6047fb13ac482006e44488 /gnu/packages/opencl.scm
parent2a0539e2677a984d61b6c929fb7e79582e50804a (diff)
downloadguix-184a214bad352a08d03ab34c7baa3cad2f57c14d.tar.gz
gnu: Add clinfo.
* gnu/packages/opencl.scm (clinfo): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Diffstat (limited to 'gnu/packages/opencl.scm')
-rw-r--r--gnu/packages/opencl.scm42
1 files changed, 42 insertions, 0 deletions
diff --git a/gnu/packages/opencl.scm b/gnu/packages/opencl.scm
index 3b65d7512a..3ce8a14c4c 100644
--- a/gnu/packages/opencl.scm
+++ b/gnu/packages/opencl.scm
@@ -157,3 +157,45 @@ programming.")
 Drivers).  An OpenCL program can use several ICDs thanks to the use of an ICD
 Loader as provided by this package.")
     (license license:bsd-2)))
+
+(define-public clinfo
+  (package
+    (name "clinfo")
+    (version "2.2.18.04.06")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append
+                    "https://github.com/Oblomov/clinfo/archive/"
+                    version ".tar.gz"))
+              (file-name (string-append name "-" version ".tar.gz"))
+              (sha256
+               (base32
+                "0v7cy01irwdgns6lzaprkmm0502pp5a24zhhffydxz1sgfjj2w7p"))))
+    (build-system gnu-build-system)
+    (native-inputs
+     `(("opencl-headers" ,opencl-headers)))
+    (inputs
+     `(("ocl-icd" ,ocl-icd)))
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (delete 'configure)
+         (replace 'build
+           (lambda _
+             (let ((cores (number->string (parallel-job-count))))
+               (setenv "CC" "gcc")
+               (invoke "make" "-j" cores))))
+         (replace 'install
+           (lambda* (#:key outputs #:allow-other-keys)
+             (invoke "make" "install" (string-append
+                                       "PREFIX="
+                                       (assoc-ref outputs "out"))))))
+       #:tests? #f))
+    (home-page "https://github.com/Oblomov/clinfo")
+    (synopsis "Print information about OpenCL platforms and devices")
+    ;; Only the implementation installed via Guix will be detected.
+    (description
+     "This package provides the @command{clinfo} command that enumerates all
+possible (known) properties of the OpenCL platform and devices available on
+the system.")
+    (license license:cc0)))