Thanks for the alert, fisch02 .
I had to change llvm-minimal-git also. My updates from the 3rd for both llvm-minimal-git & mesa-minimal-git have solved this completley.
Git Clone URL: | https://aur.archlinux.org/mesa-minimal-git.git (read-only, click to copy) |
---|---|
Package Base: | mesa-minimal-git |
Description: | an open-source implementation of the OpenGL specification, stripped down git version |
Upstream URL: | https://www.mesa3d.org |
Licenses: | custom |
Conflicts: | libva-mesa-driver, mesa, mesa-vdpau, vulkan-intel, vulkan-mesa-layer, vulkan-nouveau, vulkan-radeon, vulkan-swrast |
Provides: | libva-mesa-driver, mesa, mesa-vdpau, opengl-driver, vulkan-driver, vulkan-intel, vulkan-mesa-layer, vulkan-radeon, vulkan-swrast |
Submitter: | shoober420 |
Maintainer: | Lone_Wolf |
Last Packager: | Lone_Wolf |
Votes: | 11 |
Popularity: | 0.79 |
First Submitted: | 2020-12-10 00:38 (UTC) |
Last Updated: | 2024-05-14 14:42 (UTC) |
Thanks for the alert, fisch02 .
I had to change llvm-minimal-git also. My updates from the 3rd for both llvm-minimal-git & mesa-minimal-git have solved this completley.
Build is currently broken with meson 1.2.2 , don't upgrade that package for the time being.
see https://gitlab.freedesktop.org/mesa/mesa/-/issues/9908 and https://bugs.archlinux.org/task/79821
The issue also affected repo mesa and the repo meson package is patched to work for building mesa. Upgrade to meson 1.2.2-2 works fine.
This package currently won't build without removing the last two md5sums and sha512sums. These weren't removed when the patches for llvm18 got deleted in the last commit. Git revert would be a more time efficient + less error-prone solution to revert this kind of temporary changes. Btw. thanks for your work maintaining this package. :)
Works fine now (even without line 44, the preceding local declaration of _var
). Thanks for the quick fix!
The abort was found to be caused by branches were VERSION doesn't include newline chars.
read command in pkgver() adjusted to work with such input.
looking into it, see https://bbs.archlinux.org/viewtopic.php?id=288737
pkgver() (and the entire build process) fails without error message when getting Mesa from a non-default branch (e.g. [...]/mesa.git#branch=23.2
).
I've traced the error back to line 44: read -r _ver <VERSION
Replacing the current method with the old one, i.e.
local _ver
_ver=$(<VERSION)
fixes the issue.
Build order
llvm-minimal-git
spirv-headers-git
spirv-tools-git
spirv-llvm-translator-minimal-git
libclc-minimal-git
glslang-minimal-git
mesa-minimal-git
glslang-minimal-git must be built after spirv-tools-git and before mesa-minimal-git
Build frequency
I aim to build everything (including the lib32 part) atleast once a week.
How often you build this is a personal choice, but once a month is in my opinion the absolute maximum .
In that timeframe mesa will have seen almost 1k commits, llvm/clang gets more.
rusticl now works with radeonsi, make sure to rebuild libclc-minimal-git . Also don't forget to set RUSTICLE_ENABLE .
$ RUSTICL_ENABLE=radeonsi clinfo --list
Platform #0: rusticl
`-- Device #0: AMD Radeon RX 580 Series (polaris10, LLVM 17.0.0, DRM 3.49, 6.2.10-arch1-1)
$
I stay close to archlinux default vars as listed in https://github.com/archlinux/svntogit-packages/blob/packages/pacman/trunk/makepkg.conf . I do replace -march=x86-64 -mtune=generic
with -march=native
, build with gcc and use ccache .
As for build order : 1.spirv-headers-git 2.spirv-tools-git 3.llvm-minimal-git 4.libclc-minimal-git 5.mesa-minimal-git
If libclc-minimal-git build fails there's a problem with the llvm-minimal-git build .
Pinned Comments
Lone_Wolf commented on 2023-05-22 12:07 (UTC) (edited on 2024-03-30 13:58 (UTC) by Lone_Wolf)
Build order
glslang-minimal-git must be built after spirv-tools-git and before mesa-minimal-git
Build frequency
I aim to build everything (including the lib32 part) atleast once a week.
How often you build this is a personal choice, but once a month is in my opinion the absolute maximum .
In that timeframe mesa will have seen almost 1k commits, llvm/clang gets more.
Lone_Wolf commented on 2021-01-22 18:36 (UTC) (edited on 2021-01-22 18:39 (UTC) by Lone_Wolf)
Why does this package hard depend on llvm-minimal-git ?
performance
archlinux repo packages are build with
-march=x86-64 -mtune=generic
which works on lots of machines but makes limited use of modern processor capabilities. For many packages this has little impact, but with llvm my experience is different.My local builds for llvm / mesa are done with
-march=native
and this has a noticeable effect on their performance.How big the benefit of this is depends heavily on the exact hardware you use. Worse, the software setup also impacts this. The only way to find out if it benefits your system/software setup is to try it out yourself.
easier maintenance and troubleshooting
Since i started my first mesa trunk package late in 2010 I have maintained versions without any llvm, one llvm implementation, split versions, singular versions, versions supporting multiple llvm implementations , switch from libgl hacks libglvnd to allow mesa & nvidia to cooperate etc.
Depending on one llvm variant in a non-splitted singular version results in a simple PKGBUILD that is easy to maintain.
Troubleshooting is also much easier if maintainer uses the same llvm variant as users.
If people feel those reasons are not good enough to hard depend on llvm-minimal-git , maybe I should transfer ownership .
Lone_Wolf commented on 2021-01-09 15:02 (UTC)
Why does this exist ?
Basically mesa/mesa-git build almost everything they can build.
This package tries to build just enough so everyone can use it, but disables older and/or unused components.
Check https://bbs.archlinux.org/viewtopic.php?id=261629 for a discussion about this package.