On Thu, Mar 06, 2025 at 11:00:04AM +0100, Philipp Zabel wrote:
> https://docs.mesa3d.org/relnotes/25.0.0.html
> https://docs.mesa3d.org/relnotes/25.0.1.html
>
> Signed-off-by: Philipp Zabel <[email protected]>
> ---
> rules/host-mesalib.in | 7 +++----
> rules/host-mesalib.make | 25 +++++++++++++++++--------
> rules/mesalib.in | 31 +++++++++++++++++++++++++------
> rules/mesalib.make | 17 +++++++++++++----
> 4 files changed, 58 insertions(+), 22 deletions(-)
>
> diff --git a/rules/host-mesalib.in b/rules/host-mesalib.in
> index 22842f05e3f3..b67871353da7 100644
> --- a/rules/host-mesalib.in
> +++ b/rules/host-mesalib.in
> @@ -3,12 +3,11 @@
> config HOST_MESALIB
> tristate
> default y if ALLYES
> - select HOST_CLANG if HOST_MESALIB_INTEL_CLC
> select HOST_EXPAT
> - select HOST_LIBCLC if HOST_MESALIB_INTEL_CLC
> + select HOST_LIBCLC if HOST_MESALIB_CLC
> + select HOST_LLVM if HOST_MESALIB_CLC
> select HOST_MAKEDEPEND
> select HOST_MESON
> - select HOST_SPIRV_LLVM_TRANSLATOR if HOST_MESALIB_INTEL_CLC
> select HOST_SYSTEM_PYTHON3
> select HOST_SYSTEM_PYTHON3_MAKO
> select HOST_SYSTEM_PYTHON3_PYYAML
> @@ -16,7 +15,7 @@ config HOST_MESALIB
>
> if HOST_MESALIB
>
> -config HOST_MESALIB_INTEL_CLC
> +config HOST_MESALIB_CLC
> bool
>
> endif
> diff --git a/rules/host-mesalib.make b/rules/host-mesalib.make
> index 84acd8ea2b9e..030f0ef31414 100644
> --- a/rules/host-mesalib.make
> +++ b/rules/host-mesalib.make
> @@ -20,6 +20,7 @@ HOST_MESALIB_CONF_OPT := \
> $(HOST_MESON_OPT) \
> -Dallow-kcmp=enabled \
> -Damd-use-llvm=false \
> + -Damdgpu-virtio=false \
> -Dandroid-libbacktrace=disabled \
> -Dandroid-strict=true \
> -Dandroid-stub=false \
> @@ -65,26 +66,32 @@ HOST_MESALIB_CONF_OPT := \
> -Dhtml-docs=disabled \
> -Dhtml-docs-path= \
> -Dimagination-srv=false \
> - -Dinstall-intel-clc=$(call ptx/truefalse,
> PTXCONF_HOST_MESALIB_INTEL_CLC) \
> + -Dinstall-intel-clc=false \
> -Dinstall-intel-gpu-tests=false \
> - -Dintel-clc=$(call ptx/ifdef,
> PTXCONF_HOST_MESALIB_INTEL_CLC,enabled,system) \
> + -Dinstall-mesa-clc=$(call ptx/truefalse, PTXCONF_HOST_MESALIB_CLC) \
> + -Dinstall-precomp-compiler=false \
> + -Dintel-bvh-grl=true \
> + -Dintel-clc=system \
> + -Dintel-elk=true \
> -Dintel-rt=disabled \
> -Dlegacy-x11=none \
> -Dlibunwind=disabled \
> - -Dllvm=$(call ptx/endis, PTXCONF_HOST_MESALIB_INTEL_CLC)d \
> + -Dllvm=$(call ptx/endis, PTXCONF_HOST_MESALIB_CLC)d \
> -Dllvm-orcjit=false \
> -Dlmsensors=disabled \
> + -Dmesa-clc=$(call ptx/ifdef, PTXCONF_HOST_MESALIB_CLC,enabled,auto) \
> -Dmicrosoft-clc=disabled \
> -Dmin-windows-version=8 \
> -Dmoltenvk-dir= \
> - -Dopencl-spirv=false \
> -Dopengl=true \
> -Dosmesa=false \
> -Dperfetto=false \
> -Dplatform-sdk-version=25 \
> -Dplatforms= \
> -Dpower8=disabled \
> + -Dprecomp-compiler=system \
> -Dradv-build-id='' \
> + -Dselinux=false \
> -Dshader-cache=disabled \
> -Dshader-cache-default=true \
> -Dshader-cache-max-size=1G \
> @@ -113,16 +120,18 @@ HOST_MESALIB_CONF_OPT := \
>
> HOST_MESALIB_MAKE_OPT := \
> src/compiler/glsl/glsl_compiler
> -ifdef PTXCONF_HOST_MESALIB_INTEL_CLC
> +ifdef PTXCONF_HOST_MESALIB_CLC
> HOST_MESALIB_MAKE_OPT += \
> - src/intel/compiler/intel_clc
> + src/compiler/clc/mesa_clc \
> + src/compiler/spirv/vtn_bindgen
> endif
>
> $(STATEDIR)/host-mesalib.install:
> @$(call targetinfo)
> install -D -m755
> $(HOST_MESALIB_DIR)-build/src/compiler/glsl/glsl_compiler
> $(HOST_MESALIB_PKGDIR)/usr/bin/mesa/glsl_compiler
> -ifdef PTXCONF_HOST_MESALIB_INTEL_CLC
> - install -D -m755 $(HOST_MESALIB_DIR)-build/src/intel/compiler/intel_clc
> $(HOST_MESALIB_PKGDIR)/usr/bin/intel_clc
> +ifdef PTXCONF_HOST_MESALIB_CLC
> + install -D -m755 $(HOST_MESALIB_DIR)-build/src/compiler/clc/mesa_clc
> $(HOST_MESALIB_PKGDIR)/usr/bin/mesa_clc
> + install -D -m755
> $(HOST_MESALIB_DIR)-build/src/compiler/spirv/vtn_bindgen
> $(HOST_MESALIB_PKGDIR)/usr/bin/vtn_bindgen
> endif
> @$(call touch)
>
> diff --git a/rules/mesalib.in b/rules/mesalib.in
> index 943ba2e14fde..2b902e1f4b9f 100644
> --- a/rules/mesalib.in
> +++ b/rules/mesalib.in
> @@ -4,7 +4,7 @@ menuconfig MESALIB
> tristate
> prompt "mesa "
> select HOST_MESALIB
> - select HOST_MESALIB_INTEL_CLC if MESALIB_INTEL_CLC
> + select HOST_MESALIB_CLC if MESALIB_CLC
> select HOST_MESON
> select HOST_MAKEDEPEND
> select HOST_SYSTEM_PYTHON3
> @@ -56,7 +56,7 @@ if MESALIB
> config MESALIB_DRI3
> bool
>
> -config MESALIB_INTEL_CLC
> +config MESALIB_CLC
> bool
>
> config MESALIB_LLVM
> @@ -126,7 +126,7 @@ config MESALIB_DRI_PANFROST
>
> config MESALIB_DRI_IRIS
> bool
> - select MESALIB_INTEL_CLC
> + select MESALIB_CLC
> select MESALIB_XMLCONFIG
> prompt "iris"
>
> @@ -146,7 +146,7 @@ config MESALIB_DRI_ASAHI
>
> config MESALIB_DRI_CROCUS
> bool
> - select MESALIB_INTEL_CLC
> + select MESALIB_CLC
> select MESALIB_XMLCONFIG
> prompt "crocus"
>
> @@ -268,13 +268,13 @@ config MESALIB_VULKAN_BROADCOM
>
> config MESALIB_VULKAN_INTEL
> bool
> - select MESALIB_INTEL_CLC
> + select MESALIB_CLC
> select MESALIB_XMLCONFIG
> prompt "Intel (Anvil)"
>
> config MESALIB_VULKAN_INTEL_HASVK
> bool
> - select MESALIB_INTEL_CLC
> + select MESALIB_CLC
> select MESALIB_XMLCONFIG
> prompt "Intel (hasvk)"
>
> @@ -296,6 +296,21 @@ config MESALIB_VULKAN_VIRTIO
> select MESALIB_XMLCONFIG
> prompt "Virtio-GPU Venus"
>
> +config MESALIB_VULKAN_NOUVEAU
> + bool
> + # needs bindgen
> + depends on BROKEN
> + prompt "nouveau"
> +
> +config MESALIB_VULKAN_ASAHI
> + bool
> + depends on MESALIB_DRI_ASAHI
> + prompt "asahi"
> +
> +config MESALIB_VULKAN_GFXSTREAM
> + bool
> + prompt "gfxstream"
> +
> comment "Vulkan layers"
>
> config MESALIB_VULKAN_DEVICE_SELECT
> @@ -314,6 +329,10 @@ config MESALIB_VULKAN_SCREENSHOT
> bool
> prompt "Screenshot layer"
>
> +config MESALIB_VULKAN_VRAM_REPORT_LIMIT
> + bool
> + prompt "VRAM report limit layer"
> +
> config MESALIB_SHADER_CACHE
> bool
> prompt "enable shader cache"
> diff --git a/rules/mesalib.make b/rules/mesalib.make
> index 3b3766b6af5f..f35682db3756 100644
> --- a/rules/mesalib.make
> +++ b/rules/mesalib.make
> @@ -14,8 +14,8 @@ PACKAGES-$(PTXCONF_MESALIB) += mesalib
> #
> # Paths and names
> #
> -MESALIB_VERSION := 24.3.4
> -MESALIB_MD5 := c64b7e2b4f1c7782c41bf022edbb365c
> +MESALIB_VERSION := 25.0.1
> +MESALIB_MD5 := 3c317f5e15f5b6f7dd07591a9544d1f9
> MESALIB := mesa-$(MESALIB_VERSION)
> MESALIB_SUFFIX := tar.xz
> MESALIB_URL := \
> @@ -128,6 +128,9 @@ MESALIB_VULKAN_DRIVERS-$(PTXCONF_MESALIB_VULKAN_PANFROST)
> += panfrost
> endif
> MESALIB_VULKAN_DRIVERS-$(PTXCONF_MESALIB_VULKAN_SWRAST) +=
> swrast
> MESALIB_VULKAN_DRIVERS-$(PTXCONF_MESALIB_VULKAN_VIRTIO) +=
> virtio
> +MESALIB_VULKAN_DRIVERS-$(PTXCONF_MESALIB_VULKAN_NOUVEAU) += nouveau
> +MESALIB_VULKAN_DRIVERS-$(PTXCONF_MESALIB_VULKAN_ASAHI) += asahi
That one is only available on ARM64 hardware right? So maybe restrict it to
that.
> +MESALIB_VULKAN_DRIVERS-$(PTXCONF_MESALIB_VULKAN_GFXSTREAM) += gfxstream
Fails to build on ARMv7 with:
../mesa-25.0.1/src/gfxstream/guest/vulkan_enc/ResourceTracker.cpp:4905:23:
error: format '%p' expects argument of type 'void*', but argument 4 has type
'VkFence' {aka 'long long unsigned int'} [-Werror=format=]
We should probably only build it for 64-bit architectures
(PTXCONF_ARCH_LP64). I don't see it beeing used anywhere else anyways.
Michael
>
> MESALIB_VULKAN_LIBS-y = $(subst amd,radeon,$(subst
> swrast,lvp,$(MESALIB_VULKAN_DRIVERS-y)))
>
> @@ -135,8 +138,9 @@
> MESALIB_VULKAN_LAYERS-$(PTXCONF_MESALIB_VULKAN_DEVICE_SELECT) +=
> device-select
> MESALIB_VULKAN_LAYERS-$(PTXCONF_MESALIB_VULKAN_INTEL_NULLHW) += intel-nullhw
> MESALIB_VULKAN_LAYERS-$(PTXCONF_MESALIB_VULKAN_OVERLAY) +=
> overlay
> MESALIB_VULKAN_LAYERS-$(PTXCONF_MESALIB_VULKAN_SCREENSHOT) += screenshot
> +MESALIB_VULKAN_LAYERS-$(PTXCONF_MESALIB_VULKAN_VRAM_REPORT_LIMIT) += \
> + vram-report-limit
>
> -MESALIB_LIBS-y := libglapi
> MESALIB_LIBS-$(PTXCONF_MESALIB_GLX) += libGL
> MESALIB_LIBS-$(PTXCONF_MESALIB_GLES1) += libGLESv1_CM
> MESALIB_LIBS-$(PTXCONF_MESALIB_GLES2) += libGLESv2
> @@ -204,28 +208,33 @@ MESALIB_CONF_OPT := \
> -Dglx-direct=true \
> -Dglx-read-only-text=false \
> -Dgpuvis=false \
> + -Dinstall-mesa-clc=false \
> + -Dinstall-precomp-compiler=false \
> -Dhtml-docs=disabled \
> -Dhtml-docs-path= \
> -Dimagination-srv=false \
> -Dinstall-intel-clc=false \
> -Dinstall-intel-gpu-tests=false \
> + -Dintel-bvh-grl=false \
> -Dintel-clc=system \
> + -Dintel-elk=true \
> -Dintel-rt=disabled \
> -Dlegacy-x11=none \
> -Dlibunwind=disabled \
> -Dllvm=$(call ptx/endis, PTXCONF_MESALIB_LLVM)d \
> -Dllvm-orcjit=false \
> -Dlmsensors=$(call ptx/endis, PTXCONF_MESALIB_LMSENSORS)d \
> + -Dmesa-clc=$(call ptx/ifdef, PTXCONF_MESALIB_CLC,system,auto) \
> -Dmicrosoft-clc=disabled \
> -Dmin-windows-version=8 \
> -Dmoltenvk-dir= \
> - -Dopencl-spirv=false \
> -Dopengl=$(call ptx/truefalse, PTXCONF_MESALIB_OPENGL) \
> -Dosmesa=false \
> -Dperfetto=false \
> -Dplatform-sdk-version=25 \
> -Dplatforms=$(subst $(space),$(comma),$(MESALIBS_EGL_PLATFORMS-y)) \
> -Dpower8=disabled \
> + -Dprecomp-compiler=system \
> -Dradv-build-id='' \
> -Dshader-cache=$(call ptx/endis, PTXCONF_MESALIB_SHADER_CACHE)d \
> -Dshader-cache-default=true \
> --
> 2.39.5
>
>
>
--
Pengutronix e.K. | |
Steuerwalder Str. 21 | http://www.pengutronix.de/ |
31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |