unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#56041] [PATCH] gnu: Add vkmark.
@ 2022-06-17 15:24 Tomasz Jeneralczyk
  2022-06-17 19:10 ` ( via Guix-patches via
                   ` (6 more replies)
  0 siblings, 7 replies; 17+ messages in thread
From: Tomasz Jeneralczyk @ 2022-06-17 15:24 UTC (permalink / raw)
  To: 56041

* gnu/packages/benchmark.scm (vkmark): Add variable.
---
  gnu/packages/benchmark.scm | 43 ++++++++++++++++++++++++++++++++++++++
  1 file changed, 43 insertions(+)

diff --git a/gnu/packages/benchmark.scm b/gnu/packages/benchmark.scm
index b167c6de6e..98d9390472 100644
--- a/gnu/packages/benchmark.scm
+++ b/gnu/packages/benchmark.scm
@@ -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,15 +37,20 @@ (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)
    #:use-module (gnu packages c)
    #:use-module (gnu packages check)
+  #:use-module (gnu packages cmake)
    #:use-module (gnu packages compression)
    #:use-module (gnu packages kde-frameworks)
    #:use-module (gnu packages databases)
    #:use-module (gnu packages docbook)
+  #: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)
@@ -57,6 +63,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))

@@ -584,3 +592,38 @@ (define-public sysbench
  @item
  @end itemize")
      (license license:gpl2+)))
+
+(define-public vkmark
+  (let ((commit "d872846e2e7c47010c11227eb713d00ccfdd35c6")
+        (revision "1"))
+    (package
+      (name "vkmark")
+      (version (git-version "2017.08" revision commit))
+      (source (origin
+                (method git-fetch)
+                (file-name (git-file-name name version))
+                (uri (git-reference
+                      (url "https://github.com/vkmark/vkmark")
+                      (commit commit)))
+                (sha256
+                 (base32
+                  
"0zlryz8i8jvl160bv30ig5nd9h4ahpjfw53ys839i41xi80jjg5d"))))
+      (build-system meson-build-system)
+      (native-inputs (list pkg-config cmake))
+      ;; The kms back-end, as it is, seems to have bitrot
+      ;; and would need maintenance to work with current Mesa:
+      ;; https://gitlab.freedesktop.org/mesa/mesa/-/commit/5e6db1916806
+      (inputs (list vulkan-loader
+                    vulkan-headers
+                    glm
+                    assimp
+                    libxcb
+                    xcb-util-wm
+                    wayland-protocols
+                    wayland))
+      (synopsis "Benchmark for Vulkan")
+      (description
+       "vkmark is an extensible Vulkan benchmarking suite with 
targeted, configurable
+scenes.")
+      (home-page "https://github.com/vkmark/vkmark")
+      (license license:lgpl2.1))))

base-commit: d6bd483cd53cedc8da39fcc6c419f7241080ed21
-- 
2.36.1





^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [bug#56041] [PATCH] gnu: Add vkmark.
  2022-06-17 15:24 [bug#56041] [PATCH] gnu: Add vkmark Tomasz Jeneralczyk
@ 2022-06-17 19:10 ` ( via Guix-patches via
  2022-06-17 19:59   ` ( via Guix-patches via
  2022-06-18  8:13 ` [bug#56041] Fwd: " ( via Guix-patches via
                   ` (5 subsequent siblings)
  6 siblings, 1 reply; 17+ messages in thread
From: ( via Guix-patches via @ 2022-06-17 19:10 UTC (permalink / raw)
  To: Tomasz Jeneralczyk, 56041

Hi! :D This package seems good to me: passes all lints, builds, and
style looks okay.

On Fri Jun 17, 2022 at 4:24 PM BST, Tomasz Jeneralczyk wrote:
> +(define-public vkmark
> +  (let ((commit "d872846e2e7c47010c11227eb713d00ccfdd35c6")
> +        (revision "1"))

I think it's common to include an explanation of why tags aren't used :)

> +                (file-name (git-file-name name version))
> +                (uri (git-reference
> +                      (url "https://github.com/vkmark/vkmark")
> +                      (commit commit)))

Nitpick: file-name usually comes after uri in most of the packages I've
seen. Maybe run guix style, if you haven't already.

> +      (native-inputs (list pkg-config cmake))

Why include cmake? It seems to compile without it :)

> +      (synopsis "Benchmark for Vulkan")

Maybe expand this to "Extensible benchmarking suite for Vulkan" or
something? I'd say this synopsis is a bit too short.




^ permalink raw reply	[flat|nested] 17+ messages in thread

* [bug#56041] [PATCH] gnu: Add vkmark.
  2022-06-17 19:10 ` ( via Guix-patches via
@ 2022-06-17 19:59   ` ( via Guix-patches via
  0 siblings, 0 replies; 17+ messages in thread
From: ( via Guix-patches via @ 2022-06-17 19:59 UTC (permalink / raw)
  To: (, Tomasz Jeneralczyk, 56041

On Fri Jun 17, 2022 at 8:10 PM BST, ( via Guix-patches via wrote:
> Maybe run guix style, if you haven't already.

And only then I discover how questionable guix style's formatting
choices are... I retract this suggestion :P




^ permalink raw reply	[flat|nested] 17+ messages in thread

* [bug#56041] Fwd: Re: [bug#56041] [PATCH] gnu: Add vkmark.
  2022-06-17 15:24 [bug#56041] [PATCH] gnu: Add vkmark Tomasz Jeneralczyk
  2022-06-17 19:10 ` ( via Guix-patches via
@ 2022-06-18  8:13 ` ( via Guix-patches via
  2022-06-18  8:13 ` ( via Guix-patches via
                   ` (4 subsequent siblings)
  6 siblings, 0 replies; 17+ messages in thread
From: ( via Guix-patches via @ 2022-06-18  8:13 UTC (permalink / raw)
  To: 56041

Forwarded message from Tomasz Jeneralczyk on Fri Jun 17, 2022 at 10:40 PM:
On 2022-06-17 19:10, ( wrote:

> On Fri Jun 17, 2022 at 4:24 PM BST, Tomasz Jeneralczyk wrote:

> I think it's common to include an explanation of why tags aren't used 

> :)



The only tag in the repo is "2017.08" and it's a bit old considering

the latest commit was just a few days ago. I did not manage to compile

the old version successfully anyway, I suspect the api of the libraries

it uses has changed significantly in the meantime.



On the latest commit all benchmark suites run just fine for me on xcb 

backend,

and someone on irc confirmed it works on wayland too so I rolled with 

that.



Do you want me to write a comment there explaining why I used a specific 

commit?



> Nitpick: file-name usually comes after uri in most of the packages I've

> seen. Maybe run guix style, if you haven't already.



All I can tell is guix style does not do much, could not even fix this 

simple

issue.



> Why include cmake? It seems to compile without it :)



You are right. I think it is there because during building process it 

spits

out "Found CMAKE: NO" during compilation and I thought that was an 

issue.



> Maybe expand this to "Extensible benchmarking suite for Vulkan" or

> something? I'd say this synopsis is a bit too short.



your suggestion sounds good.



So do I send a new patch in this thread (with the same or a different 

subject?) or make a new thread with it?


Please only send plain-text email; see <https://useplaintext.email>. Thanks!




^ permalink raw reply	[flat|nested] 17+ messages in thread

* [bug#56041] Fwd: Re: [bug#56041] [PATCH] gnu: Add vkmark.
  2022-06-17 15:24 [bug#56041] [PATCH] gnu: Add vkmark Tomasz Jeneralczyk
  2022-06-17 19:10 ` ( via Guix-patches via
  2022-06-18  8:13 ` [bug#56041] Fwd: " ( via Guix-patches via
@ 2022-06-18  8:13 ` ( via Guix-patches via
  2022-06-18 23:01 ` [bug#56041] [PATCH v2] " Tomasz Jeneralczyk
                   ` (3 subsequent siblings)
  6 siblings, 0 replies; 17+ messages in thread
From: ( via Guix-patches via @ 2022-06-18  8:13 UTC (permalink / raw)
  To: 56041

Forwarded message from ( on Fri Jun 17, 2022 at 11:47 PM:
On Fri Jun 17, 2022 at 11:40 PM BST, Tomasz Jeneralczyk wrote:

> Do you want me to write a comment there explaining why I used a specific 

> commit?



Yeah, that'd be good and seems to be usual practise :)



> > Nitpick: file-name usually comes after uri in most of the packages I've

> > seen. Maybe run guix style, if you haven't already.

>

> All I can tell is guix style does not do much, could not even fix this 

> simple

> issue.



Yeah, i just replied to my message saying that I no longer recommend

guix style, since it completely wrecked the formatting of a package I

was working on... Interesting that it doesn't do anything here, though.



> So do I send a new patch in this thread (with the same or a different 

> subject?) or make a new thread with it?



(1) make modifications

(2) commit modifications

(3) rebase <https://git-rebase.io> the commits as fixups for the original

    commits so that your new patchset will be completely independent of

    the original

(4) git send-email -v2 to _this_ thread <56041 <at> debbugs.gnu.org>, not a

    new one



This will send an amended set of commits. Note that these commits should

not be fixes for the earlier commits, but modified versions of the original

commits (so that the v2 patches can be applied without first applying

the v1 patches).


Please only send plain-text email; see <https://useplaintext.email>. Thanks!




^ permalink raw reply	[flat|nested] 17+ messages in thread

* [bug#56041] [PATCH v2] gnu: Add vkmark.
  2022-06-17 15:24 [bug#56041] [PATCH] gnu: Add vkmark Tomasz Jeneralczyk
                   ` (2 preceding siblings ...)
  2022-06-18  8:13 ` ( via Guix-patches via
@ 2022-06-18 23:01 ` Tomasz Jeneralczyk
  2022-06-19  8:07   ` ( via Guix-patches via
                     ` (2 more replies)
  2022-06-19 15:46 ` [bug#56041] [PATCH v3] " Tomasz Jeneralczyk
                   ` (2 subsequent siblings)
  6 siblings, 3 replies; 17+ messages in thread
From: Tomasz Jeneralczyk @ 2022-06-18 23:01 UTC (permalink / raw)
  To: 56041

* gnu/packages/benchmark.scm (vkmark): Add variable.
---
  gnu/packages/benchmark.scm | 47 ++++++++++++++++++++++++++++++++++++++
  1 file changed, 47 insertions(+)

diff --git a/gnu/packages/benchmark.scm b/gnu/packages/benchmark.scm
index b167c6de6e..79e1645eba 100644
--- a/gnu/packages/benchmark.scm
+++ b/gnu/packages/benchmark.scm
@@ -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,15 +37,20 @@ (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)
    #:use-module (gnu packages c)
    #:use-module (gnu packages check)
+  #:use-module (gnu packages cmake)
    #:use-module (gnu packages compression)
    #:use-module (gnu packages kde-frameworks)
    #:use-module (gnu packages databases)
    #:use-module (gnu packages docbook)
+  #: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)
@@ -57,6 +63,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))

@@ -584,3 +592,42 @@ (define-public sysbench
  @item
  @end itemize")
      (license license:gpl2+)))
+
+(define-public vkmark
+  ;; The latest "release" of vkmark is tagged "2017.08" and it's so old
+  ;; I couldn't even compile it. The current master branch's head
+  ;; seems to be working just fine.
+  (let ((commit "d872846e2e7c47010c11227eb713d00ccfdd35c6")
+        (revision "1")
+        (latest-release "2017.08"))
+    (package
+      (name "vkmark")
+      (version (git-version latest-release 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
+                  
"0zlryz8i8jvl160bv30ig5nd9h4ahpjfw53ys839i41xi80jjg5d"))))
+      (build-system meson-build-system)
+      (native-inputs (list pkg-config))
+      ;; The kms back-end, as it is, seems to have bitrot
+      ;; and would need maintenance to work with current Mesa:
+      ;; https://gitlab.freedesktop.org/mesa/mesa/-/commit/5e6db1916806
+      (inputs (list vulkan-loader
+                    vulkan-headers
+                    glm
+                    assimp
+                    libxcb
+                    xcb-util-wm
+                    wayland-protocols
+                    wayland))
+      (synopsis "Benchmark for Vulkan")
+      (description
+       "vkmark is an extensible Vulkan benchmarking suite with 
targeted, configurable
+scenes.")
+      (home-page "https://github.com/vkmark/vkmark")
+      (license license:lgpl2.1))))

base-commit: 319b8331b2357e12ec9edb9665513c32bef56622
--
2.36.1




^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [bug#56041] [PATCH v2] gnu: Add vkmark.
  2022-06-18 23:01 ` [bug#56041] [PATCH v2] " Tomasz Jeneralczyk
@ 2022-06-19  8:07   ` ( via Guix-patches via
  2022-06-19  9:07   ` Maxime Devos
  2022-06-19  9:08   ` Maxime Devos
  2 siblings, 0 replies; 17+ messages in thread
From: ( via Guix-patches via @ 2022-06-19  8:07 UTC (permalink / raw)
  To: Tomasz Jeneralczyk, 56041

LGTM except for:

On Sun Jun 19, 2022 at 12:01 AM BST, Tomasz Jeneralczyk wrote:
> +  #:use-module (gnu packages cmake)

You probably don't need this anymore.




^ permalink raw reply	[flat|nested] 17+ messages in thread

* [bug#56041] [PATCH v2] gnu: Add vkmark.
  2022-06-18 23:01 ` [bug#56041] [PATCH v2] " Tomasz Jeneralczyk
  2022-06-19  8:07   ` ( via Guix-patches via
@ 2022-06-19  9:07   ` Maxime Devos
  2022-06-19  9:08   ` Maxime Devos
  2 siblings, 0 replies; 17+ messages in thread
From: Maxime Devos @ 2022-06-19  9:07 UTC (permalink / raw)
  To: Tomasz Jeneralczyk, 56041

[-- Attachment #1: Type: text/plain, Size: 263 bytes --]

Tomasz Jeneralczyk schreef op za 18-06-2022 om 23:01 [+0000]:
> +      (license license:lgpl2.1))))

Going by, e.g.,
<https://github.com/vkmark/vkmark/blob/master/src/benchmark.cpp>, it's
not lgpl2.1 but more general (lgpl2.1+).

Greetings,
Maxime.

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 260 bytes --]

^ permalink raw reply	[flat|nested] 17+ messages in thread

* [bug#56041] [PATCH v2] gnu: Add vkmark.
  2022-06-18 23:01 ` [bug#56041] [PATCH v2] " Tomasz Jeneralczyk
  2022-06-19  8:07   ` ( via Guix-patches via
  2022-06-19  9:07   ` Maxime Devos
@ 2022-06-19  9:08   ` Maxime Devos
  2 siblings, 0 replies; 17+ messages in thread
From: Maxime Devos @ 2022-06-19  9:08 UTC (permalink / raw)
  To: Tomasz Jeneralczyk, 56041

[-- Attachment #1: Type: text/plain, Size: 217 bytes --]

Tomasz Jeneralczyk schreef op za 18-06-2022 om 23:01 [+0000]:
> +        (latest-release "2017.08"))

This variable referred to from a single location, so no need for this
variable.

Greetings,
Maxime.

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 260 bytes --]

^ permalink raw reply	[flat|nested] 17+ messages in thread

* [bug#56041] [PATCH v3] gnu: Add vkmark.
  2022-06-17 15:24 [bug#56041] [PATCH] gnu: Add vkmark Tomasz Jeneralczyk
                   ` (3 preceding siblings ...)
  2022-06-18 23:01 ` [bug#56041] [PATCH v2] " Tomasz Jeneralczyk
@ 2022-06-19 15:46 ` Tomasz Jeneralczyk
  2022-06-27 16:02 ` [bug#56041] [PATCH v4] " Tomasz Jeneralczyk
  2022-11-07 16:01 ` [bug#56041] [PATCH v5] " Tomasz Jeneralczyk
  6 siblings, 0 replies; 17+ messages in thread
From: Tomasz Jeneralczyk @ 2022-06-19 15:46 UTC (permalink / raw)
  To: 56041

* gnu/packages/benchmark.scm (vkmark): Add variable.
---
  gnu/packages/benchmark.scm | 48 ++++++++++++++++++++++++++++++++++++++
  1 file changed, 48 insertions(+)

diff --git a/gnu/packages/benchmark.scm b/gnu/packages/benchmark.scm
index b167c6de6e..1ca2c4cbfa 100644
--- a/gnu/packages/benchmark.scm
+++ b/gnu/packages/benchmark.scm
@@ -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)
@@ -45,6 +47,9 @@ (define-module (gnu packages benchmark)
    #:use-module (gnu packages kde-frameworks)
    #:use-module (gnu packages databases)
    #:use-module (gnu packages docbook)
+  #: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)
@@ -57,6 +62,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))

@@ -584,3 +591,44 @@ (define-public sysbench
  @item
  @end itemize")
      (license license:gpl2+)))
+
+(define-public vkmark
+  ;; The latest "release" of vkmark is tagged "2017.08" and it's so old
+  ;; I couldn't even compile it. The current master branch's head
+  ;; seems to be working just fine.
+  (let ((commit "d872846e2e7c47010c11227eb713d00ccfdd35c6")
+        (revision "1"))
+    (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
+                  
"0zlryz8i8jvl160bv30ig5nd9h4ahpjfw53ys839i41xi80jjg5d"))))
+      (build-system meson-build-system)
+      (native-inputs (list pkg-config))
+      ;; The kms back-end, as it is, seems to have bitrot
+      ;; and would need maintenance to work with current Mesa:
+      ;; https://gitlab.freedesktop.org/mesa/mesa/-/commit/5e6db1916806
+      (inputs (list vulkan-loader
+                    vulkan-headers
+                    glm
+                    assimp
+                    libxcb
+                    xcb-util-wm
+                    wayland-protocols
+                    wayland))
+      (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.  To list the available scenes and their acceptable options you 
can use the
+-l, --list-scenes command line option.")
+      (home-page "https://github.com/vkmark/vkmark")
+      (license license:lgpl2.1+))))

base-commit: 319b8331b2357e12ec9edb9665513c32bef56622
-- 
2.36.1





^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [bug#56041] [PATCH v4] gnu: Add vkmark.
  2022-06-17 15:24 [bug#56041] [PATCH] gnu: Add vkmark Tomasz Jeneralczyk
                   ` (4 preceding siblings ...)
  2022-06-19 15:46 ` [bug#56041] [PATCH v3] " Tomasz Jeneralczyk
@ 2022-06-27 16:02 ` Tomasz Jeneralczyk
  2022-11-06  9:40   ` ( via Guix-patches via
  2022-11-07 16:01 ` [bug#56041] [PATCH v5] " Tomasz Jeneralczyk
  6 siblings, 1 reply; 17+ messages in thread
From: Tomasz Jeneralczyk @ 2022-06-27 16:02 UTC (permalink / raw)
  To: 56041; +Cc: Tomasz Jeneralczyk

* gnu/packages/benchmark.scm (vkmark): Add variable.
---
On suggestion from IRC I:
 Rewrote the first comment to sound more professional
 Fixed description to not exceed fill-column on any given line
 Removed usage documentation from description

 gnu/packages/benchmark.scm | 48 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 48 insertions(+)

diff --git a/gnu/packages/benchmark.scm b/gnu/packages/benchmark.scm
index f0e05483f0..0f33e5a0e3 100644
--- a/gnu/packages/benchmark.scm
+++ b/gnu/packages/benchmark.scm
@@ -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))
 
@@ -645,3 +652,44 @@ (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 "d872846e2e7c47010c11227eb713d00ccfdd35c6")
+        (revision "1"))
+    (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
+                  "0zlryz8i8jvl160bv30ig5nd9h4ahpjfw53ys839i41xi80jjg5d"))))
+      (build-system meson-build-system)
+      (native-inputs (list pkg-config))
+      ;; The kms back-end, as it is, seems to have bitrot
+      ;; and would need maintenance to work with current Mesa:
+      ;; https://gitlab.freedesktop.org/mesa/mesa/-/commit/5e6db1916806
+      (inputs (list vulkan-loader
+                    vulkan-headers
+                    glm
+                    assimp
+                    libxcb
+                    xcb-util-wm
+                    wayland-protocols
+                    wayland))
+      (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.")
+      (home-page "https://github.com/vkmark/vkmark")
+      (license license:lgpl2.1+))))

base-commit: b42e52a735722534cef53de874861a921b3d8734
-- 
2.36.1





^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [bug#56041] [PATCH v4] gnu: Add vkmark.
  2022-06-27 16:02 ` [bug#56041] [PATCH v4] " Tomasz Jeneralczyk
@ 2022-11-06  9:40   ` ( via Guix-patches via
  2022-11-07 15:31     ` Tomasz Jeneralczyk
  0 siblings, 1 reply; 17+ messages in thread
From: ( via Guix-patches via @ 2022-11-06  9:40 UTC (permalink / raw)
  To: Tomasz Jeneralczyk, 56041

Heya,

On Mon Jun 27, 2022 at 5:02 PM BST, Tomasz Jeneralczyk wrote:
> * gnu/packages/benchmark.scm (vkmark): Add variable.

"New variable.", not "Add variable."

> --- a/gnu/packages/benchmark.scm
> +++ b/gnu/packages/benchmark.scm

> @@ -645,3 +652,44 @@ (define-public sysbench

> +        (revision "1"))

Use ``(revision "0")'' for the first version currently in Guix.

> +      (inputs (list vulkan-loader
> +                    vulkan-headers
> +                    glm
> +                    assimp
> +                    libxcb
> +                    xcb-util-wm
> +                    wayland-protocols
> +                    wayland))

There should be a newline between ``inputs'' and ``(list ...)''.

> +      (home-page "https://github.com/vkmark/vkmark")

home-page goes before synopsis.

    -- (




^ permalink raw reply	[flat|nested] 17+ messages in thread

* [bug#56041] [PATCH v4] gnu: Add vkmark.
  2022-11-06  9:40   ` ( via Guix-patches via
@ 2022-11-07 15:31     ` Tomasz Jeneralczyk
  2022-11-07 17:07       ` ( via Guix-patches via
  0 siblings, 1 reply; 17+ messages in thread
From: Tomasz Jeneralczyk @ 2022-11-07 15:31 UTC (permalink / raw)
  To: (, 56041

> There should be a newline between ``inputs'' and ``(list ...)''.
guix style positioned them on the same line. I feel like this tool gets
in the way more often than not.




^ permalink raw reply	[flat|nested] 17+ messages in thread

* [bug#56041] [PATCH v5] gnu: Add vkmark.
  2022-06-17 15:24 [bug#56041] [PATCH] gnu: Add vkmark Tomasz Jeneralczyk
                   ` (5 preceding siblings ...)
  2022-06-27 16:02 ` [bug#56041] [PATCH v4] " Tomasz Jeneralczyk
@ 2022-11-07 16:01 ` Tomasz Jeneralczyk
  2022-11-07 17:09   ` ( via Guix-patches via
  2023-01-08 15:11   ` bug#56041: [PATCH] " Ludovic Courtès
  6 siblings, 2 replies; 17+ messages in thread
From: Tomasz Jeneralczyk @ 2022-11-07 16:01 UTC (permalink / raw)
  To: 56041; +Cc: Tomasz Jeneralczyk

* gnu/packages/benchmark.scm (vkmark): New variable.
---
I updated the package to the newest commit and changed comments to reflect
the upstream project's current situation.
 gnu/packages/benchmark.scm | 50 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 50 insertions(+)

diff --git a/gnu/packages/benchmark.scm b/gnu/packages/benchmark.scm
index e188b27789..e9faabe2e9 100644
--- a/gnu/packages/benchmark.scm
+++ b/gnu/packages/benchmark.scm
@@ -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+))))

base-commit: 8e54584d4448d37ddf8ae995bb545a181ba2493c
-- 
2.38.0





^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [bug#56041] [PATCH v4] gnu: Add vkmark.
  2022-11-07 15:31     ` Tomasz Jeneralczyk
@ 2022-11-07 17:07       ` ( via Guix-patches via
  0 siblings, 0 replies; 17+ messages in thread
From: ( via Guix-patches via @ 2022-11-07 17:07 UTC (permalink / raw)
  To: Tomasz Jeneralczyk, 56041

On Mon Nov 7, 2022 at 3:31 PM GMT, Tomasz Jeneralczyk wrote:
> guix style positioned them on the same line. I feel like this tool gets
> in the way more often than not.

Yup, so do I... Unfortunately it's not perfect for Guix packages in the wild yet.

    -- (




^ permalink raw reply	[flat|nested] 17+ messages in thread

* [bug#56041] [PATCH v5] gnu: Add vkmark.
  2022-11-07 16:01 ` [bug#56041] [PATCH v5] " Tomasz Jeneralczyk
@ 2022-11-07 17:09   ` ( via Guix-patches via
  2023-01-08 15:11   ` bug#56041: [PATCH] " Ludovic Courtès
  1 sibling, 0 replies; 17+ messages in thread
From: ( via Guix-patches via @ 2022-11-07 17:09 UTC (permalink / raw)
  To: Tomasz Jeneralczyk, 56041

On Mon Nov 7, 2022 at 4:01 PM GMT, Tomasz Jeneralczyk wrote:
> * gnu/packages/benchmark.scm (vkmark): New variable.

LGTM!

    -- (




^ permalink raw reply	[flat|nested] 17+ messages in thread

* bug#56041: [PATCH] gnu: Add vkmark.
  2022-11-07 16:01 ` [bug#56041] [PATCH v5] " Tomasz Jeneralczyk
  2022-11-07 17:09   ` ( via Guix-patches via
@ 2023-01-08 15:11   ` Ludovic Courtès
  1 sibling, 0 replies; 17+ messages in thread
From: Ludovic Courtès @ 2023-01-08 15:11 UTC (permalink / raw)
  To: Tomasz Jeneralczyk; +Cc: 56041-done

Hi Tomasz,

Tomasz Jeneralczyk <tj@schwi.pl> skribis:

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

Finally applied—apologies for the delay.

Thank you, and thanks ( for reviewing!

Ludo’.




^ permalink raw reply	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2023-01-08 15:12 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-06-17 15:24 [bug#56041] [PATCH] gnu: Add vkmark Tomasz Jeneralczyk
2022-06-17 19:10 ` ( via Guix-patches via
2022-06-17 19:59   ` ( via Guix-patches via
2022-06-18  8:13 ` [bug#56041] Fwd: " ( via Guix-patches via
2022-06-18  8:13 ` ( via Guix-patches via
2022-06-18 23:01 ` [bug#56041] [PATCH v2] " Tomasz Jeneralczyk
2022-06-19  8:07   ` ( via Guix-patches via
2022-06-19  9:07   ` Maxime Devos
2022-06-19  9:08   ` Maxime Devos
2022-06-19 15:46 ` [bug#56041] [PATCH v3] " Tomasz Jeneralczyk
2022-06-27 16:02 ` [bug#56041] [PATCH v4] " Tomasz Jeneralczyk
2022-11-06  9:40   ` ( via Guix-patches via
2022-11-07 15:31     ` Tomasz Jeneralczyk
2022-11-07 17:07       ` ( via Guix-patches via
2022-11-07 16:01 ` [bug#56041] [PATCH v5] " Tomasz Jeneralczyk
2022-11-07 17:09   ` ( via Guix-patches via
2023-01-08 15:11   ` bug#56041: [PATCH] " Ludovic Courtès

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).