Skip to content

MESA on arm/aarch64 lacks gallium drivers and fails to build with -Dlibunwind=true #2150

@terjekv

Description

@terjekv

easybuild/easyblocks/m/mesa.py specifies the following:

        if not gallium_drivers:
            # Add appropriate Gallium drivers for current architecture
            arch = get_cpu_architecture()
            arch_gallium_drivers = {
                'x86_64': ['swrast', 'swr'],
                'POWER': ['swrast'],
            }

this leads to:

== processing EasyBuild easyconfig /home/terjekv/easybuild/software/EasyBuild/4.2.2/easybuild/easyconfigs/m/Mesa/Mesa-20.0.2-GCCcore-9.3.0.eb
ERROR: Traceback (most recent call last):
  File "/home/terjekv/easybuild/software/EasyBuild/4.2.2/lib/python3.6/site-packages/easybuild/main.py", line 115, in build_and_install_software
    (ec_res['success'], app_log, err) = build_and_install_one(ec, init_env)
  File "/home/terjekv/easybuild/software/EasyBuild/4.2.2/lib/python3.6/site-packages/easybuild/framework/easyblock.py", line 3264, in build_and_install_one
    app = app_class(ecdict['ec'])
  File "/home/terjekv/easybuild/software/EasyBuild/4.2.2/lib/python3.6/site-packages/easybuild/easyblocks/m/mesa.py", line 66, in __init__
    self.log.debug('Gallium driver(s) included in the installation: %s' % ', '.join(gallium_drivers))
TypeError: can only join an iterable

Adding 'aarch64': ['swrast'] should be enough. Will patch and test.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions