gnu: Add vkmark.

* gnu/packages/benchmark.scm (vkmark): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
This commit is contained in:
Tomasz Jeneralczyk 2022-11-07 17:01:54 +01:00 committed by Ludovic Courtès
parent f761cc6995
commit f5ea392b9c
No known key found for this signature in database
GPG key ID: 090B11993D9AEBB5

View file

@ -11,6 +11,7 @@
;;; Copyright © 2020, 2021, 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2020 Greg Hogan <code@greghogan.com>
;;; Copyright © 2021 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2022 Tomasz Jeneralczyk <tj@schwi.pl>
;;;
;;; This file is part of GNU Guix.
;;;
@ -36,6 +37,7 @@ (define-module (gnu packages benchmark)
#:use-module (guix build-system cmake)
#:use-module (guix build-system gnu)
#:use-module (guix build-system python)
#:use-module (guix build-system meson)
#:use-module (gnu packages)
#:use-module (gnu packages autotools)
#:use-module (gnu packages base)
@ -46,6 +48,9 @@ (define-module (gnu packages benchmark)
#:use-module (gnu packages databases)
#:use-module (gnu packages docbook)
#:use-module (gnu packages kde-frameworks)
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages gl)
#:use-module (gnu packages graphics)
#:use-module (gnu packages linux)
#:use-module (gnu packages lua)
#:use-module (gnu packages maths)
@ -60,6 +65,8 @@ (define-module (gnu packages benchmark)
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages qt)
#:use-module (gnu packages vulkan)
#:use-module (gnu packages xorg)
#:use-module (gnu packages xml)
#:use-module (ice-9 match))
@ -693,3 +700,46 @@ (define-public sysbench
@item
@end itemize")
(license license:gpl2+)))
(define-public vkmark
;; The only ever release is tagged "2017.08" and as its name suggests
;; it was back in the august of 2017. That version no longer compiles
;; due to changes in APIs of its libraries.
;; Latest commit on the other hand seems to be fully working on xcb
;; and wayland backends.
(let ((commit "30d2cd37f0566589d90914501fc7c51a4e51f559")
(revision "0"))
(package
(name "vkmark")
(version (git-version "2017.08" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/vkmark/vkmark")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"0w0n080sb67s7dbxqi71h0vhm6dccs78rqjnxx9x524jp4jh9b7x"))))
(build-system meson-build-system)
(native-inputs (list pkg-config))
;; The kms backend currently will not compile because of upstream issues.
;; So I omitted this backend's dependiencies. A fix has been proposed
;; on another branch, but it has not been merged yet.
;; See https://github.com/vkmark/vkmark/issues/33
(inputs
(list vulkan-loader
vulkan-headers
glm
assimp
libxcb
xcb-util-wm
wayland-protocols
wayland))
(home-page "https://github.com/vkmark/vkmark")
(synopsis "Extensible benchmarking suite for Vulkan")
(description
"vkmark offers a suite of scenes that can be used to measure various
aspects of Vulkan performance. The way in which each scene is rendered is
configurable through a set of options.")
(license license:lgpl2.1+))))