summary refs log tree commit diff
path: root/gnu/packages
diff options
context:
space:
mode:
authorRutger Helling <rhelling@mykolab.com>2017-12-08 14:56:36 +0100
committerMarius Bakke <mbakke@fastmail.com>2017-12-18 01:16:03 +0100
commit794d740e0845763578a997bfeaae6778bab91393 (patch)
tree6c49bf2014441597f22aaccb28eb61f64464f1f3 /gnu/packages
parent0df77274d1e1e143a54adfef96150b182977fa61 (diff)
downloadguix-794d740e0845763578a997bfeaae6778bab91393.tar.gz
gnu: vulkan: Add spirv-tools.
* gnu/packages/vulkan.scm (spirv-tools): New variable.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
Diffstat (limited to 'gnu/packages')
-rw-r--r--gnu/packages/vulkan.scm37
1 files changed, 36 insertions, 1 deletions
diff --git a/gnu/packages/vulkan.scm b/gnu/packages/vulkan.scm
index 492457f68c..252500aadb 100644
--- a/gnu/packages/vulkan.scm
+++ b/gnu/packages/vulkan.scm
@@ -19,9 +19,12 @@
 (define-module (gnu packages vulkan)
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (guix packages)
+  #:use-module (guix download)
   #:use-module (guix git-download)
   #:use-module (guix build-system cmake)
-  #:use-module (gnu packages))
+  #:use-module (gnu packages)
+  #:use-module (gnu packages pkg-config)
+  #:use-module (gnu packages python))
 
 (define-public spirv-headers
   (let ((commit "98b01515724c428d0f0a5d01deffcce0f5f5e61c")
@@ -63,3 +66,35 @@ and for the GLSL.std.450 extended instruction set.
       (license (license:x11-style
                 (string-append "https://github.com/KhronosGroup/SPIRV-Headers/blob/"
                                commit "/LICENSE"))))))
+
+(define-public spirv-tools
+  (package
+    (name "spirv-tools")
+    (version "2017.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "https://github.com/KhronosGroup/SPIRV-Tools/archive/v"
+                           version ".tar.gz"))
+       (sha256
+        (base32
+         "009vflaa71a7xhvmm23f4sdbcgdkl1k4facqkwsg6djha2sdpsqq"))
+       (file-name (string-append name "-" version ".tar.gz"))))
+    (build-system cmake-build-system)
+    (arguments
+     `(#:configure-flags (list (string-append "-DCMAKE_INSTALL_LIBDIR="
+                                              (assoc-ref %outputs "out")
+                                              "/lib")
+                               (string-append "-DSPIRV-Headers_SOURCE_DIR="
+                                              (assoc-ref %build-inputs
+                                                         "spirv-headers")))))
+    (inputs `(("spirv-headers" ,spirv-headers)))
+    (native-inputs `(("pkg-config", pkg-config)
+                     ("python" ,python)))
+    (home-page "https://github.com/KhronosGroup/SPIRV-Tools")
+    (synopsis "API and commands for processing SPIR-V modules")
+    (description
+     "The SPIR-V Tools project provides an API and commands for processing
+SPIR-V modules.  The project includes an assembler, binary module parser,
+disassembler, validator, and optimizer for SPIR-V.")
+    (license license:asl2.0)))