summary refs log tree commit diff
path: root/gnu/packages/gl.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/gl.scm')
-rw-r--r--gnu/packages/gl.scm117
1 files changed, 54 insertions, 63 deletions
diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm
index 5f54aa7483..7810d1d8ae 100644
--- a/gnu/packages/gl.scm
+++ b/gnu/packages/gl.scm
@@ -15,7 +15,7 @@
 ;;; Copyright © 2020, 2021, 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
 ;;; Copyright © 2020 Kei Kebreau <kkebreau@posteo.net>
 ;;; Copyright © 2021 Ivan Gankevich <i.gankevich@spbu.ru>
-;;; Copyright © 2021 John Kehayias <john.kehayias@protonmail.com>
+;;; Copyright © 2021, 2022 John Kehayias <john.kehayias@protonmail.com>
 ;;; Copyright © 2022 Petr Hodina <phodina@protonmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
@@ -267,73 +267,72 @@ also known as DXTn or DXTC) for Mesa.")
 (define-public mesa
   (package
     (name "mesa")
-    (version "21.3.8")
+    (version "22.1.7")
     (source
-      (origin
-        (method url-fetch)
-        (uri (list (string-append "https://mesa.freedesktop.org/archive/"
-                                  "mesa-" version ".tar.xz")
-                   (string-append "ftp://ftp.freedesktop.org/pub/mesa/"
-                                  "mesa-" version ".tar.xz")
-                   (string-append "ftp://ftp.freedesktop.org/pub/mesa/"
-                                  version "/mesa-" version ".tar.xz")))
-        (sha256
-         (base32
-          "19wx5plk6z0hhi0zdzxjx8ynl3lhlc5mbd8vhwqyk92kvhxjf3g7"))
-        (patches
-         (search-patches "mesa-skip-tests.patch"))))
+     (origin
+       (method url-fetch)
+       (uri (list (string-append "https://mesa.freedesktop.org/archive/"
+                                 "mesa-" version ".tar.xz")
+                  (string-append "ftp://ftp.freedesktop.org/pub/mesa/"
+                                 "mesa-" version ".tar.xz")
+                  (string-append "ftp://ftp.freedesktop.org/pub/mesa/"
+                                 version "/mesa-" version ".tar.xz")))
+       (sha256
+        (base32
+         "12ax6lmshc8aqzw5ca7ab7f7z64n9nyzci4r1s6y1l0iryr8x0ys"))))
     (build-system meson-build-system)
     (propagated-inputs
-      (list ;; The following are in the Requires.private field of gl.pc.
-            libdrm
-            libvdpau
-            libx11
-            libxdamage
-            libxfixes
-            libxshmfence
-            libxxf86vm
-            xorgproto))
+     ;; The following are in the Requires.private field of gl.pc.
+     (list libdrm
+           libvdpau
+           libx11
+           libxdamage
+           libxfixes
+           libxshmfence
+           libxxf86vm
+           xorgproto))
     (inputs
-     (append (list expat
-                   elfutils                 ;libelf required for r600 when using llvm
-                   (force libva-without-mesa)
-                   libxml2
-                   libxrandr
-                   libxvmc
-                   wayland
-                   wayland-protocols)
-             ;; TODO: Resort alphabetically.
-             ;; Note: update the 'clang' input of mesa-opencl when bumping this.
-             (list llvm-11)))
+     (list elfutils                  ;libelf required for r600 when using llvm
+           expat
+           (force libva-without-mesa)
+           libxml2
+           libxrandr
+           libxvmc
+           ;; Note: update the 'clang' input of mesa-opencl when bumping this.
+           llvm
+           wayland
+           wayland-protocols))
     (native-inputs
-     (append (list bison
-                   flex
-                   gettext-minimal
-                   pkg-config
-                   python-wrapper
-                   python-libxml2                  ;for OpenGL ES 1.1 and 2.0 support
-                   python-mako
-                   (@ (gnu packages base) which))
-             ;; TODO: Resort alphabetically.
-             (list glslang)))
+     (list bison
+           flex
+           gettext-minimal
+           glslang
+           pkg-config
+           python-libxml2               ;for OpenGL ES 1.1 and 2.0 support
+           python-mako
+           python-wrapper
+           (@ (gnu packages base) which)))
     (outputs '("out" "bin"))
     (arguments
      `(#:configure-flags
        '(,@(match (%current-system)
              ("aarch64-linux"
               ;; TODO: Fix svga driver for non-Intel architectures.
-              '("-Dgallium-drivers=etnaviv,freedreno,kmsro,lima,nouveau,panfrost,r300,r600,swrast,tegra,v3d,vc4,virgl"))
+              '("-Dgallium-drivers=etnaviv,freedreno,kmsro,lima,nouveau,\
+panfrost,r300,r600,swrast,tegra,v3d,vc4,virgl"))
              ("armhf-linux"
               ;; Freedreno FTBFS when built on a 64-bit machine.
-              '("-Dgallium-drivers=etnaviv,kmsro,lima,nouveau,panfrost,r300,r600,swrast,tegra,v3d,vc4,virgl"))
+              '("-Dgallium-drivers=etnaviv,kmsro,lima,nouveau,panfrost,\
+r300,r600,swrast,tegra,v3d,vc4,virgl"))
              ((or "powerpc64le-linux" "powerpc-linux" "riscv64-linux")
               '("-Dgallium-drivers=nouveau,r300,r600,radeonsi,swrast,virgl"))
              (_
-              '("-Dgallium-drivers=iris,nouveau,r300,r600,radeonsi,svga,swrast,virgl")))
+              '("-Dgallium-drivers=iris,nouveau,r300,r600,radeonsi,\
+svga,swrast,virgl")))
          ;; Enable various optional features.  TODO: opencl requires libclc,
          ;; omx requires libomxil-bellagio
          "-Dplatforms=x11,wayland"
-         "-Dglx=dri"        ;Thread Local Storage, improves performance
+         "-Dglx=dri"               ;Thread Local Storage, improves performance
          ;; "-Dopencl=true"
          ;; "-Domx=true"
          "-Dosmesa=true"
@@ -363,15 +362,7 @@ also known as DXTn or DXTC) for Mesa.")
          ;; Also enable the tests.
          "-Dbuild-tests=true"
 
-         ;; on non-intel systems, drop i915 and i965
-         ;; from the default dri drivers
-         ,@(match (%current-system)
-             ((or "x86_64-linux" "i686-linux")
-              '("-Ddri-drivers=i915,i965,nouveau,r200,r100"))
-             (_
-              '("-Ddri-drivers=nouveau,r200,r100")))
-
-                "-Dllvm=enabled")       ; default is x86/x86_64 only
+         "-Dllvm=enabled")              ; default is x86/x86_64 only
 
        ;; XXX: 'debugoptimized' causes LTO link failures on some drivers.  The
        ;; documentation recommends using 'release' for performance anyway.
@@ -420,10 +411,10 @@ also known as DXTn or DXTC) for Mesa.")
                     (substitute* "src/amd/common/meson.build"
                       (("and not with_platform_windows") "and with_platform_windows"))))
                  ("i686-linux"
-                  ;; Disable new test from Mesa 19 that fails on i686.  Upstream
-                  ;; report: <https://bugs.freedesktop.org/show_bug.cgi?id=110612>.
-                  `((substitute* "src/util/tests/format/meson.build"
-                      (("'u_format_test',") ""))))
+                  ;; This test is known to fail on i686 (see:
+                  ;; https://gitlab.freedesktop.org/mesa/mesa/-/issues/4091).
+                  `((substitute* "src/util/meson.build"
+                      ((".*'tests/u_debug_stack_test.cpp',.*") ""))))
                  ("aarch64-linux"
                   ;; The ir3_disasm test segfaults.
                   ;; The simplest way to skip it is to run a different test instead.
@@ -522,7 +513,7 @@ from software emulation to complete hardware acceleration for modern GPUs.")
        (prepend libclc)))
     (native-inputs
      (modify-inputs (package-native-inputs mesa)
-       (prepend clang-11)))))
+       (prepend clang)))))
 
 (define-public mesa-opencl-icd
   (package/inherit mesa-opencl