From 304d3d96440df25edc26419367777138e91ec5ec Mon Sep 17 00:00:00 2001 From: Josselin Poiret Date: Fri, 2 Feb 2024 16:53:44 +0100 Subject: 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 --- gnu/packages/gl.scm | 10 ++++++++-- 1 file 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) -- cgit v1.2.3