Package Details: mesa-git 24.3.0_devel.194818.d3429a7e00d.d41d8cd-1

Git Clone URL: https://aur.archlinux.org/mesa-git.git (read-only, click to copy)
Package Base: mesa-git
Description: an open-source implementation of the OpenGL specification, git version
Upstream URL: https://www.mesa3d.org
Keywords: mesa wayland X11
Licenses: custom
Conflicts: libva-mesa-driver, mesa, mesa-libgl, mesa-vdpau, opencl-clover-mesa, opencl-rusticl-mesa, vulkan-intel, vulkan-mesa-layers, vulkan-nouveau, vulkan-radeon, vulkan-swrast, vulkan-virtio
Provides: libva-mesa-driver, mesa, mesa-libgl, mesa-vdpau, opencl-driver, opencl-rusticl-mesa, opengl-driver, vulkan-driver, vulkan-intel, vulkan-mesa-layers, vulkan-nouveau, vulkan-radeon, vulkan-swrast, vulkan-virtio
Submitter: Krejzi
Maintainer: rjahanbakhshi (Lone_Wolf)
Last Packager: Lone_Wolf
Votes: 182
Popularity: 0.39
First Submitted: 2014-06-19 21:33 (UTC)
Last Updated: 2024-09-15 20:40 (UTC)

Dependencies (53)

Required by (1302)

Sources (6)

Pinned Comments

Lone_Wolf commented on 2024-09-10 19:58 (UTC)

removed obsolete options, build now works again.

building opencl clover is disabled for now, see https://gitlab.freedesktop.org/mesa/mesa/-/issues/11863

Those that need opencl should use rusticl instead. Note that rusticl at runtime is disabled by default, see https://docs.mesa3d.org/envvars.html#rusticl-environment-variables for info about enabling it.

Lone_Wolf commented on 2020-04-23 12:26 (UTC) (edited on 2023-03-30 07:04 (UTC) by Lone_Wolf)

Mesa and llvm are closely tied together. Everytime the llvm mesa is built against changes/updates , mesa needs to be rebuilt.

I expect anyone building mesa-git against one of the llvm trunk variants to be able to do that themselves, but atleast some of the people that built against repo llvm don't understand how to deal with such a rebuild.

The rest of this post is meant for those people.

  • Verify if latest PKGBUILD requirements match llvm repo versions.
  • If they don't , post to alert the maintainer of this.
  • DELAY the update of llvm/clang suite and their lib32- counterparts
  • Once the PKGBUILD does match, download it.

Option A - best one

  • run pacman -Syu to ensure your system is in sync with your mirrror server
  • build mesa-git in a clean chroot

see https://wiki.archlinux.org/index.php/DeveloperWiki:Building_in_a_clean_chroot for the official way or https://aur.archlinux.org/packages/clean-chroot-manager for an alternative method.

  • install the newly built mesa-git
  • run pacman -Syu
  • ready

Option B - 2nd best

  • revert to repo mesa
  • pacman -Syu
  • build mesa-git
  • switch from mesa to mesa-git
  • ready

Lone_Wolf commented on 2019-07-09 13:43 (UTC) (edited on 2023-04-18 10:41 (UTC) by Lone_Wolf)

  • choosing which llvm variant to build against

WARNING : aur helpers don't support this method at all. They check .SRCINFO and that doesn't include this variable so it will use the default which is hardcoded to build against repo llvm.

Why would I want to use llvm development versions ?

For full functionality and latest features mesa trunk master needs to be build against llvm trunk master.
If you build against stable llvm things MAY work, but you're likely to lack some features and face stability issues.

Mesa-git uses a custom environment variable MESA_WHICH_LLVM for flexibility.
It has 4 values.
1 : aur llvm-minimal-git
2 : aur llvm-git
3: llvm-git from LordHeavy' unofficial repo
4: llvm from extra repo

I use value 1 95% of the time and set this in ~/.bash_rc .
If MESA_WHICH_LLVM is unset or empty, the default value of 4 (extra llvm) is used.

Lone_Wolf commented on 2018-01-30 14:06 (UTC) (edited on 2023-02-12 11:56 (UTC) by Lone_Wolf)

  • main difference with stable repo package
[extra]mesa is a split package, but aur mesa-git isn't.
Basically with aur mesa-git you get everything in one package, while [extra]/mesa allows you to leave out some parts if you don't want/need them.
Having a single package reduces maintenance and makes switching from stable to mesa-git rather easy, though reverting back to stable can be tricky.
  • meson settings
Those who compare PKGBUILDs will notice I don't use arch-meson, but meson setup.
I disagree with some of the settings made by arch-meson (especially the buildtype and enabling LTO by default) and feel using meson setup is cleaner.
  • how to update

run pacman Syu update non-repo packages for llvm if you use them

build mesa-git, log out , update mesa-git and restart X .

run glxinfo -B to verify basic OpenGL functionality

build lib32-mesa-git

run glxinfo32 -B to verify basic OpenGL functionality for multilib programs

Latest Comments

« First ‹ Previous 1 .. 46 47 48 49 50 51 52 53 54 55 56 .. 131 Next › Last »

Lone_Wolf commented on 2019-10-14 13:24 (UTC)

  • thanks, Terrence.

  • aufkrawall, I tried building xorg-server-git myself and the files where things go wrong don't appear to come from mesa or glvnd.

Have you tried building against stock mesa & glvnd ?

Terence commented on 2019-10-13 13:44 (UTC)

@Lone_Wolf I pushed a new version of https://aur.archlinux.org/packages/libglvnd-glesv2/ which contains the workaround.

aufkrawall commented on 2019-10-13 09:46 (UTC)

Could it be failure of building xorg-server-git with EGL errors is due to this as well? It fails here, despite of using libglvnd with included headers.

Lone_Wolf commented on 2019-10-12 21:37 (UTC) (edited on 2019-10-12 21:37 (UTC) by Lone_Wolf)

A temporary workaround: Remove "--disable-headers" from the PKGBUILD of libglvnd-git to install the header files.

That also works with libglvnd PKGBUILD, I now have a local libglvnd-with-headers package.

It looks like the commit won't be backported to mesa 19.2 , if people want I could upload it to aur.

If people want

pepster commented on 2019-10-12 11:47 (UTC)

Hi,

first, thanks for your efforts by maintaining this package.

This commit: https://gitlab.freedesktop.org/mesa/mesa/commit/34ba363ab0e231c2842c4a045dc51c5b1cd33401 removes important headers from mesa. At the moment, they are neither provided by libglvnd-git nor by libglvnd.

I don't know if this should be fixed here or in libglvnd(-git), because libglvnd-git disables the header on purpose, obviously to avoid conflicts with extra/mesa, which does still provide the header files.

A temporary workaround: Remove "--disable-headers" from the PKGBUILD of libglvnd-git to install the header files.

Lone_Wolf commented on 2019-09-28 20:58 (UTC)

Uploaded libglvnd12 and adjusted this package to use that.

Mesa detected during build the libglvnd 1.2 version and didn't create the conflicting files.

Will upload lib32-libglvnd12 & adjust lib32-mesa-git soon, probably tomorrow.

Lone_Wolf commented on 2019-09-28 19:38 (UTC) (edited on 2019-09-28 19:51 (UTC) by Lone_Wolf)

I (and previous maintainers) have always tried to built mesa-git against core/extra/community repos. If newer versions then in repos were needed, aur packages were created to solve issues.

libdrm-git is one such package. (it was created because mesa-git needed an unreleased version of libdrm several times over a few years).

The problem with testing repo is that users are supposed to use all of it or nothing .

Since testing also includes llvm 9 , I'd have to adjust mesa-git to check for llvm9 instead of 8.0.1 . That would make it impossible to build mesa-git against the default stable llvm 8.0.1 .

Depending on aur libglvnd-git could have been a solution, but that one removes the conflicting files.

Simplest solution might be to upload libglvnd12 based on the testing package and depend on that.

Perfecon commented on 2019-09-28 16:50 (UTC)

I have the same issue as @yurikoles on latest Arch testing. mesa-git and libglvnd-gles2 (and also the same for libglvnd from repos) conflict because of 'egl.pc' and 'gl.pc'

yurikoles commented on 2019-09-28 15:55 (UTC)

Hi @Lone_Wolf,

Yes, and I think that most users of this package is also on testing.