summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJosselin Poiret <dev@jpoiret.xyz>2024-02-02 16:53:44 +0100
committerJohn Kehayias <john.kehayias@protonmail.com>2024-03-31 20:47:16 -0400
commit304d3d96440df25edc26419367777138e91ec5ec (patch)
tree1312e6fe9eab8f6ef534cb9c0252f0b5d244eecc
parent1d488861a07aaad5b6ba4dd0d93505cc69d93ccd (diff)
downloadguix-patches-304d3d96440df25edc26419367777138e91ec5ec.tar
guix-patches-304d3d96440df25edc26419367777138e91ec5ec.tar.gz
gnu: mesa: Hardcode libvulkan.so's dependency for zink.
* gnu/packages/gl.scm (mesa): Add vulkan-loader as an input. Refer to its libvulkan.so.1 by full path in the zink gallium driver. (cherry picked from commit e2875b7bb894f3575b6e61daa9c1f5d5f4c14b84) Change-Id: I83ff787e6148a45b9403e578dd744f7eb85a221b
-rw-r--r--gnu/packages/gl.scm10
1 files changed, 8 insertions, 2 deletions
diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm
index f8dc8c1d9d..df1e0796cb 100644
--- a/gnu/packages/gl.scm
+++ b/gnu/packages/gl.scm
@@ -327,6 +327,7 @@ also known as DXTn or DXTC) for Mesa.")
libxrandr
libxvmc
llvm-for-mesa
+ vulkan-loader
wayland
wayland-protocols
`(,zstd "lib")))
@@ -479,7 +480,7 @@ svga,swrast,virgl,zink")))
(_
'((display "No tests to disable on this architecture.\n"))))))
(add-before 'configure 'fix-dlopen-libnames
- (lambda _
+ (lambda* (#:key inputs #:allow-other-keys)
(let ((out #$output))
;; Remain agnostic to .so.X.Y.Z versions while doing
;; the substitutions so we're future-safe.
@@ -495,7 +496,12 @@ svga,swrast,virgl,zink")))
;; it's never installed since Mesa removed its
;; egl_gallium support.
(("\"gbm_dri\\.so")
- (string-append "\"" out "/lib/dri/gbm_dri.so"))))))
+ (string-append "\"" out "/lib/dri/gbm_dri.so")))
+ (substitute* "src/gallium/drivers/zink/zink_screen.c"
+ (("util_dl_open\\(VK_LIBNAME\\)")
+ (format #f "util_dl_open(\"~a\")"
+ (search-input-file inputs
+ "lib/libvulkan.so.1")))))))
(add-after 'install 'split-outputs
(lambda _
(let ((out #$output)