From f239887292f15c7ff37231f26caac92b4ba23424 Mon Sep 17 00:00:00 2001 From: Rudi Heitbaum Date: Sat, 10 May 2025 07:18:34 +0000 Subject: [PATCH 1/3] mesa: host builds with shared-llvm=disabled allows mesa_clc to be portable between build trees and build hosts --- packages/graphics/mesa/package.mk | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/graphics/mesa/package.mk b/packages/graphics/mesa/package.mk index 1ad886fa32..c3d626358a 100644 --- a/packages/graphics/mesa/package.mk +++ b/packages/graphics/mesa/package.mk @@ -23,7 +23,8 @@ PKG_MESON_OPTS_HOST="-Dglvnd=disabled \ -Dgallium-vdpau=disabled \ -Dplatforms= \ -Dglx=disabled \ - -Dvulkan-drivers=" + -Dvulkan-drivers= \ + -Dshared-llvm=disabled" PKG_MESON_OPTS_TARGET="-Dgallium-drivers=${GALLIUM_DRIVERS// /,} \ -Dgallium-extra-hud=false \ From be180fa5057d31fbd70846b2102078b72ab059db Mon Sep 17 00:00:00 2001 From: Rudi Heitbaum Date: Sun, 11 May 2025 23:24:15 +0000 Subject: [PATCH 2/3] mesa: for host builds always build panfrost_compile --- packages/graphics/mesa/package.mk | 22 +++++++--------------- 1 file changed, 7 insertions(+), 15 deletions(-) diff --git a/packages/graphics/mesa/package.mk b/packages/graphics/mesa/package.mk index c3d626358a..90b935a6d6 100644 --- a/packages/graphics/mesa/package.mk +++ b/packages/graphics/mesa/package.mk @@ -24,7 +24,8 @@ PKG_MESON_OPTS_HOST="-Dglvnd=disabled \ -Dplatforms= \ -Dglx=disabled \ -Dvulkan-drivers= \ - -Dshared-llvm=disabled" + -Dshared-llvm=disabled \ + -Dtools=panfrost" PKG_MESON_OPTS_TARGET="-Dgallium-drivers=${GALLIUM_DRIVERS// /,} \ -Dgallium-extra-hud=false \ @@ -62,15 +63,9 @@ if listcontains "${GRAPHIC_DRIVERS}" "etnaviv"; then PKG_DEPENDS_TARGET+=" pycparser:host" fi -if listcontains "${GRAPHIC_DRIVERS}" "iris"; then +if listcontains "${GRAPHIC_DRIVERS}" "(iris|panfrost)"; then PKG_DEPENDS_TARGET+=" mesa:host" - PKG_MESON_OPTS_TARGET+=" -Dmesa-clc=system" -fi - -if listcontains "${GRAPHIC_DRIVERS}" "panfrost"; then - PKG_DEPENDS_TARGET+=" mesa:host" - PKG_MESON_OPTS_HOST+=" -Dtools=panfrost" - PKG_MESON_OPTS_TARGET+=" -Dprecomp-compiler=system -Dmesa-clc=system" + PKG_MESON_OPTS_TARGET+=" -Dmesa-clc=system -Dprecomp-compiler=system" fi if listcontains "${GRAPHIC_DRIVERS}" "(nvidia|nvidia-ng)" || @@ -124,11 +119,8 @@ else fi makeinstall_host() { - mkdir -p "${TOOLCHAIN}/bin" - cp -a src/compiler/clc/mesa_clc "${TOOLCHAIN}/bin" - cp -a src/compiler/spirv/vtn_bindgen2 "${TOOLCHAIN}/bin" + host_files="src/compiler/clc/mesa_clc src/compiler/spirv/vtn_bindgen2 src/panfrost/clc/panfrost_compile" - if listcontains "${GRAPHIC_DRIVERS}" "panfrost"; then - cp -a src/panfrost/clc/panfrost_compile "${TOOLCHAIN}/bin" - fi + mkdir -p "${TOOLCHAIN}/bin" + cp -a ${host_files} "${TOOLCHAIN}/bin" } From 68261acd2f7e01d1380fda036cbac33e2aff7b83 Mon Sep 17 00:00:00 2001 From: Rudi Heitbaum Date: Sun, 11 May 2025 23:44:50 +0000 Subject: [PATCH 3/3] tools/docker/noble/Dockerfile: add upx-ucl to allow binary compression of mesa:host tools --- tools/docker/noble/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/docker/noble/Dockerfile b/tools/docker/noble/Dockerfile index f2868e5cdf..2fca200f68 100644 --- a/tools/docker/noble/Dockerfile +++ b/tools/docker/noble/Dockerfile @@ -21,7 +21,7 @@ RUN apt-get install -y \ curl bash bc gcc-14 cpp-14 sed patch patchutils tar bzip2 gzip xz-utils zstd perl gawk gperf zip \ unzip diffutils lzop make file g++-14 xfonts-utils xsltproc default-jre-headless python3 \ libc6-dev libncurses5-dev libjson-perl libxml-parser-perl libparse-yapp-perl rdfind \ - golang-1.23-go git openssh-client rsync \ + golang-1.23-go git openssh-client rsync upx-ucl \ --no-install-recommends \ && ln -s /usr/lib/go-1.23 /usr/lib/go \ && ln -s /usr/lib/go-1.23/bin/go /usr/bin/go \