GNU bug report logs - #73071
[PATCH mesa-updates 0/8] Various updates for mesa to 24.2.2

Previous Next

Package: guix-patches;

Reported by: John Kehayias <john.kehayias <at> protonmail.com>

Date: Fri, 6 Sep 2024 15:02:01 UTC

Severity: normal

Tags: patch

Done: John Kehayias <john.kehayias <at> protonmail.com>

Bug is archived. No further changes may be made.

Full log


Message #17 received at 73071 <at> debbugs.gnu.org (full text, mbox):

From: John Kehayias <john.kehayias <at> protonmail.com>
To: 73071 <at> debbugs.gnu.org
Cc: John Kehayias <john.kehayias <at> protonmail.com>,
 Ludovic Courtès <ludo <at> gnu.org>,
 nathan <nathan_mail <at> nborghese.com>, aurtzy <at> gmail.com, efraim <at> flashner.co.il
Subject: [PATCH mesa-updates 5/8] gnu: volk: Hard-code path of vulkan-loader
 for dynamic loading
Date: Fri, 06 Sep 2024 15:07:31 +0000
From: nathan <nathan_mail <at> nborghese.com>

Until now, we’d get:

  $ guix shell vulkan-tools -- vulkaninfo
  ERROR at /tmp/guix-build-vulkan-tools-1.3.280.0.drv-0/source/vulkaninfo/./vulkaninfo.h:412: Failed to initialize: Vulkan loader is not installed, not found, or failed to load.

This patch fixes it and potentially for other programs as well.

* gnu/packages/vulkan.scm (volk)[arguments]: use gexp.
<#:phases>: Patch dlopen with libvulkan.so.
[input]: Add vulkan-loader.

Change-Id: I5ef0eb13d35e517b8947faddace641882a775b80
Co-authored-by: Ludovic Courtès <ludo <at> gnu.org>
Signed-off-by: John Kehayias <john.kehayias <at> protonmail.com>
---
 gnu/packages/vulkan.scm | 16 +++++++++++++---
 1 file changed, 13 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/vulkan.scm b/gnu/packages/vulkan.scm
index e76455a835..dd5b51c7fe 100644
--- a/gnu/packages/vulkan.scm
+++ b/gnu/packages/vulkan.scm
@@ -654,9 +654,19 @@ (define-public volk
                 "0x4jhc8n9c4k8svmmcaxxs613xbsav7wam94gacddlm738cwp13v"))))
     (build-system cmake-build-system)
     (arguments
-     '(#:tests? #f                      ;no test
-       #:configure-flags '("-DVOLK_INSTALL=ON" "-DVOLK_PULL_IN_VULKAN=ON")))
-    (inputs (list vulkan-headers))
+     (list
+      #:tests? #f                      ;no test
+      #:configure-flags #~(list "-DVOLK_INSTALL=ON" "-DVOLK_PULL_IN_VULKAN=ON")
+      #:phases
+      #~(modify-phases %standard-phases
+          (add-after 'unpack 'patch-loader-path
+            (lambda* (#:key inputs #:allow-other-keys)
+              (substitute* "volk.c"
+                (("dlopen\\(\"libvulkan.so")
+                 (string-append "dlopen(\""
+                                (search-input-file
+                                 inputs "/lib/libvulkan.so")))))))))
+    (inputs (list vulkan-headers vulkan-loader))
     (synopsis "Meta loader for Vulkan API")
     (description
      "Volk is a meta-loader for Vulkan.  It allows you to dynamically load
--
2.45.2






This bug report was last modified 279 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.