summaryrefslogtreecommitdiff
path: root/gnu/packages/vulkan.scm
diff options
context:
space:
mode:
authordan <i@dan.games>2022-11-19 23:02:47 +0800
committerMarius Bakke <marius@gnu.org>2022-11-20 09:24:54 +0100
commite43df543a8d2016c3971af14c06efe42c89a6975 (patch)
tree7573d417226184feb42e0f285bda2b1590bd5edd /gnu/packages/vulkan.scm
parent46774bc9d7ee049fd02adf690aadb5ab6d10a02f (diff)
gnu: Add volk.
* gnu/packages/vulkan.scm (volk): New variable. Signed-off-by: Marius Bakke <marius@gnu.org>
Diffstat (limited to 'gnu/packages/vulkan.scm')
-rw-r--r--gnu/packages/vulkan.scm29
1 files changed, 29 insertions, 0 deletions
diff --git a/gnu/packages/vulkan.scm b/gnu/packages/vulkan.scm
index 3403c89a29..95b8542133 100644
--- a/gnu/packages/vulkan.scm
+++ b/gnu/packages/vulkan.scm
@@ -473,3 +473,32 @@ shader compilation.")
can assist development by enabling developers to verify their applications correctly
use the Vulkan API.")
(license license:asl2.0)))
+
+(define-public volk
+ (package
+ (name "volk")
+ (version %vulkan-sdk-version)
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/zeux/volk")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0xaw3kg754mknx8lfj1p74a9npjfvdvlpicvn0hla4495zpc10rq"))))
+ (build-system cmake-build-system)
+ (arguments
+ '(#:tests? #f ;no test
+ #:configure-flags '("-DVOLK_INSTALL=ON" "-DVOLK_PULL_IN_VULKAN=ON")))
+ (inputs (list vulkan-headers))
+ (synopsis "Meta loader for Vulkan API")
+ (description
+ "Volk is a meta-loader for Vulkan. It allows you to dynamically load
+entrypoints required to use Vulkan without linking the Vulkan loader.
+Additionally, volk simplifies the use of Vulkan extensions by automatically
+loading all associated entrypoints. Finally, volk enables loading Vulkan
+entrypoints directly from the driver which can increase performance by
+skipping loader dispatch overhead.")
+ (home-page "https://github.com/zeux/volk")
+ (license license:expat)))