Add various packages and patches for build system improvements

- Introduced valgrind with a patch to respect flags and updated its configuration.
- Added Vulkan ICD loader with CMake build configuration.
- Implemented Waf build system with a custom build script and configuration.
- Included Wayland protocols with Meson build system.
- Added xcb-util-keysyms with autotools configuration.
- Introduced Yasm with multiple patches for compatibility and improvements.
- Added Yelp tools and XSL with Meson build configurations and necessary patches for POSIX compliance.
This commit is contained in:
2026-03-22 23:25:50 -05:00
parent a0e45c65d3
commit bf96e50e44
144 changed files with 7131 additions and 45 deletions
+111
View File
@@ -0,0 +1,111 @@
mesa_version=26.0.3
mesa_srcdir="./"
mesa_builddir="build"
haul_to_output() {
output=$1
shift
haul "$output" "$@"
}
depot_build() {
meson setup "$mesa_builddir" "$mesa_srcdir" \
--prefix=/usr \
--buildtype=release \
-Dgallium-drivers=r300,r600,radeonsi,nouveau,virgl,svga,llvmpipe,softpipe,iris,crocus,i915,zink,d3d12,asahi,freedreno \
-Dgallium-extra-hud=true \
-Dgallium-mediafoundation=disabled \
-Dgallium-rusticl=true \
-Dgles1=disabled \
-Dhtml-docs=disabled \
-Dintel-rt=enabled \
-Dlibunwind=disabled \
-Dmicrosoft-clc=disabled \
-Dvideo-codecs=all \
-Dvulkan-drivers=amd,gfxstream,intel,intel_hasvk,nouveau,swrast,virtio,microsoft-experimental,asahi,freedreno \
-Dvulkan-layers=device-select,intel-nullhw,overlay,screenshot,vram-report-limit
meson compile -C "$mesa_builddir"
}
depot_install() {
meson install -C "$mesa_builddir" --destdir "$DESTDIR"
ln -sr "$DESTDIR/usr/lib/libGLX_mesa.so.0" "$DESTDIR/usr/lib/libGLX_indirect.so.0"
}
depot_install_opencl_mesa() {
haul_to_output "opencl-mesa" \
"usr/lib/libRusticlOpenCL*" \
"etc/OpenCL/vendors/rusticl.icd"
}
depot_install_vulkan_asahi() {
haul_to_output "vulkan-asahi" \
"usr/share/vulkan/icd.d/asahi_icd.*.json" \
"usr/lib/libvulkan_asahi.so"
}
depot_install_vulkan_dzn() {
haul_to_output "vulkan-dzn" \
"usr/share/vulkan/icd.d/dzn_icd.*.json" \
"usr/lib/libvulkan_dzn.so" \
"usr/lib/libspirv_to_dxil.*" \
"usr/bin/spirv2dxil"
}
depot_install_vulkan_freedreno() {
haul_to_output "vulkan-freedreno" \
"usr/share/vulkan/icd.d/freedreno_icd.*.json" \
"usr/lib/libvulkan_freedreno.so"
}
depot_install_vulkan_gfxstream() {
haul_to_output "vulkan-gfxstream" \
"usr/share/vulkan/icd.d/gfxstream_vk_icd.*.json" \
"usr/lib/libvulkan_gfxstream.so"
}
depot_install_vulkan_intel() {
haul_to_output "vulkan-intel" \
"usr/share/vulkan/icd.d/intel_icd.*.json" \
"usr/share/vulkan/icd.d/intel_hasvk_icd.*.json" \
"usr/lib/libvulkan_intel.so" \
"usr/lib/libvulkan_intel_hasvk.so"
}
depot_install_vulkan_nouveau() {
haul_to_output "vulkan-nouveau" \
"usr/share/vulkan/icd.d/nouveau_icd.*.json" \
"usr/lib/libvulkan_nouveau.so"
}
depot_install_vulkan_radeon() {
haul_to_output "vulkan-radeon" \
"usr/share/vulkan/icd.d/radeon_icd.*.json" \
"usr/lib/libvulkan_radeon.so" \
"usr/share/drirc.d/00-radv-defaults.conf"
}
depot_install_vulkan_swrast() {
haul_to_output "vulkan-swrast" \
"usr/share/vulkan/icd.d/lvp_icd.*.json" \
"usr/lib/libvulkan_lvp.so"
}
depot_install_vulkan_virtio() {
haul_to_output "vulkan-virtio" \
"usr/share/vulkan/icd.d/virtio_icd.*.json" \
"usr/lib/libvulkan_virtio.so"
}
depot_install_vulkan_mesa_device_select() {
haul_to_output "vulkan-mesa-device-select" \
"usr/lib/libVkLayer_MESA_device_select.so" \
"usr/share/vulkan/implicit_layer.d"
}
depot_install_vulkan_mesa_layers() {
haul_to_output "vulkan-mesa-layers" \
"usr/lib/libVkLayer_*.so" \
"usr/bin/mesa-*-control.py" \
"usr/share/vulkan/explicit_layer.d"
}