gnu: Add volk.

* gnu/packages/vulkan.scm (volk): New variable.

Signed-off-by: Marius Bakke <marius@gnu.org>
This commit is contained in:
dan 2022-11-19 23:02:47 +08:00 committed by Maxim Cournoyer
parent a9f1f987e7
commit 332384b469
No known key found for this signature in database
GPG key ID: 1260E46482E63562

View file

@ -470,3 +470,32 @@ (define-public vulkan-validationlayers
can assist development by enabling developers to verify their applications correctly can assist development by enabling developers to verify their applications correctly
use the Vulkan API.") use the Vulkan API.")
(license license:asl2.0))) (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)))