Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion common/shlibs
Original file line number Diff line number Diff line change
Expand Up @@ -1058,7 +1058,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
Expand Down
1 change: 0 additions & 1 deletion srcpkgs/libxatracker

This file was deleted.

50 changes: 50 additions & 0 deletions srcpkgs/mesa/files/gen_template_crates
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
#!/bin/bash

_distfiles=
_checksum=
_skip_extraction=

_crates=()

while read -r f; do
grep crates.io "$f" > /dev/null || continue

_rows=$(grep '=' "$f" | tr -d " \t\$\`")

#./subprojects/syn.wrap
# directory=syn-2.0.87
# source_url=https://crates.io/api/v1/crates/syn/2.0.87/download
# source_filename=syn-2.0.87.tar.gz
# source_hash=25aa4ce346d03a6dcd68dd8b4010bcb74e54e62c90c573f394c46eae99aba32d
# patch_directory=syn

_source_url=$(grep 'source_url=' <<< "$_rows"); _source_url=${_source_url#*=}
[ -n "${_source_url}" ] || continue
_source_filename=$(grep 'source_filename=' <<< "$_rows"); _source_filename=${_source_filename#*=}
_source_hash=$(grep 'source_hash=' <<< "$_rows"); _source_hash=${_source_hash#*=}

_distfiles+=$'\n'" ${_source_url}>${_source_filename}"
_checksum+=$'\n'" $_source_hash"
_skip_extraction+=$'\n'" ${_source_filename}"

__subname=$(sed -r 's|.*crates/([^/]+)/([0-9.]+)/download|\1|' <<< "$_source_url")
__subversion=$(sed -r 's|.*crates/([^/]+)/([0-9.]+)/download|\2|' <<< "$_source_url")
_crates+=(" _prepare_subproject ${__subname} ${__subversion}")
done < <(find ./subprojects -maxdepth 1 -type f -name '*.wrap' -printf '%p\n')

printf 'distfiles+="%s"\n' "$_distfiles"
printf 'checksum+="%s"\n' "$_checksum"
printf 'skip_extraction+="%s"\n' "$_skip_extraction"

echo '
_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}
}
'

echo '_post_extract_crates() {'
printf "%s\n" "${_crates[@]}"
echo '}'
121 changes: 121 additions & 0 deletions srcpkgs/mesa/files/template_crates
Original file line number Diff line number Diff line change
@@ -0,0 +1,121 @@
distfiles+="
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
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/ucd-trie/0.1.6/download>ucd-trie-0.1.6.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/syn/2.0.87/download>syn-2.0.87.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/rustc-hash/2.1.1/download>rustc-hash-2.1.1.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/remain/0.2.12/download>remain-0.2.12.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/proc-macro2/1.0.86/download>proc-macro2-1.0.86.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/pest_generator/2.8.0/download>pest_generator-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/2.8.0/download>pest-2.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/once_cell/1.8.0/download>once_cell-1.8.0.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/libc/0.2.168/download>libc-0.2.168.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/hashbrown/0.14.1/download>hashbrown-0.14.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/equivalent/1.0.1/download>equivalent-1.0.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/bitflags/2.9.1/download>bitflags-2.9.1.tar.gz"
checksum+="
67914ab451f3bfd2e69e5e9d2ef3858484e7074d63f204fd166ec391b54de21d
7988d73a4303ca289df03316bc490e934accf371af6bc745393cf3c2c5c4f25d
3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b
ed646292ffc8188ef8ea4d1e0e0150fb15a5c2e12ad9b8fc191ae7a8a7f3c4b9
d452f284b73e6d76dd36758a0c8684b1d5be31f92b89d07fd5822175732206fc
26afc1baea8a989337eeb52b6e72a039780ce45c3edfcc9c5b9d112feeb173c2
25aa4ce346d03a6dcd68dd8b4010bcb74e54e62c90c573f394c46eae99aba32d
c71e83d6afe7ff64890ec6b71d6a69bb8a610ab78ce364b3352876bb4c801266
357703d41365b4b27c590e3ed91eabb1b663f07c4c084095e60cbed4362dff0d
6c20b6793b5c2fa6553b250154b78d6d0db37e72700ae35fad9387a46f487c97
1ad5e011230cad274d0532460c5ab69828ea47ae75681b42a841663efffaf794
291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef
5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77
7f9f832470494906d1fca5329f8ab5791cc60beb230c74815dff541cbd2b5ca0
db7d01726be8ab66ab32f9df467ae8b1148906685bbe75c82d1e65d7f5b3f841
d725d9cfd79e87dccc9341a2ef39d1b6f6353d68c4b33c177febbe1a402c97c5
198db74531d58c70a361c42201efde7e2591e976d518caf7662a47dc5720e7b6
de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c
692fcb63b64b1758029e0a96ee63e049ce8c5948587f2f7208df04625e5f6b56
13dc2df351e3202783a1fe0d44375f7295ffb4049267b0f3018346dc122a1d94
5aaeb2981e0606ca11d79718f8bb01164f1d6ed75080182d3abf017e6d244b6d
168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26
7dfda62a12f55daeae5015f81b0baea145391cb4520f86c248fc615d72640d12
cea14ef9355e3beab063703aa9dab15afd25f0667c341310c1e5274bb1d0da18
5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5
baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd
1b8e56985ec62d17e9c1001dc89c88ecd7dc08e47eba5ec7c29c7b5eeecde967"
skip_extraction+="
zerocopy-0.8.13.tar.gz
zerocopy-derive-0.8.13.tar.gz
unicode-ident-1.0.12.tar.gz
ucd-trie-0.1.6.tar.gz
thiserror-2.0.11.tar.gz
thiserror-impl-2.0.11.tar.gz
syn-2.0.87.tar.gz
rustix-1.0.7.tar.gz
rustc-hash-2.1.1.tar.gz
roxmltree-0.20.0.tar.gz
remain-0.2.12.tar.gz
quote-1.0.35.tar.gz
proc-macro2-1.0.86.tar.gz
pest_meta-2.8.0.tar.gz
pest_generator-2.8.0.tar.gz
pest_derive-2.8.0.tar.gz
pest-2.8.0.tar.gz
paste-1.0.14.tar.gz
once_cell-1.8.0.tar.gz
log-0.4.27.tar.gz
libc-0.2.168.tar.gz
indexmap-2.2.6.tar.gz
hashbrown-0.14.1.tar.gz
errno-0.3.12.tar.gz
equivalent-1.0.1.tar.gz
cfg-if-1.0.0.tar.gz
bitflags-2.9.1.tar.gz"

_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_crates() {
_prepare_subproject zerocopy 0.8.13
_prepare_subproject zerocopy-derive 0.8.13
_prepare_subproject unicode-ident 1.0.12
_prepare_subproject ucd-trie 0.1.6
_prepare_subproject thiserror 2.0.11
_prepare_subproject thiserror-impl 2.0.11
_prepare_subproject syn 2.0.87
_prepare_subproject rustix 1.0.7
_prepare_subproject rustc-hash 2.1.1
_prepare_subproject roxmltree 0.20.0
_prepare_subproject remain 0.2.12
_prepare_subproject quote 1.0.35
_prepare_subproject proc-macro2 1.0.86
_prepare_subproject pest_meta 2.8.0
_prepare_subproject pest_generator 2.8.0
_prepare_subproject pest_derive 2.8.0
_prepare_subproject pest 2.8.0
_prepare_subproject paste 1.0.14
_prepare_subproject once_cell 1.8.0
_prepare_subproject log 0.4.27
_prepare_subproject libc 0.2.168
_prepare_subproject indexmap 2.2.6
_prepare_subproject hashbrown 0.14.1
_prepare_subproject errno 0.3.12
_prepare_subproject equivalent 1.0.1
_prepare_subproject cfg-if 1.0.0
_prepare_subproject bitflags 2.9.1
}
12 changes: 6 additions & 6 deletions srcpkgs/mesa/patches/musl-endian.patch
Original file line number Diff line number Diff line change
@@ -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 */
Expand All @@ -16,4 +16,4 @@
+
#endif

#endif
#if !defined(UTIL_ARCH_LITTLE_ENDIAN) || !defined(UTIL_ARCH_BIG_ENDIAN)
30 changes: 5 additions & 25 deletions srcpkgs/mesa/patches/musl.patch
Original file line number Diff line number Diff line change
@@ -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 <sys/random.h>
Expand All @@ -8,33 +8,13 @@
#include <unistd.h>
#include <fcntl.h>
#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 <amdgpu.h>
#include <pthread.h>
+#include <sys/types.h>
#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) {
Loading