From 501a33441d6376328bee544417c4c574fdfe2cd8 Mon Sep 17 00:00:00 2001 From: classabbyamp Date: Mon, 8 Dec 2025 21:42:45 -0500 Subject: [PATCH 1/6] common/scripts: add script to generate distfiles from meson wrap files useful for mesa, where there are a signficant number of crates referenced via meson wrap files, but this could be generally useful for other meson-based packages that do a similar thing for vendored libraries. This could be further extended in the future to add support for git/hg/svn wraps by adding subclasses of `Wrap` that support those metadata options. setting `MESON_PACKAGE_CACHE_DIR` allows meson to look for tarballs for wraps it needs automatically. --- Manual.md | 5 +- common/build-helper/meson.sh | 3 + common/scripts/gen-wrap-distfiles.py | 120 +++++++++++++++++++++++++++ 3 files changed, 127 insertions(+), 1 deletion(-) create mode 100755 common/scripts/gen-wrap-distfiles.py diff --git a/Manual.md b/Manual.md index f85137f40edb61..99add3036c1772 100644 --- a/Manual.md +++ b/Manual.md @@ -1107,7 +1107,10 @@ additional paths to be searched when linking target binaries to be introspected. - `meson` creates a cross file, `${XBPS_WRAPPERDIR}/meson/xbps_meson.cross`, which configures meson for cross builds. This is particularly useful for building packages that wrap meson invocations (e.g., `python3-pep517` packages that use a meson backend) and is added by default -for packages that use the `meson` build style. +for packages that use the `meson` build style. It also sets `$MESON_PACKAGE_CACHE_DIR` to +`$XBPS_SRCDISTDIR/$pkgname-$version/` so libraries specified as meson wraps can be added to +distfiles and will be automatically used by meson. See also `common/scripts/gen-wrap-distfiles.py` +for a script that generates distfiles entries for wraps. - `numpy` configures the environment for cross-compilation of python packages that provide compiled extensions linking to NumPy C libraries. If the `meson` build helper is also diff --git a/common/build-helper/meson.sh b/common/build-helper/meson.sh index 79e22a2bf14839..69b30555fce672 100644 --- a/common/build-helper/meson.sh +++ b/common/build-helper/meson.sh @@ -1,6 +1,9 @@ # This build helper writes a Meson cross-file, allowing other build styles # to properly drive cross-builds in Meson when appropriate +# allows meson to automatically unpack wrapped dependencies specified in distfiles +export MESON_PACKAGE_CACHE_DIR="${XBPS_SRCDISTDIR}/${pkgname}-${version}/" + # Action is only taken for cross builds [ -z "$CROSS_BUILD" ] && return 0 diff --git a/common/scripts/gen-wrap-distfiles.py b/common/scripts/gen-wrap-distfiles.py new file mode 100755 index 00000000000000..4efe93e2372c99 --- /dev/null +++ b/common/scripts/gen-wrap-distfiles.py @@ -0,0 +1,120 @@ +#!/usr/bin/python3 + +import sys +from abc import ABC, abstractmethod +from configparser import ConfigParser +from dataclasses import dataclass +from pathlib import Path + +@dataclass +class Wrap(ABC): + src_path: Path + + directory: str | None = None + patch_url: str | None = None + patch_fallback_url: str | None = None + patch_filename: str | None = None + patch_hash: str | None = None + patch_directory: str | None = None + diff_files: str | None = None + method: str | None = None + + @property + @abstractmethod + def distfile(self): + raise NotImplementedError + + @property + @abstractmethod + def checksum(self): + raise NotImplementedError + + @property + @abstractmethod + def filename(self): + raise NotImplementedError + + +@dataclass +class WrapFile(Wrap): + source_url: str | None = None + source_fallback_url: str | None = None + source_filename: str | None = None + source_hash: str | None = None + lead_directory_missing: str | None = None + + @property + def distfile(self): + if self.source_url: + return f"{self.source_url}>{self.filename}" + raise ValueError(f"missing source_url in wrap {self.src_path}") + + @property + def checksum(self): + if self.source_hash: + return self.source_hash + raise ValueError(f"missing source_hash in wrap {self.src_path}") + + @property + def filename(self): + if self.source_filename: + return self.source_filename + raise ValueError(f"missing source_filename in wrap {self.src_path}") + + +def read_wrap(p: Path) -> Wrap: + wrap = ConfigParser() + with p.open() as f: + wrap.read_file(f) + + for sec in wrap.sections(): + if sec.startswith("wrap-"): + break + else: + raise ValueError(f"missing 'wrap-*' section in wrap {p}") + + match sec: + case "wrap-file": + cls = WrapFile + case "wrap-git": + raise NotImplementedError + case "wrap-hg": + raise NotImplementedError + case "wrap-svn": + raise NotImplementedError + case _: + raise NotImplementedError + + return cls(src_path=p, **dict(wrap.items(sec))) + + +def print_list(var: str, contents: list[str]): + print(f"""{var}+=" + {"\n ".join(contents)} +\"""") + + +if __name__ == "__main__": + distfiles = [] + checksums = [] + skip_extracts = [] + + if len(sys.argv[1:]) < 1: + print(f"usage: {sys.argv[0]} ") + exit() + + for arg in sys.argv[1:]: + wrap_path = Path(arg) + if wrap_path.is_file(): + try: + wrap = read_wrap(wrap_path) + + distfiles.append(wrap.distfile) + checksums.append(wrap.checksum) + skip_extracts.append(wrap.filename) + except ValueError as e: + print("=> ERROR:", e, file=sys.stderr) + + print_list("distfiles", distfiles) + print_list("checksum", checksums) + print_list("skip_extraction", skip_extracts) From 84e0aa37efd0bd682677080b63b90ff3db9168c0 Mon Sep 17 00:00:00 2001 From: onlylunix Date: Wed, 19 Nov 2025 02:46:46 +0300 Subject: [PATCH 2/6] DirectX-Headers: update to 1.618.2 --- srcpkgs/DirectX-Headers/template | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/srcpkgs/DirectX-Headers/template b/srcpkgs/DirectX-Headers/template index 6ee1865f202251..53f75573400f8c 100644 --- a/srcpkgs/DirectX-Headers/template +++ b/srcpkgs/DirectX-Headers/template @@ -1,6 +1,6 @@ # Template file for 'DirectX-Headers' pkgname=DirectX-Headers -version=1.616.0 +version=1.618.2 revision=1 archs="aarch64 x86_64" build_style=meson @@ -10,7 +10,7 @@ maintainer="Matthias von Faber " license="MIT" homepage="https://github.com/microsoft/DirectX-Headers" distfiles="https://github.com/microsoft/DirectX-Headers/archive/refs/tags/v${version}.tar.gz" -checksum=125f492802939b40223bfccb83badd3f599af2d3449613d6cb893720607b9025 +checksum=62004f45e2ab00cbb5c7f03c47262632c22fbce0a237383fc458d9324c44cf36 post_install() { vlicense LICENSE From c0b98180cc6b3e741cace14b60f8ae312a20ad74 Mon Sep 17 00:00:00 2001 From: onlylunix Date: Thu, 4 Dec 2025 16:45:49 +0300 Subject: [PATCH 3/6] mesa: update to 25.3.3 - 25.2.0 removes libxatracker - 25.3.0 removes mesa-vdpau --- common/shlibs | 1 - srcpkgs/libxatracker | 1 - srcpkgs/mesa-vdpau | 1 - srcpkgs/mesa/patches/musl-endian.patch | 12 +- srcpkgs/mesa/patches/musl.patch | 30 +--- srcpkgs/mesa/template | 196 ++++++++++++++----------- srcpkgs/removed-packages/template | 2 + 7 files changed, 126 insertions(+), 117 deletions(-) delete mode 120000 srcpkgs/libxatracker delete mode 120000 srcpkgs/mesa-vdpau diff --git a/common/shlibs b/common/shlibs index edfa20aace72f4..95c38543ed2fa5 100644 --- a/common/shlibs +++ b/common/shlibs @@ -1017,7 +1017,6 @@ libcryptui.so.0 libcryptui-3.4.0_1 libkeyutils.so.1 libkeyutils-1.5.5_1 libiptcdata.so.0 libiptcdata-1.0.4_1 libutempter.so.0 libutempter-1.1.5_1 -libxatracker.so.2 libxatracker-10.0.0_2 libtumbler-1.so.0 tumbler-4.9.2_1 libwebrtc-audio-coding-1.so.3 webrtc-audio-processing-1.3_1 libwebrtc-audio-processing-1.so.3 webrtc-audio-processing-1.3_1 diff --git a/srcpkgs/libxatracker b/srcpkgs/libxatracker deleted file mode 120000 index 1ad1bbec7ab303..00000000000000 --- a/srcpkgs/libxatracker +++ /dev/null @@ -1 +0,0 @@ -mesa \ No newline at end of file diff --git a/srcpkgs/mesa-vdpau b/srcpkgs/mesa-vdpau deleted file mode 120000 index 1ad1bbec7ab303..00000000000000 --- a/srcpkgs/mesa-vdpau +++ /dev/null @@ -1 +0,0 @@ -mesa \ No newline at end of file diff --git a/srcpkgs/mesa/patches/musl-endian.patch b/srcpkgs/mesa/patches/musl-endian.patch index 57b3cc3d09f8ee..5ca3f7d6cdca70 100644 --- a/srcpkgs/mesa/patches/musl-endian.patch +++ b/srcpkgs/mesa/patches/musl-endian.patch @@ -1,8 +1,8 @@ ---- a/src/util/u_endian.h 2017-12-21 18:31:22.000000000 +0100 -+++ b/src/util/u_endian.h 2017-12-26 09:22:52.597199480 +0100 -@@ -68,6 +68,16 @@ - - #define PIPE_ARCH_LITTLE_ENDIAN +--- a/src/util/u_endian.h 2025-09-30 15:31:39.114657163 +0300 ++++ b/src/util/u_endian.h 2025-09-30 15:22:18.962576906 +0300 +@@ -92,6 +92,16 @@ + #define UTIL_ARCH_LITTLE_ENDIAN 1 + #define UTIL_ARCH_BIG_ENDIAN 0 +#else +/* Musl libc */ @@ -16,4 +16,4 @@ + #endif - #endif + #if !defined(UTIL_ARCH_LITTLE_ENDIAN) || !defined(UTIL_ARCH_BIG_ENDIAN) diff --git a/srcpkgs/mesa/patches/musl.patch b/srcpkgs/mesa/patches/musl.patch index d50221dee72a34..a379a948017e8e 100644 --- a/srcpkgs/mesa/patches/musl.patch +++ b/srcpkgs/mesa/patches/musl.patch @@ -1,5 +1,5 @@ ---- a/src/util/rand_xor.c 2020-10-03 12:27:48.489024729 +0200 -+++ b/src/util/rand_xor.c 2020-10-03 12:31:05.927113521 +0200 +--- a/src/util/rand_xor.c 2025-09-30 15:31:17.368731386 +0300 ++++ b/src/util/rand_xor.c 2025-09-30 15:24:46.938064862 +0300 @@ -28,6 +28,7 @@ #if defined(HAVE_GETRANDOM) #include @@ -8,9 +8,9 @@ #include #include #endif ---- a/src/amd/vulkan/winsys/amdgpu/radv_amdgpu_winsys.h -+++ b/src/amd/vulkan/winsys/amdgpu/radv_amdgpu_winsys.h -@@ -30,6 +30,7 @@ +--- a/src/amd/vulkan/winsys/amdgpu/radv_amdgpu_winsys.h 2025-09-30 15:31:17.368731386 +0300 ++++ b/src/amd/vulkan/winsys/amdgpu/radv_amdgpu_winsys.h 2025-09-30 15:24:46.938064862 +0300 +@@ -13,6 +13,7 @@ #include #include @@ -18,23 +18,3 @@ #include "util/list.h" #include "util/rwlock.h" #include "ac_gpu_info.h" ---- a/src/gallium/frontends/nine/nine_debug.c 2020-03-06 07:46:48.278918421 +0100 -+++ b/src/gallium/frontends/nine/nine_debug.c 2020-03-06 07:51:32.919964119 +0100 -@@ -65,7 +65,7 @@ _nine_debug_printf( unsigned long flag, - { - static boolean first = TRUE; - static unsigned long dbg_flags = DBG_ERROR | DBG_WARN; -- unsigned long tid = 0; -+ pthread_t tid = 0; - - if (first) { - first = FALSE; -@@ -74,7 +74,7 @@ _nine_debug_printf( unsigned long flag, - - #if defined(HAVE_PTHREAD) - if (dbg_flags & DBG_TID) -- tid = (unsigned long)pthread_self(); -+ tid = pthread_self(); - #endif - - if (dbg_flags & flag) { diff --git a/srcpkgs/mesa/template b/srcpkgs/mesa/template index 23196421ce9fbe..b7fda3b6985310 100644 --- a/srcpkgs/mesa/template +++ b/srcpkgs/mesa/template @@ -1,52 +1,123 @@ # Template file for 'mesa' pkgname=mesa -version=25.1.9 +version=25.3.3 revision=1 build_style=meson -_llvmver=19 -_syn_version=2.0.68 -_proc_macro_version=1.0.86 -_quote_version=1.0.33 -_unicode_ident_version=1.0.12 -_paste_version=1.0.14 +build_helper="qemu" +_llvmver=21 #Disable LTO flag should be present, see https://gitlab.freedesktop.org/mesa/mesa/-/issues/6911 -configure_args="-Dglvnd=true -Dgbm=enabled -Degl=enabled +configure_args="-Dglvnd=enabled -Dgbm=enabled -Degl=enabled -Dlibunwind=disabled -Dgles1=enabled -Dgles2=enabled -Dglx=dri -Dlmsensors=enabled -Dplatforms=x11$(vopt_if wayland ,wayland) -Dllvm=enabled -Db_lto=false -Dcpp_std=gnu++17" hostmakedepends="gettext flex pkg-config python3-Mako glslang llvm${_llvmver} $(vopt_if wayland 'wayland-protocols wayland-devel') python3-pycparser python3-yaml" makedepends="elfutils-devel expat-devel libXdamage-devel - libXxf86vm-devel libdrm-devel libffi-devel libva-devel - libvdpau-devel libxshmfence-devel ncurses-devel zlib-devel + libXxf86vm-devel libdrm-devel libffi-devel libva-devel libdisplay-info + libxshmfence-devel ncurses-devel zlib-devel $(vopt_if wayland 'wayland-devel wayland-protocols') llvm${_llvmver}-devel libsensors-devel - libXrandr-devel libglvnd-devel libzstd-devel libxml2-devel lua53-devel - libarchive-devel" + libXrandr-devel libglvnd-devel libzstd-devel libxml2-devel lua54-devel + libarchive-devel libXext-devel libpng-devel" depends="libglvnd" short_desc="Open source implementation of OpenGL and Vulkan" maintainer="Orphaned " license="MIT, LGPL-2.1-or-later" homepage="https://www.mesa3d.org/" changelog="https://docs.mesa3d.org/relnotes.html" -distfiles="https://mesa3d.org/archive/mesa-${version}.tar.xz - https://crates.io/api/v1/crates/syn/${_syn_version}/download>syn-${_syn_version}.tar.gz - https://crates.io/api/v1/crates/proc-macro2/${_proc_macro_version}/download>proc-macro2-${_proc_macro_version}.tar.gz - https://crates.io/api/v1/crates/quote/${_quote_version}/download>quote-${_quote_version}.tar.gz - https://crates.io/api/v1/crates/unicode-ident/${_unicode_ident_version}/download>unicode-ident-${_unicode_ident_version}.tar.gz - https://crates.io/api/v1/crates/paste/${_paste_version}/download>paste-${_paste_version}.tar.gz" -checksum="412df33a1bb3c785ed698555a3972118a37c458e7accf6ae53f4bb87b3db454a - 901fa70d88b9d6c98022e23b4136f9f3e54e4662c3bc1bd1d84a42a9a0f0c1e9 +distfiles="https://mesa3d.org/archive/mesa-${version}.tar.xz" +checksum=05328b3891c000e6a110a3e7321d8bfbb21631d132bf86bd3d4a8f45c535ef6b + +# XXX: use `common/scripts/gen-wrap-distfiles.py masterdir-*/builddir/mesa-*/subprojects/*-rs.wrap` to generate +# BEGIN GENERATED +distfiles+=" + https://crates.io/api/v1/crates/bitflags/2.9.1/download>bitflags-2.9.1.tar.gz + https://crates.io/api/v1/crates/cfg-if/1.0.0/download>cfg-if-1.0.0.tar.gz + https://crates.io/api/v1/crates/equivalent/1.0.1/download>equivalent-1.0.1.tar.gz + https://crates.io/api/v1/crates/errno/0.3.12/download>errno-0.3.12.tar.gz + https://crates.io/api/v1/crates/hashbrown/0.14.1/download>hashbrown-0.14.1.tar.gz + https://crates.io/api/v1/crates/indexmap/2.2.6/download>indexmap-2.2.6.tar.gz + https://crates.io/api/v1/crates/libc/0.2.168/download>libc-0.2.168.tar.gz + https://crates.io/api/v1/crates/log/0.4.27/download>log-0.4.27.tar.gz + https://crates.io/api/v1/crates/once_cell/1.8.0/download>once_cell-1.8.0.tar.gz + https://crates.io/api/v1/crates/paste/1.0.14/download>paste-1.0.14.tar.gz + https://crates.io/api/v1/crates/pest/2.8.0/download>pest-2.8.0.tar.gz + https://crates.io/api/v1/crates/pest_derive/2.8.0/download>pest_derive-2.8.0.tar.gz + https://crates.io/api/v1/crates/pest_generator/2.8.0/download>pest_generator-2.8.0.tar.gz + https://crates.io/api/v1/crates/pest_meta/2.8.0/download>pest_meta-2.8.0.tar.gz + https://crates.io/api/v1/crates/proc-macro2/1.0.86/download>proc-macro2-1.0.86.tar.gz + https://crates.io/api/v1/crates/quote/1.0.35/download>quote-1.0.35.tar.gz + https://crates.io/api/v1/crates/remain/0.2.12/download>remain-0.2.12.tar.gz + https://crates.io/api/v1/crates/roxmltree/0.20.0/download>roxmltree-0.20.0.tar.gz + https://crates.io/api/v1/crates/rustc-hash/2.1.1/download>rustc-hash-2.1.1.tar.gz + https://crates.io/api/v1/crates/rustix/1.0.7/download>rustix-1.0.7.tar.gz + https://crates.io/api/v1/crates/syn/2.0.87/download>syn-2.0.87.tar.gz + https://crates.io/api/v1/crates/thiserror/2.0.11/download>thiserror-2.0.11.tar.gz + https://crates.io/api/v1/crates/thiserror-impl/2.0.11/download>thiserror-impl-2.0.11.tar.gz + https://crates.io/api/v1/crates/ucd-trie/0.1.6/download>ucd-trie-0.1.6.tar.gz + https://crates.io/api/v1/crates/unicode-ident/1.0.12/download>unicode-ident-1.0.12.tar.gz + https://crates.io/api/v1/crates/zerocopy/0.8.13/download>zerocopy-0.8.13.tar.gz + https://crates.io/api/v1/crates/zerocopy-derive/0.8.13/download>zerocopy-derive-0.8.13.tar.gz +" +checksum+=" + 1b8e56985ec62d17e9c1001dc89c88ecd7dc08e47eba5ec7c29c7b5eeecde967 + baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd + 5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5 + cea14ef9355e3beab063703aa9dab15afd25f0667c341310c1e5274bb1d0da18 + 7dfda62a12f55daeae5015f81b0baea145391cb4520f86c248fc615d72640d12 + 168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26 + 5aaeb2981e0606ca11d79718f8bb01164f1d6ed75080182d3abf017e6d244b6d + 13dc2df351e3202783a1fe0d44375f7295ffb4049267b0f3018346dc122a1d94 + 692fcb63b64b1758029e0a96ee63e049ce8c5948587f2f7208df04625e5f6b56 + de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c + 198db74531d58c70a361c42201efde7e2591e976d518caf7662a47dc5720e7b6 + d725d9cfd79e87dccc9341a2ef39d1b6f6353d68c4b33c177febbe1a402c97c5 + db7d01726be8ab66ab32f9df467ae8b1148906685bbe75c82d1e65d7f5b3f841 + 7f9f832470494906d1fca5329f8ab5791cc60beb230c74815dff541cbd2b5ca0 5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77 - 5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae + 291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef + 1ad5e011230cad274d0532460c5ab69828ea47ae75681b42a841663efffaf794 + 6c20b6793b5c2fa6553b250154b78d6d0db37e72700ae35fad9387a46f487c97 + 357703d41365b4b27c590e3ed91eabb1b663f07c4c084095e60cbed4362dff0d + c71e83d6afe7ff64890ec6b71d6a69bb8a610ab78ce364b3352876bb4c801266 + 25aa4ce346d03a6dcd68dd8b4010bcb74e54e62c90c573f394c46eae99aba32d + d452f284b73e6d76dd36758a0c8684b1d5be31f92b89d07fd5822175732206fc + 26afc1baea8a989337eeb52b6e72a039780ce45c3edfcc9c5b9d112feeb173c2 + ed646292ffc8188ef8ea4d1e0e0150fb15a5c2e12ad9b8fc191ae7a8a7f3c4b9 3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b - de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c" -skip_extraction="syn-${_syn_version}.tar.gz - proc-macro2-${_proc_macro_version}.tar.gz - quote-${_quote_version}.tar.gz - unicode-ident-${_unicode_ident_version}.tar.gz - paste-${_paste_version}.tar.gz" + 67914ab451f3bfd2e69e5e9d2ef3858484e7074d63f204fd166ec391b54de21d + 7988d73a4303ca289df03316bc490e934accf371af6bc745393cf3c2c5c4f25d +" +skip_extraction+=" + bitflags-2.9.1.tar.gz + cfg-if-1.0.0.tar.gz + equivalent-1.0.1.tar.gz + errno-0.3.12.tar.gz + hashbrown-0.14.1.tar.gz + indexmap-2.2.6.tar.gz + libc-0.2.168.tar.gz + log-0.4.27.tar.gz + once_cell-1.8.0.tar.gz + paste-1.0.14.tar.gz + pest-2.8.0.tar.gz + pest_derive-2.8.0.tar.gz + pest_generator-2.8.0.tar.gz + pest_meta-2.8.0.tar.gz + proc-macro2-1.0.86.tar.gz + quote-1.0.35.tar.gz + remain-0.2.12.tar.gz + roxmltree-0.20.0.tar.gz + rustc-hash-2.1.1.tar.gz + rustix-1.0.7.tar.gz + syn-2.0.87.tar.gz + thiserror-2.0.11.tar.gz + thiserror-impl-2.0.11.tar.gz + ucd-trie-0.1.6.tar.gz + unicode-ident-1.0.12.tar.gz + zerocopy-0.8.13.tar.gz + zerocopy-derive-0.8.13.tar.gz +" +# END GENERATED -build_helper="qemu" build_options="wayland" build_options_default="wayland" @@ -91,7 +162,6 @@ case "$XBPS_TARGET_MACHINE" in i686*|x86_64*) _have_intel=yes _have_vmware=yes - _have_nine=yes ;; armv[67]*|aarch64*) _have_arm=yes @@ -133,6 +203,10 @@ if [ "$_have_intel" ]; then subpackages+=" mesa-vulkan-intel" # transitional dummy packages subpackages+=" mesa-intel-dri" + + case "$XBPS_TARGET_MACHINE" in + x86_64*) configure_args+=" -Dintel-rt=enabled" ;; + esac fi if [ "$_have_nv" ]; then @@ -166,18 +240,10 @@ if [ "$_have_virgl" ]; then _vulkan_drivers+=",virtio" fi -if [ "$_have_nine" ]; then - configure_args+=" -Dgallium-nine=true" -fi - if [ "$_have_vmware" ]; then _gallium_drivers+=",svga" - configure_args+=" -Dgallium-xa=enabled" - subpackages+=" libxatracker" # transitional dummy packages subpackages+=" mesa-vmwgfx-dri" -else - configure_args+=" -Dgallium-xa=disabled" fi # enabled currently by amd drivers @@ -186,14 +252,14 @@ if [ "$_have_opencl" ]; then makedepends+=" clang${_llvmver} libclc${_llvmver} rust SPIRV-LLVM-Translator${_llvmver}-devel SPIRV-Tools-devel" subpackages+=" mesa-opencl" - configure_args+=" -Dgallium-opencl=icd -Dgallium-rusticl=true -Drust_std=2021" + configure_args+=" -Dgallium-rusticl=true -Drust_std=2021" fi if [ "$_have_hwdec" ]; then - configure_args+=" -Dgallium-vdpau=enabled -Dgallium-va=enabled" - subpackages+=" mesa-vaapi mesa-vdpau" + configure_args+=" -Dgallium-va=enabled" + subpackages+=" mesa-vaapi" else - configure_args+=" -Dgallium-vdpau=disabled -Dgallium-va=disabled" + configure_args+=" -Dgallium-va=disabled" fi if [ "$_have_d3d12" ]; then @@ -209,7 +275,7 @@ configure_args+=" ${_vulkan_drivers}" if [ "$_have_vulkan" ]; then _have_zink=yes - configure_args+=" -Dvulkan-layers=device-select,overlay" + configure_args+=" -Dvulkan-layers=device-select,overlay,screenshot,vram-report-limit,anti-lag" if [ "$_have_intel" ]; then configure_args+=",intel-nullhw" fi @@ -231,21 +297,6 @@ case "$XBPS_TARGET_MACHINE" in ppc*) configure_args+=" -Dpower8=false" ;; esac -_prepare_subproject() { - local subname=$1 - local subversion=$2 - vsrcextract -C subprojects/${subname}-${subversion} ${subname}-${subversion}.tar.gz - cp subprojects/packagefiles/${subname}/meson.build subprojects/${subname}-${subversion} -} - -post_extract() { - _prepare_subproject syn ${_syn_version} - _prepare_subproject proc-macro2 ${_proc_macro_version} - _prepare_subproject quote ${_quote_version} - _prepare_subproject unicode-ident ${_unicode_ident_version} - _prepare_subproject paste ${_paste_version} -} - post_configure() { if [ "$CROSS_BUILD" ]; then find -iname "*.ninja" -exec sed -i "{}" \ @@ -264,8 +315,10 @@ post_install() { local arch=${XBPS_TARGET_MACHINE%-*} local oarchs local olibdir="/usr/lib32/" + local owordsize=32 if [ "$XBPS_TARGET_WORDSIZE" = "32" ]; then olibdir="/usr/lib64/" + owordsize=64 fi case "${arch}" in aarch64) oarchs="armv6l armv7l";; @@ -281,7 +334,7 @@ post_install() { esac for oarch in $oarchs; do for icd in ${DESTDIR}/usr/share/vulkan/icd.d/*_icd.${arch}.json; do - sed "s#/usr/lib${XBPS_TARGET_WORDSIZE}/#${olibdir}#g" \ + sed "s#/usr/lib${XBPS_TARGET_WORDSIZE}/#${olibdir}#g; /library_arch/ s/${XBPS_TARGET_WORDSIZE}/${owordsize}/" \ ${icd} > ${icd/.${arch}/.${oarch}} done done @@ -313,9 +366,6 @@ libgbm-devel_package() { MesaLib-devel_package() { depends="mesa>=${version}_${revision} libgbm-devel>=${version}_${revision}" - if [ "$_have_vmware" ]; then - depends+=" libxatracker>=${version}_${revision}" - fi if [ "$_have_opencl" ]; then depends+=" mesa-opencl>=${version}_${revision}" fi @@ -326,30 +376,17 @@ MesaLib-devel_package() { vmove usr/lib/pkgconfig vmove usr/lib/libEGL_mesa.so vmove usr/lib/libGLX_mesa.so - if [ "$_have_vmware" ]; then - vmove usr/lib/libxatracker.so - fi if [ "$_have_opencl" ]; then - vmove usr/lib/libMesaOpenCL.so vmove usr/lib/libRusticlOpenCL.so fi } } -libxatracker_package() { - short_desc="Mesa XA tracker interface library" - pkg_install() { - vmove "usr/lib/libxatracker*.so.*" - } -} - mesa-opencl_package() { short_desc="Mesa implementation of OpenCL (r600+ only)" depends="libclc${_llvmver}" pkg_install() { vmove etc/OpenCL - vmove usr/lib/gallium-pipe - vmove "usr/lib/libMesaOpenCL.so.*" vmove "usr/lib/libRusticlOpenCL.so.*" } } @@ -371,13 +408,6 @@ mesa-vaapi_package() { } } -mesa-vdpau_package() { - short_desc="Mesa VDPAU drivers" - pkg_install() { - vmove "usr/lib/vdpau/libvdpau_*" - } -} - mesa-vulkan-intel_package() { short_desc="Mesa Intel Vulkan driver" pkg_install() { @@ -451,7 +481,7 @@ mesa-ati-dri_package() { short_desc="Mesa DRI drivers for ATI GPUs (transitional dummy package)" depends="mesa-dri mesa-vulkan-radeon" if [ "$_have_hwdec" ]; then - depends+=" mesa-vaapi mesa-vdpau" + depends+=" mesa-vaapi" fi } @@ -496,7 +526,7 @@ mesa-nouveau-dri_package() { short_desc="Mesa DRI drivers for NVIDIA GPUs (transitional dummy package)" depends="mesa-dri" if [ "$_have_hwdec" ]; then - depends+=" mesa-vaapi mesa-vdpau mesa-vulkan-nouveau" + depends+=" mesa-vaapi mesa-vulkan-nouveau" fi } diff --git a/srcpkgs/removed-packages/template b/srcpkgs/removed-packages/template index d701f4f2756a4a..48ef4ec7ac6ede 100644 --- a/srcpkgs/removed-packages/template +++ b/srcpkgs/removed-packages/template @@ -533,6 +533,7 @@ replaces=" libwebkit2gtk50<=2.38.3_1 libwnck2-devel<=2.30.7_8 libwnck2<=2.30.7_8 + libxatracker<=25.1.9_1 libxml2-python<=2.9.10_4 libxnoise<=0.2.21_4 libxslt-python<=1.1.34_5 @@ -578,6 +579,7 @@ replaces=" maxima-emacs<=5.47.0_2 mdds0<=0.12.1_3 mesa-XvMC<=22.2.4_2 + mesa-vdpau<=25.1.9_1 midori<=9.0_1 mimms<=3.2.1_4 miro-video-converter<=3.0.2_3 From f9681542daf83f5a8b307109b2c57308ee18c571 Mon Sep 17 00:00:00 2001 From: onlylunix Date: Thu, 4 Dec 2025 16:45:50 +0300 Subject: [PATCH 4/6] mesa-asahi-vdpau: remove --- srcpkgs/mesa-asahi-vdpau | 1 - srcpkgs/mesa-asahi/template | 12 +++--------- srcpkgs/removed-packages/template | 1 + 3 files changed, 4 insertions(+), 10 deletions(-) delete mode 120000 srcpkgs/mesa-asahi-vdpau diff --git a/srcpkgs/mesa-asahi-vdpau b/srcpkgs/mesa-asahi-vdpau deleted file mode 120000 index 643f3dbeebace7..00000000000000 --- a/srcpkgs/mesa-asahi-vdpau +++ /dev/null @@ -1 +0,0 @@ -mesa-asahi \ No newline at end of file diff --git a/srcpkgs/mesa-asahi/template b/srcpkgs/mesa-asahi/template index 0c773f4c6e838e..2722ca191e4732 100644 --- a/srcpkgs/mesa-asahi/template +++ b/srcpkgs/mesa-asahi/template @@ -1,18 +1,18 @@ # Template file for 'mesa-asahi' pkgname=mesa-asahi version=25.1.1 -revision=1 +revision=2 +metapackage=yes depends="mesa>=${version}_1" short_desc="Mesa - Asahi (transitional dummy package)" maintainer="dkwo " license="Public Domain" homepage="https://www.mesa3d.org/" changelog="https://docs.mesa3d.org/relnotes.html" -metapackage=yes # alphabetical order is not good subpackages="libgbm-asahi libgbm-asahi-devel MesaLib-asahi-devel - mesa-asahi-opencl mesa-asahi-vaapi mesa-asahi-vdpau mesa-asahi-vulkan-overlay-layer + mesa-asahi-opencl mesa-asahi-vaapi mesa-asahi-vulkan-overlay-layer mesa-asahi-dri" libgbm-asahi_package() { @@ -51,12 +51,6 @@ mesa-asahi-vaapi_package() { short_desc="Mesa VA-API drivers" } -mesa-asahi-vdpau_package() { - metapackage=yes - depends="mesa-vdpau" - short_desc="Mesa VDPAU drivers" -} - mesa-asahi-vulkan-overlay-layer_package() { metapackage=yes depends="mesa-vulkan-overlay-layer" diff --git a/srcpkgs/removed-packages/template b/srcpkgs/removed-packages/template index 48ef4ec7ac6ede..490c255592aeb4 100644 --- a/srcpkgs/removed-packages/template +++ b/srcpkgs/removed-packages/template @@ -579,6 +579,7 @@ replaces=" maxima-emacs<=5.47.0_2 mdds0<=0.12.1_3 mesa-XvMC<=22.2.4_2 + mesa-asahi-vdpau<=25.1.1_1 mesa-vdpau<=25.1.9_1 midori<=9.0_1 mimms<=3.2.1_4 From 230b14c37da4e0d1b975a6596dbac9693242ee7a Mon Sep 17 00:00:00 2001 From: classabbyamp Date: Mon, 8 Dec 2025 22:07:58 -0500 Subject: [PATCH 5/6] removed-packages: update to 0.1.20251208. --- srcpkgs/removed-packages/template | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/srcpkgs/removed-packages/template b/srcpkgs/removed-packages/template index 490c255592aeb4..6a6eaa286e0970 100644 --- a/srcpkgs/removed-packages/template +++ b/srcpkgs/removed-packages/template @@ -1,6 +1,6 @@ # Template file for 'removed-packages' pkgname=removed-packages -version=0.1.20251104 +version=0.1.20251208 revision=1 metapackage=yes short_desc="Uninstalls packages removed from repository" From e56ba7bf971e6bdb3aabf32152ef8ff1bae1acdf Mon Sep 17 00:00:00 2001 From: onlylunix Date: Thu, 4 Dec 2025 16:45:50 +0300 Subject: [PATCH 6/6] xf86-video-vmware: revbump for libxatracker remove --- srcpkgs/xf86-video-vmware/template | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/srcpkgs/xf86-video-vmware/template b/srcpkgs/xf86-video-vmware/template index d4cad30b55c733..d24f5273dc111c 100644 --- a/srcpkgs/xf86-video-vmware/template +++ b/srcpkgs/xf86-video-vmware/template @@ -1,7 +1,7 @@ # Template file for 'xf86-video-vmware' pkgname=xf86-video-vmware version=13.4.0 -revision=1 +revision=2 archs="i686* x86_64*" build_style=gnu-configure configure_args="--enable-vmwarectrl-client"