summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMaxim Cournoyer <maxim.cournoyer@gmail.com>2022-08-22 16:11:24 -0400
committerMaxim Cournoyer <maxim.cournoyer@gmail.com>2022-08-28 21:07:46 -0400
commit9b2a3e023f7090d19c98e7582220340df3962555 (patch)
treee8aa871cd84ba6730d078adcec2758f26df67f16
parentf4f9ee826191bc94d39ccacddc6dcfd43e172304 (diff)
gnu: mesa: Update to 22.1.7.
* gnu/packages/gl.scm (mesa): Update to 22.1.7. [source]: Fix indentation. Remove patch, implementing it as a... [configure-flags]: Remove '-Ddri-drivers=...' flag, no longer supported. [phases]{disable-failing-test} ... substitution instead. [propagated-inputs]: Move comment above. [inputs]: Remove extraneous append and sort. [native-inputs]: Likewise. [configure-flags]: Break long lines. * gnu/packages/patches/mesa-skip-tests.patch: Delete file. * gnu/local.mk (dist_patch_DATA): De-register it.
-rw-r--r--gnu/local.mk1
-rw-r--r--gnu/packages/gl.scm109
-rw-r--r--gnu/packages/patches/mesa-skip-tests.patch18
3 files changed, 58 insertions, 70 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index f061f1d4dd..6ee756c37e 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1491,7 +1491,6 @@ dist_patch_DATA = \
%D%/packages/patches/libsigrokdecode-python3.9-fix.patch \
%D%/packages/patches/mercurial-hg-extension-path.patch \
%D%/packages/patches/mesa-opencl-all-targets.patch \
- %D%/packages/patches/mesa-skip-tests.patch \
%D%/packages/patches/meson-allow-dirs-outside-of-prefix.patch \
%D%/packages/patches/mhash-keygen-test-segfault.patch \
%D%/packages/patches/mia-fix-boost-headers.patch \
diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm
index d6d127d765..dd38c1a502 100644
--- a/gnu/packages/gl.scm
+++ b/gnu/packages/gl.scm
@@ -268,73 +268,72 @@ also known as DXTn or DXTC) for Mesa.")
(define-public mesa
(package
(name "mesa")
- (version "22.1.2")
+ (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
- "1smrvvh8l7xcccwfbccx9k0ihzh1whrnnwsmqb7i0gba99mj4w89"))
- (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)))
+ (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"))
- ((or "powerpc64le-linux" "powerpc-linux")
+ '("-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=auto")))
+ '("-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"
@@ -347,10 +346,14 @@ also known as DXTn or DXTC) for Mesa.")
;; Explicitly enable Vulkan on some architectures.
,@(match (%current-system)
+ ((or "i686-linux" "x86_64-linux")
+ '("-Dvulkan-drivers=intel,amd"))
((or "powerpc64le-linux" "powerpc-linux")
'("-Dvulkan-drivers=amd,swrast"))
("aarch64-linux"
'("-Dvulkan-drivers=freedreno,amd,broadcom,swrast"))
+ ("riscv64-linux"
+ '("-Dvulkan-drivers=amd,swrast"))
(_
'("-Dvulkan-drivers=auto")))
@@ -360,8 +363,7 @@ also known as DXTn or DXTC) for Mesa.")
;; Also enable the tests.
"-Dbuild-tests=true"
- ;; Enable LLVM; default is x86/x86_64 only.
- "-Dllvm=enabled")
+ "-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.
@@ -409,6 +411,11 @@ also known as DXTn or DXTC) for Mesa.")
;; This test times out and receives SIGTERM.
(substitute* "src/amd/common/meson.build"
(("and not with_platform_windows") "and with_platform_windows"))))
+ ("i686-linux"
+ ;; 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.
diff --git a/gnu/packages/patches/mesa-skip-tests.patch b/gnu/packages/patches/mesa-skip-tests.patch
deleted file mode 100644
index af61ea1658..0000000000
--- a/gnu/packages/patches/mesa-skip-tests.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-This test fails on i686-linux. I couldn't come up with a regex that
-could be used to disable it just on i686-linux, so we disable it
-completely with this patch:
-
-https://gitlab.freedesktop.org/mesa/mesa/-/issues/4091
-
-diff --git a/src/util/meson.build b/src/util/meson.build
-index 2a1028f0d3a..0d31f38b671 100644
---- a/src/util/meson.build
-+++ b/src/util/meson.build
-@@ -330,7 +330,6 @@ if with_tests
- 'tests/set_test.cpp',
- 'tests/sparse_array_test.cpp',
- 'tests/u_atomic_test.cpp',
-- 'tests/u_debug_stack_test.cpp',
- 'tests/u_printf_test.cpp',
- 'tests/u_qsort_test.cpp',
- 'tests/vector_test.cpp',