From c6d64a29bec1f6390065fc1af6ef21a2cf250fea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mikael=20=C3=96hman?= Date: Thu, 19 Jun 2025 23:33:44 +0000 Subject: [PATCH 1/2] Update Mesa easyblock to use not use removed swrast --- easybuild/easyblocks/m/mesa.py | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/easybuild/easyblocks/m/mesa.py b/easybuild/easyblocks/m/mesa.py index e81b08566bd..ea074798d28 100644 --- a/easybuild/easyblocks/m/mesa.py +++ b/easybuild/easyblocks/m/mesa.py @@ -43,7 +43,7 @@ class EB_Mesa(MesonNinja): """Custom easyblock for building and installing Mesa.""" def __init__(self, *args, **kwargs): - """Constructor for custom Mesa easyblock: figure out which values to pass to swr-arches configuration option.""" + """Constructor for custom Mesa easyblock: figure out some config options.""" super().__init__(*args, **kwargs) @@ -65,12 +65,18 @@ def __init__(self, *args, **kwargs): if not gallium_drivers: # Add appropriate Gallium drivers for current architecture arch = get_cpu_architecture() + if LooseVersion(self.version) < LooseVersion('25'): + default_renderer = 'llvmpipe' + else: + default_renderer = 'swrast' + arch_gallium_drivers = { - X86_64: ['swrast'], - POWER: ['swrast'], - AARCH64: ['swrast'], - RISCV64: ['swrast'], + X86_64: [default_renderer], + POWER: [default_renderer], + AARCH64: [default_renderer], + RISCV64: [default_renderer], } + if LooseVersion(self.version) < LooseVersion('22'): # swr driver support removed in Mesa 22.0 arch_gallium_drivers[X86_64].append('swr') From d1b0a4b61ea18a8c0b13896c84b4553b6871fd3b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mikael=20=C3=96hman?= Date: Fri, 20 Jun 2025 15:41:13 +0200 Subject: [PATCH 2/2] Update easybuild/easyblocks/m/mesa.py Co-authored-by: Simon Branford <4967+branfosj@users.noreply.github.com> --- easybuild/easyblocks/m/mesa.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyblocks/m/mesa.py b/easybuild/easyblocks/m/mesa.py index ea074798d28..f4cff66043d 100644 --- a/easybuild/easyblocks/m/mesa.py +++ b/easybuild/easyblocks/m/mesa.py @@ -65,7 +65,7 @@ def __init__(self, *args, **kwargs): if not gallium_drivers: # Add appropriate Gallium drivers for current architecture arch = get_cpu_architecture() - if LooseVersion(self.version) < LooseVersion('25'): + if LooseVersion(self.version) >= LooseVersion('25'): default_renderer = 'llvmpipe' else: default_renderer = 'swrast'